- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我实际上正在开发一个 Android VOIP 应用程序,它允许用户与其他用户创建 session 。我的限制是避免使用像 SIP 服务器这样的服务器来实现它,如果我必须使用外部库,它应该在 LGPL 许可下。我已经使用 AudioGroup 以点对点的方式成功完成了它和 AudioStream android RTP 堆栈的类。
我的问题出现在 3 人 session 中。使用 AudioGroup,我启用了 MODE_ECHO_SUPPRESSION
,但效果很差,3 秒后我就能听到回声。我得出结论,Android RTP 堆栈不是解决我的问题的好方法,因为使用 AudioGroup 无法调整声音,回声抑制似乎功能不佳。
通过测试 VOIP 应用程序,我发现了很多运行良好的应用程序,更准确地说是 Jitsi ( homepage ),它使用基于 native 代码的 Java 库来处理 LGPL 许可下的 RTP 内容。我试着关注 this tutorial使用 libjitsi 但不幸的是它给了我一个错误...此时,我不确定是否可以在 android 项目上使用 Libjitsi,因为它通常用于 Java 项目。
Libjitsi.start()
01-02 17:06:48.304 1523-1523/com.test.example I/LibJitsi﹕ Failed to initialize LibJitsi backend org.jitsi.impl.libjitsi.LibJitsiOSGiImpl. (Exception stack trace follows.) Will try an alternative. java.lang.NoClassDefFoundError: org.osgi.framework.FrameworkUtil at org.jitsi.impl.libjitsi.LibJitsiOSGiImpl.(LibJitsiOSGiImpl.java:34) at java.lang.Class.newInstanceImpl(Native Method) at java.lang.Class.newInstance(Class.java:1319) at org.jitsi.service.libjitsi.LibJitsi.start(LibJitsi.java:227) at org.jitsi.service.libjitsi.LibJitsi.start(LibJitsi.java:171) at com.test.example.ui.createconf.CreateConfActivity.onCreate(CreateConfActivity.java:76) at android.app.Activity.performCreate(Activity.java:4465) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1931) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1992) at android.app.ActivityThread.access$600(ActivityThread.java:127) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1158) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4441) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) at dalvik.system.NativeStart.main(Native
现在,如果有人已经尝试在 Android 项目上使用 libjitsi,或者如果您知道它不可行,如果您能与我分享您的经验,我将不胜感激。
谢谢
最佳答案
是的libjitsi依赖可以添加到android,你可以试试jitsi-android这是 Jitsi 的 Android 端口项目 。我尝试运行他们的示例应用程序并且编译正常。
但是,我已经为 Android 上的 VOIP 调用共享了 5 个不同的库 in another answer你可以看看并尝试一下。
很高兴!
关于android - 向 Android 项目添加 libjitsi 依赖是否可行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27745303/
对于我的一个项目,我终于需要使用我的第一个多态类(std::cout 除外)。 我正在研究如何确保至少在某些情况下我有 100% 的去虚拟化调用。 这段代码是否合法可行? dynamic_cast 有
最近有一个编译问题,用这个片段说明: struct Base { }; template struct A : Base { A(){} A(Base&&) {} }; A foo()
注意:这是一个冗长的问题,需要对 MVVM“设计模式”、JSON 和 jQuery 有很好的理解.... 所以我有一个理论/主张 DHTML 中的 MVVM 是可能的 和可行的 并且想知道您是否同意/
我有一台 Mac 服务器,我正在构建 PHP 代码以允许用户上传图像、文档甚至视频文件。研究这个肯定让我很紧张,我希望上传的内容没有病毒。 自己构建一些东西会是一个巨大的挑战吗?您会这样做,还是会
根据文档,ASP.NET 项目(尚)不支持新的 PackageReference https://learn.microsoft.com/en-us/nuget/consume-packages/pa
我是一名优秀的程序员,十分优秀!