I am not able to decide which one to go for implementing SIP based voice calling app in android.
Shall i use Android SIP API or go with PJSIP ? which one has successful implementation till now ? Please help
I will try to provide my two cents on this:
Android SIP Stack relays on an old JAIN SIP version plus some extensions (IMS, supporting RTP, etc.). Main problem with this stack is that, in most devices, it only works via WiFi, no 3G or LTE (note that android.net.sip.SipManager
contains method isSipWifiOnly
to know if this limitation is enabled).
On the other hand, pjsip
is quite complete, like they say, it's not a SIP stack but a full multimedia communications library. It's really versatile: you can use a huge number of configuration or just run it as a simple user agent. It works with any kind of data connection (not limited to WiFi).
Now the comparison: In my opinion, pjsip
is more complete and versatile but more difficult to integrate with you project (with Android SIP Stack everything remains in the SDK environment while, with pjsip
, you would need to use the NDK and a JNI library).
My opinion: If you plan to create a very simple SIP app and you don't mind the WiFi limitation, I think, the best would be using native SIP API but, if you plan to improve it and do something more "interesting", I would strongly recommend pjsip
. I've used both JAIN SIP and pjsip
and, again, my vote goes for psip
. But this is just my opinion.
Hope this helps.