sql >> Base de Datos >  >> RDS >> SQLite

¿Cómo usar la biblioteca de persistencia de salas con una base de datos precargada?

Así es como lo resolví y cómo puede enviar su aplicación con una base de datos precargada (hasta Room v. alpha5)

  • ponga su base de datos SQLite database_name.db en los assets/databases carpeta

  • tome los archivos de este repositorio y colóquelos en un paquete llamado, por ejemplo, sqlAsset

  • en tu AppDatabase clase, modifique el código de creación de la base de datos de su sala en consecuencia:

    Room.databaseBuilder(context.getApplicationContext(), 
                         AppDatabase.class, 
                         "database_name.db")
    .openHelperFactory(new AssetSQLiteOpenHelperFactory())
    .allowMainThreadQueries()
    .build();
    

Tenga en cuenta que debe usar "database_name.db" y no getDatabasePath() u otros métodos:solo necesita el nombre del archivo.