With the progress of the processor manufacturing process, and the continuous development of the Android system, recently out of the ARM64-V8A architecture, because the project uses the Speex of the third-party speech codec Dynamic library, the other architecture of the processor temporarily needless to say, all normal, Only to arm64-v8a here problem, in Android5.0 arm64 bit of mobile phone use voice will error, about other architectures. So file compilation no longer repeat, the Internet has information. Nonsense less, directly on the steps:
1. Download android-ndk-r10e-windows-x86_64 and unzip, this support ARM64-V8A compilation, the previous version is not, I used the android-ndk32-r10-windows-x86_ 64, results were later compiled when error Android NDK:NDK application ' local ' targets unknown ABI (s): arm64-v8a so to use the latest.
2. You can configure the NDK's build environment directly in eclipse, instead of using Cygwin, project right--->properties-->builder-->new--> Select program, In the Main tab, set the NDK's Location,browse File system to select the path of ndk-build.cmd, working directory Select the JNI folder path under Project, choose Browse WorkSpace here,
Switch to the Refresh tab and select the following
Switch to the Build Options tab and select the following
Finally, don't forget to click OK, back to the properties, the current new Ndk_builder up to the top
In this way, the NDK's build environment is configured.
The application.mk file under 3.jni needs to be modified to App_abi: = Armeabi armeabi-v7a arm64-v8a ... Added the arm64-v8a
4.Project Select clean or build project to automatically compile the source files under Jni into. so files.
After the above steps have been successfully viewed in the Libs directory, the libspeex.so file is generated under the ARM64-V8A folder below.
Reprinted from: http://blog.csdn.net/xingliuyang/article/details/46710345
Android Development: Open Source Library Speex supports arm64 dynamic library files