最近 项目打包 遇到一些问题 混淆的问题
1:javascript失效
2:json 封装jsonutil javabean解析失败
自己也找了很久 后面才弄出来 分享一下
解决办法
类似于
wv_login.addJavascriptInterface(new MyJavaScriptInterface(), "jsObj");
混淆文件proguard-project.txt 中加上
-keep class XXXpakagenameXXX.XXXClassXXX$MyJavaScriptInterface {
*;
}
-keepattributes *Annotation*
//这个是你的javascript在4.0之后要加上注解不然 还是没效果 这个StackOverFlow 上面都没有 最后还是 一同事百度找到的 谁说百度不厉害
我的jsonutil是这样的
JsonUtil util = new JsonUtil(result);
info = (UserInfo) util.getObject(util.getJsonObject(),null, UserInfo.class);
UserInfo 是你的JavaBean
这里必须在混淆文件加上
-keep class 你的JavaBean的包名.**{
*;
}
这样基本解决 混淆照成的上面两个问题
如果对混淆写法不了解 可以查看sdk\tools\proguard\examples
里面很多混淆的东西
最后来张