># WebView中WebViewClient及JS混淆问题
# webview + js,保留跟 javascript相关的属性 -keepattributes *JavascriptInterface* # keep 使用 webview 的类 -keepclassmembers class * extends android.webkit.WebViewClient { public void *(android.webkit.WebView, java.lang.String, android.graphics.Bitmap); public boolean *(android.webkit.WebView, java.lang.String); public void *(android.webkit.webView, jav.lang.String); } #保留JavascriptInterface中的方法 -keepclassmembers class * { @android.webkit.JavascriptInterface <methods>; } #这个根据自己的project来设置,这个类用来与js交互,所以这个类中的 字段 ,方法, 等尽量保持 -keepclassmembers public class com.desaco.webViewJavascriptBridge.WVJBWebViewClient{ <fields>; <methods>; public *; private *; } #这个类 必须保留,这个类在WVJBWebViewClient中传递数据,如果被混淆 会导致一些callback无法调用 -keep class com.desaco.webViewJavascriptBridge.WVJBWebViewClient$WVJBMessage #类中成员的变量名也不能混淆,这些变量名被作为json中的字段,不能改变。 -keepclassmembers class com.desaco.webViewJavascriptBridge.WVJBWebViewClient$WVJBMessage{ <fields>; }
webview 中js交互 代码混淆后失效- http://blog.csdn.net/u010940300/article/details/50846429