admin 管理员组文章数量: 1184232
解决混淆后项目中jar包产生的错误(Eventbus,Gson,高德地图)
对于混淆后的项目很多依赖的jar包的方法在运行时会提示找不到方法,这时候最好的解决方法就是去.pro文件中使用的jar包进行混淆以及过滤操作。对目前几种比较容易出错的jar包一一枚举出来。
1,GSON,关于gson需要在混淆文件中做过滤操作在上一篇文章中已经详细介绍过了,现在直接贴上代码。
# Gson
-keep class com.google.gson.stream.** { *; }
-keepattributes EnclosingMethod
-keep class com.chuanghaikeji.wisdomcity.bean.** { *; }//替换成自己放实例的包
2,EventBus,注意一点自己的EventBus是哪个版本的,版本不同对应的包名也不一样如:beta1是de开头的包名而3.0是org开头的包名。
#EventBus3.0混淆
-keepattributes *Annotation*
-keepclassmembers class ** {@org.greenrobot.eventbus.Subscribe <methods>;
}
-keep enum org.greenrobot.eventbus.ThreadMode { *; }# Only required if you use AsyncExecutor
-keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent {<init>(java.lang.Throwable);
}
#EventBus混淆时注意过滤掉eventbus
-keep class org.greenrobot.eventbus.** { *; }
3,高德地图
#3D 地图 V5.0.0之后:
-keep class com.amap.api.maps.**{*;}
-keep class com.autonavi.**{*;}
-keep class com.amap.api.trace.**{*;}#定位
-keep class com.amap.api.location.**{*;}
-keep class com.amap.api.fence.**{*;}
-keep class com.autonavi.aps.amapapi.model.**{*;}#搜索
-keep class com.amap.api.services.**{*;}#导航
-keep class com.amap.api.navi.**{*;}
-keep class com.autonavi.**{*;}
本文标签: 解决混淆后项目中jar包产生的错误(Eventbus Gson 高德地图)
版权声明:本文标题:解决混淆后项目中jar包产生的错误(Eventbus,Gson,高德地图) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1698236870a288516.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论