कक्ष के साथ एक अलग डेटाबेस कार्यान्वयन का उपयोग करने के लिए, आपको एक SupportSQLiteOpenHelper.Factory
खोजने (या बनाने) की आवश्यकता है कार्यान्वयन और इसे अपने RoomDatabase.Builder
. को आपूर्ति करें openHelperFactory()
. के माध्यम से :
val builder = Room.databaseBuilder(context, SomeDatabase.class, DB_NAME)
.openHelperFactory(factory)
.build()
ऐसा करने का सबसे आसान तरीका है Requery की स्टैंडअलोन SQLite लाइब्रेरी का उपयोग करना। आप RequerySQLiteOpenHelperFactory
. का प्रयोग करेंगे SupportSQLiteOpenHelper.Factory
. के कार्यान्वयन के रूप में , और यह फ्रेमवर्क एक के बजाय SQLite की Requery की पैकेज्ड कॉपी का उपयोग करेगा।
यदि, किसी कारण से, आप रिक्वायरी की लाइब्रेरी का उपयोग नहीं करना चाहते हैं, तो आपको अपनी पसंद के समकक्ष खोजने की आवश्यकता होगी, या आपको SupportSQLite*
को लागू करने की आवश्यकता होगी। स्वयं एपीआई। मैंने Android के लिए SQLCipher के लिए ऐसा दो बार किया, और यह एक दर्द है, लेकिन यह निश्चित रूप से करने योग्य है।