适用于Android的VoIP库

我需要在我的Android应用程序中集成VoIP服务。
有没有免费的(最好的开源)库?

我需要图书馆至less允许通过互联网进行语音通话,而不一定是互联网电话(如2个Skype帐户)。

从android 2.3版本开始,Android API中添加了SIP API。 您可以使用内置的SipStack库或第三方开源sip堆栈。

请参阅Android开发人员指南

有不同的开源SIP堆栈库以及互联网上的项目。 您可以下载该项目的源代码。

这里是一些stream行的开源sip堆栈库允许通过互联网进行语音通话的列表。

1. Pjsip
2. Mjsip
来自“简明英汉词典”
4. belle-sip

有不同的开源项目已经在他们的项目中使用这些库。 像Sipdroid使用MjSip , Csipsimple使用PjSip , imsdroid使用doubango和Linphone使用belle-sip

你也可以参考这个Android的SIP堆栈 – 使用什么?

开源的SIP堆栈:

  1. Android SDK的默认实现(API> 9):
    优点:可用的文档。 容易明白。
    缺点:不是所有的设备都支持。 仅在大多数设备上使用WiFi。 无法更改编解码器。

  2. 第三方

Java:

  • JainSIP(许可证:公有领域)

优点:Oracle(Sun)工程==>主动开发。 看起来比MjSIP更容易(更多文档)。
缺点:没有在“着名”的应用程序中使用。

  • MjSIP(许可证:GNU GPL)

优点:SipDroid是build立在它。 (源代码可用)(red5phone是另一个项目)缺点:不完全符合RFC ?. 缺乏教程(尽pipe可用Javadocs)。 成熟。 发展几乎死了。

  • Doubango框架[android-ngn-stack](license:GNU GPLv3)

优点:IMSDroidbuild立在它上面。 (可用的源代码)
缺点:生成的apk文件大小往往是“重”(> 15MB 这里提到)

C / C ++:

  • 本地SIP堆栈

优点:各种select(PjSip [CSipSimple],GNU oSIP / eXoSIP [Linphone,它已经做出了自己的堆栈belle-sip])。 完全符合RFC ?. 更好的性能。
缺点:Android NDK / JNI初学者。

来源(旧的和主要的C / C ++):

http://www.cs.columbia.edu/sip/implementations.html
http://www.pernau.at/kd/voip/bookmarks-sip-stacks.html

如果您需要VoIP而不是SIP,请查看WebRTC http://www.webrtc.org/