0
我已成功將pjsip庫與Android整合。我也接到來電並打出電話。唯一的事情是,我需要基於來電呼叫事件。例如,當有來電時,我需要先向用戶顯示一個選項,以便接聽電話,當按下該按鈕時,我需要接聽電話。但是現在,如果我把代碼放到一個活動中去選擇調用,那麼這個方法就會失敗。如果我在onIncomingCall中直接調用answerIncomingCall(),則該調用完全由程序本身而不是Handler.post來回答。如何攔截來電pjsip
有人可以幫助我如何做到這一點
@Override
public void onIncomingCall(OnIncomingCallParam prm) {
System.out.println("*** Incoming call....... " + prm.getCallId());
onIncomingCallParam = prm;
System.out.println("*** Incoming call....... 1");
Handler mainHandler = new Handler(context.getMainLooper());
Runnable runnable = new Runnable() {
@Override
public void run() {
Log.d(TAG,"Sip callback=>"+sipCallbacks);
if(sipCallbacks != null) {
sipCallbacks.onIncomingCall();
}
}
};
mainHandler.post(runnable);
try {
Thread.sleep(10000);
} catch (InterruptedException ie) {
ie.printStackTrace();
}
System.out.println("*** Incoming call....... 2");
}
public void answerIncomingCall() {
Call call = new MyCall(acc, onIncomingCallParam.getCallId());
CallOpParam callOpParam = new CallOpParam();
callOpParam.setStatusCode(pjsip_status_code.PJSIP_SC_OK);
try {
call.answer(callOpParam);
} catch (Exception e) {
e.printStackTrace();
}
}
「該方法失敗」 - 日誌對此有何評論? – user1506104
我有問題,對於iOS – Eesha