I have a simple implementation of Room in my app. It has two entities. It works fine while app is running. But I see no data once app is restarted.
This is my database creation code -
@Database(entities = {Person.class, College.class}, version = 1, exportSchema = true)
public abstract class AppDatabase extends RoomDatabase {
private static AppdDatabase INSTANCE;
public abstract PersonDao personDao();
public abstract CollegeDao collgeDao();
public static AppDatabase getInstance(Context context) {
if (INSTANCE == null) {
INSTANCE = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, "my-sample-app.db")
.build();
}
return INSTANCE;
}
public static void destroyInstance() {
if (INSTANCE != null) INSTANCE.close();
INSTANCE = null;
}
}
In any running session, I can add and view data but nothing is available after app restart. What am I missing here?
Thanks
It was a silly mistake-
I wasn't using getInstance() posted in question, I was using below code to create database instead -
mDb = Room.inMemoryDatabaseBuilder(mContext, AppDatabase.class)
My code works as intended with original code posted in question.
Thanks