Android 开发:开源库Speex支持arm64的动态库文件

随着处理器制造工艺的不断进步,和Android系统的不断发展,最近出了arm64-v8a的架构,因为项目中用到了speex的第三方语音编解码的动态库,其余架构的处理器暂不用说,一切正常,惟独到arm64-v8a这里出问题了,在Android5.0 arm64位的手机上使用语音会报错,关于其余架构的.so文件编译再也不赘述,网上都有资料。废话少说,直接上步骤:android

1.下载android-ndk-r10e-windows-x86_64并解压,这个支持arm64 -v8a的编译,以前的版本都不行,我以前用了android-ndk32-r10-windows-x86_64,结果后来编译的时候报错Android NDK: NDK Application 'local' targets unknown ABI(s): arm64-v8a 因此要使用最新的。windows

2.能够直接在Eclipse配置NDK的编译环境,而没必要使用Cygwin,项目右键-->Properties-->Builder-->New-->选择Program,Main选项卡里面设置NDK的Location,Browse File System选择ndk-build.cmd的路径,Working Directory选择项目下jni文件夹路径,这里选Browse WorkSpace,如图:架构

切换到Refresh选项卡,选择以下ui

切换到Build Options选项卡,选择以下.net

最后别忘记点OK,回到Properties,把当前新建的NDK_Builder Up到最上面blog

这样,就配置了NDK的编译环境。ip

3.jni下的Application.mk文件须要修改为APP_ABI := armeabi armeabi-v7a arm64-v8a ……添加了arm64-v8av8

4.Project选择Clean或者Build Project均可以自动把jni下的源文件编译成.so文件。get

以上步骤顺利执行事后查看libs目录,下面的arm64-v8a文件夹下生成了libspeex.so文件。cmd

 

转载自:http://blog.csdn.net/xingliuyang/article/details/46710345

相关文章
相关标签/搜索