繁体   English   中英

带有CSipSimple和pjsip的Android SIP

[英]Android SIP with CSipSimple and pjsip

我正在编写一个自定义Android应用程序,允许用户使用SIP进行VOIP调用。 当用户按下按钮时,与另一个SIP用户发起语音呼叫。 而已。 唯一的其他要求是它必须在2.3+ Android设备上工作,并且不能仅限于wifi。

Android已经包含一个SIP堆栈(从2.3开始),我能够修改Walkie-Talkie示例项目,使其完全符合我的要求。 不幸的是我无法将这个应用程序与某些设备一起使用(卡西欧突击队是其中之一),更糟糕的是,该应用程序仅适用于wifi(正如我所提到的,对我的项目来说是不可接受的)。

我开始使用易于使用的API搜索另一个SIP堆栈,并遇到了CSimpleSip。 我编译并运行他们的演示项目(SipHome),它在我不支持的手机(包括Commando)上工作得很好,它也可以在wifi上工作,满足我的要求。 我很兴奋......直到我查看了CSipSimple的源代码。 我不知道如何开始提取对底层pjsip API的实际调用,也不能让我的pjsip演示应用程序在10个多小时后才能运行。

有没有人解构过CSipSimple并将SIP部分从其极其复杂的用户界面中分离出来,或者有人知道更简单的SIP库吗? 使用本机SIP API,我能够进行200行Android活动,使得呼叫完美无缺......如何通过支持非wifi的第三方SIP堆栈来实现这一目标?

感谢您提供的任何意见,我知道很多人已经陷入了同一个阶段。

你应该攻击最基本的apjsua,而不是去更复杂的CSipSimple,它运行相同的pjsip堆栈,因此它也应该符合你的要求: http//trac.pjsip.org/repos/wiki/Getting-开始/ Android

我完全赞同Balint,apjsua是一个可以帮助你更好理解的应用程序,但是当你不熟悉C(就像我一样)时,开始使用它可能并不明显,但这种方式效率更高。

您可以查看www.pjsip.org ,关注您将要下载的软件包,因为教程不是那么清楚:例如,他们会谈论很多关于apjsua(pjsua的android实现)和这个应用程序它们提供的下载链接中没有包含,你可以在这里看到我的问题: 哪里是apjsua?

当然,你必须在pjsip网站上观看android的教程。

希望这可以帮助。

使用csipsimple作为库项目。在csipsimple项目中有一个api用于将其用作库。您可以绑定到csipsimple服务并进行调用。

注册广播解析器和意图过滤器以从csipsimple获取回调。 在csipsimple中分析Incall活动以获取更多详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM