pjsip在android下的使用 | 您所在的位置:网站首页 › pjsip开发 › pjsip在android下的使用 |
编译与使用注意事项
编译说明编译
Demo运行运行freeswitch修改
编译
说明
公司招了个android,让我进行协助。我主要是把pjsip库的android版给编译出来。 编译当前时间是2020年3月30日。 此时pjsip的2.10版本已经发布一段时间了,但是2.10版本有点问题,里面的demo都运行不起来(windows + Qt)。因此这里我编译用的还是2.9版本。 主要参考的这里,里面的问题还是很多的。 建议使用mac编译;用windows也行(使用msys2),就是配置起来可能有点麻烦。 注意点: 1,ANDROID_NDK_ROOT值的设定 我用了 ANDROID_NDK_ROOT=/Users/robin/android-ndk-r14b最新版的是 android-ndk-r21,采用r21编译的时候回报错,size_t未定义啥的。r20b、r19c都有问题。 r13b也是可行的。 据说运行configure-android时指定了编译的工具链的版本4.9及以下就可以了。我没试~ 2,生成库的架构问题。 建议都生成一遍:armeabi 、arm64-v8a、armeabi-v7a、x86, 跟文中说的一样,使用如下的字符串。 TARGET_ABI=armeabi-v7a ./configure-android --use-ndk-cflags make clean make dep make3,编译 libpjsua2.so 安装SWIG。 我们用的也就是这个libpjsua2.so文件。 按照那个文档编译就是了。 Demo运行pjsip中的demo太老了。 我用的是Android Studio 3.6.1,发现这个东西对网络依赖太多了,要下载很多东西,网不好的话就直接跪了。 按照文档中的Building and running pjsua2 sample application 用AS加载 pjsip-apps/src/swig/java/android 项目。 1,添加权限 在AndroidManifest.xml文件中,添加
3, 解决AndroidStudio编译出现"Could not resolve all files for configuration ’ 在 项目Gradle的allprojects中添加google()如图: 参考 运行填写的数据如下图所示 可能会有点问题。我有点忘记了,我将音频编码的PCMA、PCMU放到了最前面。 还有可能会报: NO candidate ACL defined, Defaulting to wan.auto的错误, 按照这里来改。 |
CopyRight 2018-2019 实验室设备网 版权所有 |