Я использую в своем проекте кусок кода, как описано здесь
http://lexandera.com/2009/01/extracting-html-from-a-webview/
Я создаю файл .apk, устанавливаю его на свое устройство, и он работает правильно.Если я попытаюсь использовать обфускацию с proguard, проект потерпит неудачу, метод showHTML (String html) MyJavaScriptInterface не будет достигнут.
Моя конфигурация proguard относительно этого
-keep public class com.mypackage.MyClass.MyJavaScriptInterface
-keep public class * implements com.mypackage.MyClass.MyJavaScriptInterface
-keepclassmembers class * implements com.mypackage.MyClass.MyJavaScriptInterface {
<methods>;
}
согласно этому этомуответ Android proguard Проблема интерфейса Javascript .
РЕШЕНО.
Как предположил Эрик, я изменил файл конфигурации Proguard следующим образом:
-keep public class com.mypackage.MyClass$MyJavaScriptInterface
-keep public class * implements com.mypackage.MyClass$MyJavaScriptInterface
-keepclassmembers class com.mypackage.MyClass$MyJavaScriptInterface {
<methods>;
}
Теперь мой проект работает отлично.
Для API 17+ вам также необходимо сохранить аннотации @JavascriptInterface:
-keepattributes JavascriptInterface
http://developer.android.com/reference/android/webkit/JavascriptInterface.html