コードを生成するために注釈処理が必要なライブラリを構築しています。私は今、リリースビルドは、デバッグビルドと同じくらいのコードを持つ必要はないという問題にぶつかります(これは、主にテスト目的で使用される構成バリアントを変更するためのライブラリです)。次のコードは状況を示しています。注釈付きのクラスとプロパティからクラスConfigManagerを作成したいとしましょう。デバッグビルドで、私はずっとこれを必要とする:Androidアノテーション処理 - 異なるビルドフレーバに異なるコードを生成する
public class ConfigManager {
public Class getConfigClass() {
return abc.class;
}
public void method1() {
doSomething1();
}
public void method2() {
doSomething2();
}
public void method3() {
doSomething3();
}
}
リリースビルドで、私はずっとこれを必要としながら:
public class ConfigManager {
public Class getConfigClass() {
return abc.class;
}
}
私はそれをチェックするためにGradleのプラグインを書くことで可能かもしれない気持ちを持っていますコンパイル時にフレーバを構築し、別のプロセッサを呼び出すか、または何らかの形で別のコードを生成するためにパラメータをプロセッサに渡します。しかし、このトピックは私にはかなり新しいので、これを達成する方法がわかりません。グーグルのカップルの時間も助けになりませんでした。誰かが私に指示や例を与えることができるかどうか疑問に思っていますか?ありがとう
素晴らしい感謝!私は今働いている。同じ問題に直面している人のために、android-aptプラグインのBitbucketページ(https://bitbucket.org/hvisser/android-apt)が参考になるかもしれません。また、androidの使用に関する追加情報も提供しています –