Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

SipDemo sample code gives NullPointerException

Tags:

android

sip

i'm developping SIP application. I used SipDemo sample from SipDemo but something is wrong. I've got NullPointerException => "Error when trying to close manager." in this place (exception 'e'):

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();
        }
    }
}

Additionaly i checked this SipManager.isApiSupported() and SipManager.isVoipSupported() and both returned false. I'm testing this on Tab with 4.0.3 OS. I wondered if the fault is in not support native sip, but i can easy make a call with SipDroid or another app from market.

EDIT Logcat stack trace:

05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247): Error when trying to close manager.
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247): java.lang.NullPointerException
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247):     at com.example.android.sip.WalkieTalkieActivity.initiateCall(WalkieTalkieActivity.java:212)
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247):     at com.example.android.sip.WalkieTalkieActivity$4.onClick(WalkieTalkieActivity.java:324)
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247):     at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:165)
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247):     at android.os.Looper.loop(Looper.java:130)
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247):     at android.app.ActivityThread.main(ActivityThread.java:3691)
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247):     at java.lang.reflect.Method.invokeNative(Native Method)
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247):     at java.lang.reflect.Method.invoke(Method.java:507)
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:907)
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)
05-15 22:29:11.255: INFO/WalkieTalkieActivity/InitiateCall(4247):     at dalvik.system.NativeStart.main(Native Method)
like image 589
Dr Glass Avatar asked Jan 25 '26 19:01

Dr Glass


1 Answers

I think I've got some solution. Not every version of android supports sip. Therefore, you should look for 3rd part library. For example you can see the source code of Sipdroid or CSipSimple and convert for your own needs.

like image 96
Dr Glass Avatar answered Jan 27 '26 07:01

Dr Glass



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!