Android不混淆没问题,混淆后一打开就报错

杰杰天明 2016-01-05 02:30:11
12-31 04:03:39.161: E/EGL_emulation(723): tid 723: eglCreateSyncKHR(1181): error 0x3004 (EGL_BAD_ATTRIBUTE)
12-31 04:03:47.261: E/InputDispatcher(747): channel '2335106f com.yundcm/com.yundcm.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
12-31 04:03:47.728: E/EGL_emulation(723): tid 723: eglCreateSyncKHR(1181): error 0x3004 (EGL_BAD_ATTRIBUTE)
12-31 04:03:48.170: E/SQLiteLog(3430): (283) recovered 1 frames from WAL file /data/data/com.android.providers.media/databases/external.db-wal
12-31 04:04:06.896: E/memtrack(3474): Couldn't load memtrack module (No such file or directory)
12-31 04:04:06.896: E/android.os.Debug(3474): failed to load memtrack module: -2
12-31 04:04:08.912: E/memtrack(3518): Couldn't load memtrack module (No such file or directory)
12-31 04:04:08.912: E/android.os.Debug(3518): failed to load memtrack module: -2
12-31 04:04:09.038: E/AndroidRuntime(3532): FATAL EXCEPTION: main
12-31 04:04:09.038: E/AndroidRuntime(3532): Process: com.yundcm, PID: 3532
12-31 04:04:09.038: E/AndroidRuntime(3532): java.lang.RuntimeException: Unable to instantiate application com.yundcm.base.AppContext: java.lang.ClassNotFoundException: Didn't find class "com.yundcm.base.AppContext" on path: DexPathList[[zip file "/data/app/com.yundcm-1/base.apk"],nativeLibraryDirectories=[/data/app/com.yundcm-1/lib/x86, /vendor/lib, /system/lib]]
12-31 04:04:09.038: E/AndroidRuntime(3532): at android.app.LoadedApk.makeApplication(LoadedApk.java:563)
12-31 04:04:09.038: E/AndroidRuntime(3532): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4491)
12-31 04:04:09.038: E/AndroidRuntime(3532): at android.app.ActivityThread.access$1500(ActivityThread.java:144)
12-31 04:04:09.038: E/AndroidRuntime(3532): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1339)
12-31 04:04:09.038: E/AndroidRuntime(3532): at android.os.Handler.dispatchMessage(Handler.java:102)
12-31 04:04:09.038: E/AndroidRuntime(3532): at android.os.Looper.loop(Looper.java:135)
12-31 04:04:09.038: E/AndroidRuntime(3532): at android.app.ActivityThread.main(ActivityThread.java:5221)
12-31 04:04:09.038: E/AndroidRuntime(3532): at java.lang.reflect.Method.invoke(Native Method)
12-31 04:04:09.038: E/AndroidRuntime(3532): at java.lang.reflect.Method.invoke(Method.java:372)
12-31 04:04:09.038: E/AndroidRuntime(3532): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
12-31 04:04:09.038: E/AndroidRuntime(3532): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
12-31 04:04:09.038: E/AndroidRuntime(3532): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.yundcm.base.AppContext" on path: DexPathList[[zip file "/data/app/com.yundcm-1/base.apk"],nativeLibraryDirectories=[/data/app/com.yundcm-1/lib/x86, /vendor/lib, /system/lib]]
12-31 04:04:09.038: E/AndroidRuntime(3532): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
12-31 04:04:09.038: E/AndroidRuntime(3532): at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
12-31 04:04:09.038: E/AndroidRuntime(3532): at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
12-31 04:04:09.038: E/AndroidRuntime(3532): at android.app.Instrumentation.newApplication(Instrumentation.java:979)
12-31 04:04:09.038: E/AndroidRuntime(3532): at android.app.LoadedApk.makeApplication(LoadedApk.java:558)
12-31 04:04:09.038: E/AndroidRuntime(3532): ... 10 more
12-31 04:04:09.038: E/AndroidRuntime(3532): Suppressed: java.lang.ClassNotFoundException: com.yundcm.base.AppContext
12-31 04:04:09.038: E/AndroidRuntime(3532): at java.lang.Class.classForName(Native Method)
12-31 04:04:09.038: E/AndroidRuntime(3532): at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
12-31 04:04:09.038: E/AndroidRuntime(3532): at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
12-31 04:04:09.038: E/AndroidRuntime(3532): at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
12-31 04:04:09.038: E/AndroidRuntime(3532): ... 13 more
12-31 04:04:09.038: E/AndroidRuntime(3532): Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
12-31 04:04:09.272: E/EGL_emulation(723): tid 723: eglCreateSyncKHR(1181): error 0x3004 (EGL_BAD_ATTRIBUTE)
...全文
1552 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
在清晨 2016-01-06
  • 打赏
  • 举报
