1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
测试
形式:RK33999999.1.Android 7.1.1 显示 我们具有系统权限()的apk,由于该系统位因此而使用的操作系统:因此,只有 323232引导或出现其他类型uid=系统应用程序如KeyChain)(找不到的odex文件(类),导致报错,logProcess : com.android.keychain, PID: 1177 java.lang.RuntimeException:无法实例化服务 com.android.keychain.KeyChainService:java.lang.ClassNotFoundException:在路径上找不到类“com.android.keychain.KeyChainService”:DexPathList [[zip 文件“/system/app/KeyChain/KeyChain. apk“],nativeLibraryDirectories=[/system/app/KeyChain/lib/arm64, /system/app/KeyChain/KeyChain.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib, /system/lib , /vendor/lib]] 在 android.app.ActivityThread.handleCreateService(ActivityThread.java:3186) 在 android.app.ActivityThread.-wrap5(ActivityThread.java) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1577) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os .Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6157) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit $MethodAndArgsCaller.run(ZygoteInit.java:912) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:802) 引起:java.lang.ClassNotFoundException:在路径上找不到类“com.android.keychain.KeyChainService”:DexPathList[[zip file ”/system/app/KeyChain/KeyChain.apk“],nativeLibraryDirectories=[/system /app/KeyChain/lib/arm64, /system/app/KeyChain/KeyChain.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib, /system/lib, /vendor/lib]] 在 dalvik .system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:380) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:312) 在 android.app.ActivityThread。 android.app.ActivityThread.-wrap5( ActivityThread.java)处的 handleCreateService(ActivityThread.java:3183) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1577) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:154) 在 android。 app.ActivityThread.main(Activity我们遇到 的问题是,我们自己编写的应用是系统应用,使用了系统的systemuid,就是和setting的uid是一样的,而且我们是32位apk,setting是64位apk ,这样的日志开始发现的时候发现分析遇到设置不到lib库。。 分析 了系统,从7.1系统有一个新特性,就是相同uid的应用会使用相同的lib地址,以uid =系统的应用举例。如果使用lib64就都是lib64,如果是lib,不能32和64排。而指定32还是64是第一个解析到的uid=系统的应用动态所以当他第一个解析到我们的应用程序时,发现是指定 32 位,然后当其他运行时,他的类 ui=lib 就去 lib=64 下寻找,但是其他的,所以通过寻找找不到类报错的问题解决方案1)或者将部分库的方案(但是会出现找不到类报错的问题 解决方案 1)或者将3个库的部分解决方案(但是会帮助找到一个22位的解决方案) 。 1.部分需要所以库只有32位找不到64位 方案2.有的时候出问题的ap我们没有修改那么根本无法,所以也拒绝。就剩下的 方案3: 1.在apk的android.mk中 LOCAL_DEX_PREOPT := nostripping 2./device/rockchip/rk3399 /BoardConfig.mk, DEX_PREOPT_DEFAULT=nostripping 3的英文版本时,不会是从apk里面生成odex的时候。下面的codek出来,这样可以查询lib类ex时解析apk中的classes.dex,不会报错。 但是这样也有好处,会导致体积变大,没有其他更好的解决办法先这样解决吧。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
基于米尔瑞芯微RK3576核心板/开发板的人脸疲劳检测应用方案
498 浏览 0 评论
768 浏览 1 评论
667 浏览 1 评论
1893 浏览 1 评论
3138 浏览 1 评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 22:42 , Processed in 0.499736 second(s), Total 72, Slave 54 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号