android64位机子兼容32位.so库文件

原创 2015年11月21日 14:47:35

        猴子在调用高德地图的时候,遇到一个操作系统兼容问题,异常堆栈说是找不到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

就可以了。

运行,终于能奇迹般地运行起来了。




Android 如何判断CPU是32位还是64位

可以利用Android 的系统 property (android.os.SystemProperties) 来判断CPU是32位还是64位: public static String ge...

编译android 64位 .so库

ndk-build "ABI=arm64-v8a"  同时需要把application.mk都注释掉。

Windows 7 64位机上搭建Android开发环境

Windows 7 64位机上搭建Android开发环境

Android APK 在32bit 和64bit 的区别问题

目前64bit android系统也慢慢的多了,看到也有apk声称支持64bit system,然后就往里面打包搞了个arm64-v8a 目录,放了个64bit的so,但是apk代码里面却不按规范...

Android so文件是32位时,如何在64位手机上运行。

今天遇到一个很蛋疼的问题,使用了网上的开源二维码扫描,所用的so文件是32位的,在64位手机上报错,解决的办法是在项目目录下的build.gradle文件中添加如下字段 然后在项目文件夹下的g...

如何在64位安卓系统中使用32位SO库

背景知识:对于64位系统的编译规则,可参考:http://source.android.com/source/64-bit-builds.html关键点:JAVA编译不分32bit和64bit(APK...
  • codehat
  • codehat
  • 2016年04月11日 14:49
  • 6434

.so兼容32位和64位

安卓的兼容性是一个很令人头疼的问题,这几天又遇到了,还好还是解决了。 我遇到的问题是,我在网上下载了一个功能库,里面带了一个xxx.so动态库,问题它是32位的。但是,早两天拿了一台arm-64位的手...
  • fwt336
  • fwt336
  • 2016年06月17日 15:50
  • 2531

Android Studio上打的包在arm64位机器上找不到对应的so库

现象描述 Android Studio打出来的包在64位机器上报以下 java.lang.UnsatisfiedLinkError: dlopen failed: “libfoobar.so”我们...

Android——APK 在32bit/64bit平台 动态库问题

目前64bit android系统也慢慢的多了,看到也有apk声称支持64bit system,然后就往里面打包搞了个arm64-v8a 目录,放了个64bit的so,但是apk代码里面却不按规范去l...
  • jscese
  • jscese
  • 2015年08月04日 18:46
  • 8861

如何将一个已经编译好的so文件编译进system/lib64目录下

在proting fingerprint sensor的时候,厂商给出的guide里需要将libvfmClient.so放入 机台的system/lib64目录下 具体的做法如下: 首先...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android64位机子兼容32位.so库文件
举报原因:
原因补充:

(最多只允许输入30个字)