尝试呼叫时出现异常(SIP)

and*_*nnn 7 android exception sip

我正在开发SIP应用程序,当我想调用某人(在服务器中配置其标识符)时,我有一个NullPointerException =>"尝试关闭管理器时出错".这是代码:

public void initiateCall() {

        updateStatus(sipAddress);

        try {
            SipAudioCall.Listener listener = new SipAudioCall.Listener() {

                @Override
                public void onCallEstablished(SipAudioCall call) {
                    call.startAudio();
                    call.setSpeakerMode(true);
                    call.toggleMute();
                    updateStatus(call);
                }

                @Override
                public void onCallEnded(SipAudioCall call) {
                    updateStatus("Ready.");
                }
            };

            call = manager.makeAudioCall(me.getUriString(), sipAddress, listener, 30);

        }
        catch (Exception e) {
            Log.i("WalkieTalkieActivity/InitiateCall", "Error when trying to close manager.", e);
            if (me != null) {
                try {
                    manager.close(me.getUriString());
                } catch (Exception ee) {
                    Log.i("WalkieTalkieActivity/InitiateCall",
                            "Error when trying to close manager.", ee);
                    ee.printStackTrace();
                }
            }
            if (call != null) {
                call.close();
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助.

Ind*_*õue 8

Android模拟器默认不支持VOIP/SIP库.问题是
manager == null -这就是为什么你得到NullPointerException.

幸运的是,有一个圆形的工作.下载此链接并将其复制到 ...\.android\avd\.avd文件夹中.

启动你的模拟器和

 Boolean voipSupported = SipManager.isVoipSupported(this);
 Boolean apiSupported = SipManager.isApiSupported(this);
Run Code Online (Sandbox Code Playgroud)

现在应该回归真实.

资料来源:http://xilard.hu/