Voici comment je l'ai résolu et comment vous pouvez envoyer votre application avec une base de données pré-remplie (jusqu'à Room v. alpha5)
-
mettez votre SQLite DB
database_name.db
dans lesassets/databases
dossier -
prenez les fichiers de ce référentiel et placez-les dans un package appelé i.e.
sqlAsset
-
dans votre
AppDatabase
class, modifiez le code de création de la base de données de votre salle en conséquence :Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, "database_name.db") .openHelperFactory(new AssetSQLiteOpenHelperFactory()) .allowMainThreadQueries() .build();
Notez que vous devez utiliser "database_name.db"
et non getDatabasePath()
ou d'autres méthodes :il suffit de connaître le nom du fichier.