android 系统app指定加载32-bit/64-bit so库

系统app 要求指定使用 32bit的so库,但是android Sudio 编译出来的app,使用 System.loadLibrary() 加载库的时候,硬是要去 加载 64bit的库, 把 /system/lib64 下的库手动删除掉,它还是只会去64bit的库路径下面查找,并且还log明确告诉你它查找库的路径和顺序,没辙。  这里为了临时达到目的,取个巧:

      设备上 /data/system/packages.xml 文件记载了app的信息,  其中一条: primaryCpuAbi="arm64-v8a"  就表明其实一个 64bit的, 如果手动把他改成  primaryCpuAbi="armeabi-v7a" 则app再启动的时候默认就会去加载 32-bit的so库了。 重启系统,这个xml文件也不会还原。(tip: 最好把指定要加载的库 改个独一无二的名字比如 libtest_32.so System.loadLibrary(test_32),然后放到 app安装目录的 *lib/arm/libtest_32.so ),  loader OK。   参阅 /data/system/packages.xml_主要看气质的搬砖者的博客-CSDN博客_data/system/packages.xml

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值