AndroidアプリケーションでJcenterの外部ライブラリ(Picasso)を使用しています。私は私のアプリでそのライブラリのインターフェイスを実装しています。問題は、proguardは常に私のアプリで実装されたインターフェイスのメソッドを削除することです。実装されたインタフェースのメソッドを削除することを避けるために
外部ライブラリで定義されたインタフェースは
public interface Callback {
void onSuccess();
void onError();
}
であり、私は私のコードでは、このインタフェースを実装します。私がproguardを実行して.classファイルをチェックすると、実装されたクラスにonSuccess
とonError
のメソッドがないことが分かります。
私はすでにPicassoCallback
は私の実装であるところ、上記の剥離を防止する1つの方法は、私はこれを行うことである。この
-keep class com.squareup.picasso.** {*;}
-dontwarn com.squareup.picasso.**
を追加することによって、完全に私ProGuardのファイルにすべてのこと外部ライブラリをスキップする設定を追加しましたCallback
インタフェース
-keep class com.package.className$PicassoCallback{
public void onSuccess();
public void onError();
}
しかし、私は私のプロジェクトでは、外部インターフェイスのすべての実装のためにこれを行う必要があります。
プロジェクト全体でメソッドを削除するのを防ぐのに役立つProguardの設定はありますか?
いいえ、それは役に立たなかった。 – Diffy