我有混淆Lite和一個完整的項目都引用一個庫項目。在運行時,我得到「NoSuchMethodException myMethod的」錯誤如何解決Android上的proguard NoSuchMethodException
根據http://proguard.sourceforge.net/index.html#/manual/troubleshooting.html我有以下添加到proguard.cfg
-keep class mypackage.MyClass { void myMethod(); }
我的方法返回一個字符串,並接受3個字符串參數,所以我加入下面的proguard.cfg
-keep public class com.mycompany.appName.MyClass {
String myMethod(String, String, String);
}
但我仍然得到同樣的錯誤。
假設我正在構建精簡版版本com.mycompany.appName.lite,我假設我不必在添加到proguard.cfg的行中更改程序包名稱,因爲它是引用的庫。
有什麼我失蹤?謝謝。
好的,我找到了解決方案。我不得不添加String參數的「java.lang」infront。 -keep public class com.mycompany.appName.myClass {java.lang.String myMethod(java.lang.String,java.lang.String); } – Dittimon