Hoge というクラスのインスタンスを完全修飾名(文字列)から ClassLoader を使って動的に生成しているのですが、
- -keep class com.example.android.Hoge
getConstructor() で取得しようとしているコンストラクタは引数ありで、コードからは呼ばれていません。
そのためなのか、どうも proguard が削除してしまっているよう。
そこで
- -keep class com.example.android.Hoge {
- public <init>(com.example.android.Fuga);
- }
ちなみに、com.example.android 内の全てのクラスに適用したい場合は
- -keep class com.example.android.*
- -keep class com.example.android.**
-keep class com.example.android.Hoge
返信削除だと「クラス名」しか keep 対象になりません。全クラスメンバも keep 対象にするなら、例えば
-keep class com.example.android.Hoge { *; }
のように書く必要があります。ProGuard の -keep オプションはわかりにくいですね。。。