我已经实现了一个Webview,它使用了JavascriptInterface。它在没有混淆的时候工作得很好,但是一旦Proguard被激活,它就不能工作了。我看了这里的其他答案,但我仍然不能让它工作。
一些WebView类:
public class Activity_Webview {
private WebView webView;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
webView = (WebView) findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(new JavaScriptInterface (), "HTMLOUT");
webView.setWebViewClient(mWebViewClient);
}
public class JavaScriptInterface implements NonObfuscateable{
@JavascriptInterface
public void processHTML(String html) {
handleFinishFromWebView(html);
}
}
我在中尝试过的东西
-keep public class * implements com.project.NonObfuscateable
-keepclassmembers class * implements NonObfuscateable {
public void processHTML(java.lang.String);
}
我也尝试过这个(当不实现NonObfuscateable接口时
-keep public class com.project.Activity_Webview.JavaScriptInterface
-keep public class * implements com.project.Activity_Webview.JavaScriptInterface
-keepclassmembers class * implements com.project.Activity_Webview.JavaScriptInterface {
<fields>;
<methods>;
}
有没有人知道可能出了什么问题?提前感谢
https://stackoverflow.com/questions/17629507
复制相似问题