我需要在我的 Android 应用程序中集成 VoIP 服务。
有没有免费(最好的开源)库?
我需要图书馆至少允许通过互联网进行语音通话,而不一定是互联网到电话(如 2 个 Skype 帐户)。
我需要在我的 Android 应用程序中集成 VoIP 服务。
有没有免费(最好的开源)库?
我需要图书馆至少允许通过互联网进行语音通话,而不一定是互联网到电话(如 2 个 Skype 帐户)。
从 android 版本 2.3 开始,在 Android 中添加了 SIP API。您可以使用内置的 SipStack 库或第三方开源 sip 堆栈。
互联网上有不同的开源 sip 堆栈库和项目。您可以下载该项目的源代码。
这是一些流行的开源 sip 堆栈库的列表,这些库允许通过 Internet 进行语音呼叫。
1. Pjsip
2. Mjsip
3. doubango
4. belle-sip
有不同的开源项目在他们的项目中使用了这些库。比如 Sipdroid使用MjSip,Csipsimple使用PjSip,imsdroid使用doubango,Linphone使用belle-sip。
您可能还想参考这个Android SIP 堆栈 - 使用什么?
开源 SIP 堆栈:
Android SDK 的默认实现(API > 9):
优点:文档可用。容易明白。
缺点:并非所有设备都受支持。无法更改编解码器。
第三方
爪哇:
优点:Oracle (Sun) 项目 ==> 积极开发。看起来比 MjSIP 更容易(更多文档)。
缺点:未在“著名”应用程序中使用。
优点:SipDroid 是建立在它之上的。(提供源代码)(red5phone 是另一个项目) 缺点:不完全符合 RFC?缺乏教程(尽管有 Javadocs)。复杂的。发展几乎死了。
优点:IMSDroid是建立在它之上的。(源代码可用)
缺点:生成的apk文件大小往往是“重”(> 15MB,如此处所述)
C/C++:
优点:多种选择(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/