SQLite
 sql >> Database >  >> RDS >> SQLite

Come installare la versione più recente di Sqlite aar quando si utilizza Room su Android

Per utilizzare un'implementazione di database diversa con Room, devi trovare (o creare) un SupportSQLiteOpenHelper.Factory implementazione e forniscilo al tuo RoomDatabase.Builder tramite openHelperFactory() :

val builder = Room.databaseBuilder(context, SomeDatabase.class, DB_NAME)
  .openHelperFactory(factory)
  .build()

Il modo più semplice per farlo è utilizzare la libreria SQLite autonoma di Requery. Dovresti usare RequerySQLiteOpenHelperFactory come implementazione di SupportSQLiteOpenHelper.Factory , e utilizzerà la copia del pacchetto di SQLite di Requery invece di quella del framework.

Se, per qualche motivo, non desideri utilizzare la libreria di Requery, dovresti trovare un equivalente che ti piace, oppure dovresti implementare il SupportSQLite* API tu stesso. L'ho fatto due volte per SQLCipher per Android ed è una seccatura, ma è certamente fattibile.