Android VoIP应用程序开发问题(SIP等)

Android VoIP应用程序开发问题(SIP等),android,sip,voip,rtp,Android,Sip,Voip,Rtp,我正在寻找有关Android VoIP应用程序开发的一般建议(技术、最佳实践等)。类似的问题已经发布,但我包括了具体的问题 我做了很多研究,发现有几种可能的解决方案(当然我知道SDK中的SIP堆栈(甚至包括语音传输),但由于它在大多数设备上都不可用,所以我不打算使用它。另外,我阅读了有关Adobe Flex实现的文章,但我想坚持使用本机的内容) 让我印象深刻的是: 使用SIP启动会话(服务器存在)。在消息中使用SDP描述会话 建立p2p连接(防火墙/路由可能是一个问题-可以使用STUN-DNS

我正在寻找有关Android VoIP应用程序开发的一般建议(技术、最佳实践等)。类似的问题已经发布,但我包括了具体的问题

我做了很多研究,发现有几种可能的解决方案(当然我知道SDK中的SIP堆栈(甚至包括语音传输),但由于它在大多数设备上都不可用,所以我不打算使用它。另外,我阅读了有关Adobe Flex实现的文章,但我想坚持使用本机的内容)

让我印象深刻的是:

  • 使用SIP启动会话(服务器存在)。在消息中使用SDP描述会话

  • 建立p2p连接(防火墙/路由可能是一个问题-可以使用STUN-DNS可能会被调用)

  • 进行实际传输时,我相信所涉及的数据包/程序是->RTP in->UDP in->IP中的(有效负载)

目前这似乎相当复杂,所以我的第一个问题是:

1) 这是标准方法吗?这是最佳实践吗?我得到一些提示,MSRP可以用来传输内容,但我读到它只用于IM、文件等

2) 我应该使用哪个SIP堆栈来获得最佳结果/性能?我可以使用Java/Eclipse进行开发。我想选择JSIP(或者tinysip,基于JSIP),但不确定

3) 请给我一些关于如何用Java for Android(RTP)实现数据传输的提示

最后,我并不排除pjsip。我认为它可能更快,因为它使用NDK(我可以切换到C++,NP)。我还了解到,它已经包括音频/视频传输。 我只是不知道它的使用和扩展有多容易,它到底有多好。如果你用过,请告诉我

多谢各位

PS:虽然不是紧急的或确定的,可移植性可能是未来的一个重要因素。
在不久的将来,我还需要视频传输。

看看teamSpeak。它们提供本机sdk-s。但它们不是免费的。 它不是P2P,需要一个服务器(至少我知道) 也许值得一分钟。

看看teamSpeak。它们提供本机sdk-s。但它们不是免费的。 它不是P2P,需要一个服务器(至少我知道) 也许值得一分钟。
您应该查看IMSDROID项目。它使用了用C编写的Doubango框架,具有很高的可移植性。更重要的是,它也是开源的,因此您可以随意使用他们的代码,并可能为社区做出贡献


干杯:)

你应该看看IMSDROID项目。它使用了用C编写的Doubango框架,具有很高的可移植性。更重要的是,它也是开源的,因此您可以随意使用他们的代码,并可能为社区做出贡献


干杯:)

编写自己的SIP堆栈只需几个月的基本功能。
我建议使用现有的sip堆栈。这里讨论了一些开源软件。

编写自己的SIP堆栈只需要几个月的时间就可以完成基本功能。
我建议使用现有的sip堆栈。这里讨论了一些开源软件。

我确实看了一下。人们在他们的论坛上抱怨他们自己的Android应用程序。快速浏览给我的印象是,它无法连接到任何voip服务器,只能连接到teamspeak服务器。没错,它们提供了通过语音聊天扩展应用程序的解决方案。android应用程序真的有问题,主要是用户体验不好。bandwith,cpu使用率好,延迟低,质量也可以。我看了一下。人们在他们的论坛上抱怨他们自己的Android应用程序。快速浏览给我的印象是,它无法连接到任何voip服务器,只能连接到teamspeak服务器。没错,它们提供了通过语音聊天扩展应用程序的解决方案。android应用程序真的有问题,主要是用户体验不好。bandwith,cpu使用率好,延迟低,质量也可以。请根据您的经验给出答案。如果您提出一个框架,请说明其稳定性、可靠性、可移植性、易学性/文档编制等。如果可能,请使用论点(最好是根据您自己的经验)来说明为什么选择该框架。请根据您的经验给出答案。如果您提出了一个框架,请说明其稳定性、可靠性、可移植性、易学性/文档编制等。如果可能,请使用参数(最好是根据您自己的经验)来说明为什么选择该框架。