これが私がそれを解決した方法であり、事前に入力されたデータベース(Room v。alpha5まで)を使用してアプリケーションを出荷する方法です
-
SQLite DB
database_name.db
を配置しますassets/databases
に フォルダ -
このリポジトリからファイルを取得し、
sqlAsset
というパッケージに入れます。 -
AppDatabase
で クラス、それに応じてRoomのDB作成コードを変更します:Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, "database_name.db") .openHelperFactory(new AssetSQLiteOpenHelperFactory()) .allowMainThreadQueries() .build();
"database_name.db"
を使用する必要があることに注意してください getDatabasePath()
ではありません または他の方法:ファイルの名前だけが必要です。