我创建了一个简单的应用程序,只要发起或接收到电话,它就会在浏览器字段中调用一个 url,但我不断收到异常:
UI 引擎在没有持有事件锁的情况下被访问。
我在某处读到我必须使用全局事件,但我不知道该怎么做。我在这方面已经苦苦挣扎了很长时间,如果在拨打电话或拨打电话时没有收到错误,我将不胜感激有关加载 url 的任何帮助。
我的代码:
public class BackgroundApp extends MainScreen implements PhoneListener {
BrowserField bf = new BrowserField();
public BackgroundApp(){
super();
Phone.addPhoneListener(this); //Phonelistener added to code
add(bf);
}
public void callIncoming(int callId) { //Method to listen for an incoming call and get the number
try {
bf.requestContent("http://www.yahoo.com/");
} catch (Exception me) {
me.printStackTrace();
}
}
public void callAdded(int arg0) {}
public void callAnswered(int callId) {}
public void callConferenceCallEstablished(int callId) {}
public void callConnected(int callId) {}
public void callDirectConnectConnected(int callId) {}
public void callDirectConnectDisconnected(int callId) {}
public void callDisconnected(int callId) {}
public void callEndedByUser(int callId) {}
public void callFailed(int callId, int reason) {}
public void callHeld(int callId) {}
public void callInitiated(int callid) {
try {
bf.requestContent("http://www.google.com/");
} catch (Exception me) {
me.printStackTrace();
}
}
public void callRemoved(int callId) {}
public void callResumed(int callId) {} /
public void callWaiting(int callid) {}
public void conferenceCallDisconnected(int callId) {}
public boolean onClose() {
System.exit(0);
return true;
}
}