companion object {
@Volatile
private lateinit var instance: ExampleDatabase
fun getInstance(context: Context): ExampleDatabase {
synchronized(this) {
if(!::instance.isInitialized) {
instance = Room.databaseBuilder(
context.applicationContext, // Why does this require context?
LottoDatabase::class.java,
"lotto_database"
)
.fallbackToDestructiveMigration()
.build()
}
return instance
}
}
}
Приведенный выше код является основным способом создания синглтона базы данных комнаты. Интересно, почему функция Room.databaseBuilder требует контекст в качестве параметра. Я знаю, что этот вопрос может быть глупым, потому что я не понимаю контекста в Android.
- Какой аргумент я должен передать в этом параметре?
- Что может быть другим, если Я передаю в контексте деятельности или приложения?