【转】预装(push)lib64中so文件查找错误

原文网址:http://blog.csdn.net/caroline_wendy/article/details/43615361

Android系统已经升级为64位系统,在进行预装(adb push)时,可能会发生64位不兼容的情况,因为没有提前编译64位的so文件。

 

添加64位的abi支持:
  1. APP_ABI=all32 is equivalent to APP_ABI=armeabi,armeabi-v7a,x86,mips.  
  2. APP_ABI=all64 is equivalent to APP_ABI=arm64-v8a,x86_64,mips64.  
 
未找到64位的so文件:
  1. E/AndroidRuntime( 5043): java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/system/app/ChunyuDoctor_V500_20150123.apk"],nativeLibraryDirectories=[/vendor/lib64, /system/lib64]]] couldn't find "libcytool.so"  

已经找到,但是非64位:
  1. LogSummaryInfo: {apkName, me.chunyu.ChunyuDoctor }{version, 5.0.0.20150126 }{reason, java.lang.UnsatisfiedLinkError: dlopen failed: "/system/lib64/libcytool.so" is 32-bit instead of 64-bit }  

预先编译64位的so文件,并添加入相应的64位文件夹内,在预装(adb push)时,即可推送到64位的文件夹。
 

参考:http://stackoverflow.com/questions/24538343/ndk-build-for-target-x86-64-results-in-error
 

posted on 2015-08-13 14:30  wi100sh  阅读(385)  评论(0编辑  收藏  举报

导航