Давайте не будем добавлять вещи, которые мы видим в других сообщениях без причины.

обавлении базы данных комнат предлагается использовать шаблон проектирования Singleton

Примечание. При создании экземпляра объекта AppDatabase следует придерживаться шаблона одноэлементного проектирования, поскольку каждый экземпляр RoomDatabase довольно дорогой и вам редко требуется доступ к нескольким экземплярам.

Итак, добавление Room Database, следуя примеру Google, написанному на Java, будет выглядеть так:

private var INSTANCE: AppDatabase? = null

fun getInstance(context: Context): AppDatabase? {
    if (INSTANCE == null){
        synchronized(AppDatabase::class){
            INSTANCE = Room.databaseBuilder(context.applicationContext,
                    AppDatabase::class.java, "app_database")
                    .build()
        }
    }
    return INSTANCE
}

Когда я звонюgetInstanceКомпилятор предполагает, чтоgetInstance может бытьnull, Так что мой вопрос, есть ли случай, когдаgetInstance бытьnull и я должен проверить, если этоnull, Если нет, то как мне создать экземплярAppDatabase так чтоgetInstance вернутьAppDatabase неAppDatabase? и это соответствует рекомендации документации?

Ответы на вопрос(1)

Ваш ответ на вопрос