アノテーションに依存するデータベース ORM ライブラリである ActiveAndroid を使用するアプリがあります。
@Table(name="test")
public class DatabaseItem extends ActiveRecordBase<DatabaseItem> {
public DatabaseItem(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
@Column(name="counter")
public int counter;
}
Proguard をこれでうまく動作させるにはどうしたらいいでしょうか? 現在、Proguard を使用すると、ActiveAndroid で列名が見つからないというエラーが発生します。何らかの理由で注釈が壊れているのだと思います。
関連する Proguard 構成:
#ActiveAndroid
-keep public class com.activeandroid.**
-keep public class * extends com.activeandroid.ActiveRecordBase
-keepattributes Column
-keepattributes Table
ベストアンサー1
Column
既存のJavaクラスファイル属性ではありませTable
ん。少なくとも以下を指定する必要があります。
-keepattributes *Annotation*
参照:ProGuard マニュアル。