首先,说一下为啥要写,也是第一次写,在这之前,也百度了很多资料。离最终的解决方法只有一层窗户纸了,但是中间就有一点东西,没有搞明白,在这儿特别写出注意事项,也许在网上你都找到了解决方法,用到你的项目中,就是他妈不能用,很操蛋,以为这个方法不能用,其实不然。看下面的注意事项,把我的失败经历分享一下。
先看错误截图:
在我proguard的时候,报的错,网上的教程在proguard-project.txt文件中加入第三方jar包,然后使其不混淆。这种方法时可以解决出现上面类似问题的。但是有一下注意事项一定要注意,不要重复我的错误。
第一步,指定lib下面的报名
第二步,通过上面的报错信息找出对应类的直系父包名 ,不要图省事,直接最外面的 com.google.zxing.** 这样是不行的,也许是我的理解有误,然后就那样进入了深渊,一发不可收拾。核心的代码就是下面的,copy过去直接改就ok了
-libraryjars libs/javase-3.1.0.jar
-dontwarn com.google.zxing.client.j2se.** # 忽略这个包下面的类的警告-keep class com.google.zxing.client.j2se.** { *; } #不混淆该包下面的类
-dontwarn com.google.zxing.**
-keep class com.google.zxing.** { *; }