Я пытаюсь заполнить базу данных при ее создании с помощью RoomDatabase.Callback для вставки данных, но когда я открываю БД, данные не вставляются.
Вот мой DatabaseClass
@Database(entities = {StationSQLiteEntity.class}, version = 1)
public abstract class StationDatabase extends RoomDatabase {
private static StationDatabase instance;
public abstract StationSQLiteDAO stationDAO();
public static synchronized StationDatabase getInstance(Context context){
if(instance == null){
instance = Room.databaseBuilder(context.getApplicationContext(), StationDatabase.class, "station_database")
.fallbackToDestructiveMigration()
.addCallback(roomCallback)
.build();
}
return instance;
}
private static RoomDatabase.Callback roomCallback = new RoomDatabase.Callback(){
@Override
public void onCreate(@NonNull SupportSQLiteDatabase db) {
super.onCreate(db);
new LoadStationsAT(instance).execute();
}
};
private static class LoadStationsAT extends AsyncTask<Void, Void, Void>{
private StationSQLiteDAO stationDAO;
public LoadStationsAT(StationDatabase db) {
this.stationDAO = db.stationDAO();
}
@Override
protected Void doInBackground(Void... voids) {
StationSQLiteEntity station = new StationSQLiteEntity(123, "Madrid", "ES", "a", "b", 40.0, -3.75, 0);
station.setId(1);
stationDAO.createStation(station);
return null;
}
}
}
Кажется, что он работает правильно, но когда я открываю отладку БД в табличной станции, нет данных