回复
引用 8 楼 u012545493 的回复:
[quote=引用 2 楼 itskiller 的回复:] 这个类com.yundcm.base.AppContext被混淆了, 干掉了 你要修改proguard文件, 把它keep下来.
可是我都-keep public class com.yundcm.base.AppContext这样写了,或者-dontwarn com.yundcm.base.** -keep class com.yundcm.base.** { *;},,这样都不行,还是这个错[/quote] 楼主, 使用d2j-dex2jar把你最终出问题的apk反编译一下, 看下这个类还不在. 我怀疑肯定是名字改了或者 被干掉了.
杰杰天明 2016-01-06
  • 打赏
  • 举报
回复
引用 2 楼 itskiller 的回复:
这个类com.yundcm.base.AppContext被混淆了, 干掉了 你要修改proguard文件, 把它keep下来.
可是我都-keep public class com.yundcm.base.AppContext这样写了,或者-dontwarn com.yundcm.base.** -keep class com.yundcm.base.** { *;},,这样都不行,还是这个错
杰杰天明 2016-01-06
  • 打赏
  • 举报
回复
引用 1 楼 zhongsuke 的回复:
每个项目的混淆代码基本都不一样,注意一下几点 1.解析json的实体类不要混淆 2.实现Serializable与Parcelable接口的类不要混淆 3.第三代jar包尽量不混淆,如果需要的话查询他们的混淆规则
可是我都-keep public class com.yundcm.base.AppContext这样写了,或者-dontwarn com.yundcm.base.** -keep class com.yundcm.base.** { *;},,这样都不行
杰杰天明 2016-01-06
  • 打赏
  • 举报
回复
引用 5 楼 luqing414 的回复:
dn't find class "com.yundcm.base.AppContext" on path: DexPathList 这已经说了,这个类不要混淆
可是我都-keep public class com.yundcm.base.AppContext这样写了,或者-dontwarn com.yundcm.base.** -keep class com.yundcm.base.** { *;},,这样都不行,还是这个错
luqing414 2016-01-06
  • 打赏
  • 举报
回复
dn't find class "com.yundcm.base.AppContext" on path: DexPathList 这已经说了,这个类不要混淆
ESC尛蜜蜂 2016-01-06
  • 打赏
  • 举报
回复
个人感觉混淆现在没什么用,只是优化了下代码,删除了重复代码,增加了反编译后阅读的难度,一般都是通过在apk上加个套子,防止反编译,很多第三方都提供这种服务,我就不举例了
UESTC少尉 2016-01-06
  • 打赏
  • 举报
回复
1楼说的几点确实要注意,混淆可能出现的问题比较多的,现在第三方的一些安全加固平台倒是比较好用的,可以看看(梆梆、阿里聚安全...)
在清晨 2016-01-05
  • 打赏
  • 举报
回复
这个类com.yundcm.base.AppContext被混淆了, 干掉了 你要修改proguard文件, 把它keep下来.
zhongsuke 2016-01-05
  • 打赏
  • 举报
回复
每个项目的混淆代码基本都不一样,注意一下几点 1.解析json的实体类不要混淆 2.实现Serializable与Parcelable接口的类不要混淆 3.第三代jar包尽量不混淆,如果需要的话查询他们的混淆规则
内容概要:SSD2828QN4是一款MIPI主桥接芯片,用于连接应用处理器与传统并行LCD接口及支持MIPI从属接口的LCD驱动器。该芯片支持最高每通道1Gbps的串行链路速度,最多可配置4个数据通道,显著减少了信号数量。它支持多种接口模式,包括RGB+SPI组合接口,适用于驱动智能或非智能显示面板,并能通过命令模式和视频模式传输数据。芯片内置时钟和复位模块、外部接口、协议控制单元(PCU)、包处理单元(PPU)、错误校正码/循环冗余校验(ECC/CRC)模块、长包和命令缓冲区、D-PHY控制器、模拟收发器以及内部锁相环(PLL),确保了高效的数据传输和系统稳定性。此外,文档详细描述了芯片的引脚分配、寄存器设置、操作模式、电源序列、时序特性等关键参数,为开发者提供了全面的技术指导。 适合人群:具备一定硬件设计基础,从事嵌入式系统开发、显示技术研究的研发人员。 使用场景及目标:①实现应用处理器与MIPI兼容显示屏之间的高速数据传输;②优化显示系统的功耗表现,减少电磁干扰(EMI);③通过灵活配置不同接口模式来适应各种显示设备的需求。 阅读建议:此文档面向具有一定电子工程背景的专业人士,建议读者结合实际项目需求深入理解各章节内容,特别是关于寄存器配置、时序要求等方面的具体说明。对于初次接触此类技术的开发者而言,建议先熟悉基本概念再逐步掌握高级功能的应用方法。

80,488

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