我的应用程序数据库类
@Database(entities = {Detail.class}, version = Constant.DATABASE_VERSION)
public abstract class AppDatabase extends RoomDatabase {
private static AppDatabase INSTANCE;
public abstract FavoritesDao favoritesDao();
public static AppDatabase getAppDatabase(Context context) {
if (INSTANCE == null) {
INSTANCE =
Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, Constant.DATABASE).allowMainThreadQueries().build();
//Room.inMemoryDatabaseBuilder(context.getApplicationContext(),AppDatabase.class).allowMainThreadQueries().build();
}
return INSTANCE;
}
public static void destroyInstance() {
INSTANCE = null;
}
}
摇篮库:
compile "android.arch.persistence.room:runtime:+"
annotationProcessor "android.arch.persistence.room:compiler:+"
例如,当我询问时会出现此错误,AppDatabase_Impl 在我的应用程序类中不存在
public class APp extends Application {
private boolean appRunning = false;
@Override
public void onCreate() {
super.onCreate();
AppDatabase.getAppDatabase(this); //--AppDatabase_Impl does not exist
}
}
原文由 pratik deshai 发布,翻译遵循 CC BY-SA 4.0 许可协议
对于那些使用 Kotlin 的人,请尝试在应用程序中将 ---
annotationProcessor
更改为kapt
build.gradle
例如:
还要记得添加这个插件
到应用程序级别 build.gradle 文件的顶部并进行清理和重建(根据 https://codelabs.developers.google.com/codelabs/android-room-with-a-view/#6 )
更新
如果你已经迁移到 androidx
更新 2(自 2021 年 7 月起)