android64位机子兼容32位.so库文件
2016-11-07 09:48
701 查看
http://blog.csdn.net/vhawk/article/details/49964475
猴子在调用高德地图的时候,遇到一个操作系统兼容问题,异常堆栈说是找不到so库文件,猴子就不懂了,明明有他说的那个文件。
后来和同行交流,他们的jniLibs中有一个arm64-v8a的文件夹用来存放64位操作系统的so库文件,于是猴子自己建了一个arm64-v8a文件夹,因为高德并没有把64位的so库文件公布出来,所以,猴子直接把他们唯一的so库考到了arm64-v8a文件夹下。自以为这下就该好了,于是等待见证奇迹。奇迹果然发生了,爆出了那个so库是32位而非64位的异常。猴子果断蒙圈了。下载了高德的demo,看到她们的demo里面也只有armeabi这一个库文件夹。这让猴子感觉到,64位的操作系统可以兼容32位的库文件。于是多方查找资料。终于在一家英文网站上找到了答案。
解决方案也很简单,在build.gradle中加上,这句话的意思大概就是,告诉程序加载如下的so文件
这时会报错,因为gradle的配置中,并不知道是否要做操作系统的兼容,这时只要在gradle.properties文件中加上
Android.useDeprecatedNdk=true
就可以了。
运行,终于能奇迹般地运行起来了。
猴子在调用高德地图的时候,遇到一个操作系统兼容问题,异常堆栈说是找不到so库文件,猴子就不懂了,明明有他说的那个文件。
后来和同行交流,他们的jniLibs中有一个arm64-v8a的文件夹用来存放64位操作系统的so库文件,于是猴子自己建了一个arm64-v8a文件夹,因为高德并没有把64位的so库文件公布出来,所以,猴子直接把他们唯一的so库考到了arm64-v8a文件夹下。自以为这下就该好了,于是等待见证奇迹。奇迹果然发生了,爆出了那个so库是32位而非64位的异常。猴子果断蒙圈了。下载了高德的demo,看到她们的demo里面也只有armeabi这一个库文件夹。这让猴子感觉到,64位的操作系统可以兼容32位的库文件。于是多方查找资料。终于在一家英文网站上找到了答案。
解决方案也很简单,在build.gradle中加上,这句话的意思大概就是,告诉程序加载如下的so文件
defaultConfig { ......ndk { abiFilters "armeabi", "armeabi-v7a", "x86", "mips" } }
这时会报错,因为gradle的配置中,并不知道是否要做操作系统的兼容,这时只要在gradle.properties文件中加上
Android.useDeprecatedNdk=true
就可以了。
运行,终于能奇迹般地运行起来了。
相关文章推荐
- android64位机子兼容32位.so库文件
- android64位机子兼容32位.so库文件
- android64位机器兼容32位.so库文件
- android 64位机子兼容32位so包的操作
- android 64位系统,调用32位so文件
- android源码加入第三方apk,带so的mk文件写法,兼容64位平台
- Android so文件是32位时,如何在64位手机上运行。
- Android 关于arm64-v8a、armeabi-v7a、armeabi、x86下的so文件兼容问题
- Ubuntu14.04,64位操作系统安装部分android32位lib不兼容问题
- Android-ndk-64位so文件问题(RSA加密采用cpp代码实现)
- >Android 关于arm64-v8a、armeabi-v7a、armeabi、x86下的so文件兼容问题
- android cpu架构兼容 so文件找不到
- 【转】.so兼容32位和64位
- 我的Android进阶之旅------>Android 关于arm64-v8a、armeabi-v7a、armeabi、x86下的so文件兼容问题
- 【转载】Android 关于arm64-v8a、armeabi-v7a、armeabi、x86下的so文件兼容问题
- 关于jni编译32位、64位动态库(Android.mk和Application.mk文件)
- android 如何兼容32位的库文件
- INF文件详解(32位64位兼容INF)
- android 64位的so文件 报错
- 关于在android开发时图像识别so文件不兼容的问题