Kotlin修复setPersistenceEnabled(true)

时间:2018-12-15 20:31:05

标签: android firebase firebase-realtime-database kotlin

如何在活动中修复以下错误?

  

由以下原因引起:com.google.firebase.database.DatabaseException:必须先调用setPersistenceEnabled(),然后再使用FirebaseDatabase实例。

我在活动中像这样设置setPersistenceEnabled():

override fun onOptionsItemSelected(item: MenuItem?): Boolean {
    when (item?.itemId) {
        R.id.ViewThat_add -> {
            val intent = Intent(this, Add::class.java)
            startActivity(intent)

        }
        R.id.ViewThat_delete -> {
            delete()
        }
        R.id.ViewThat_Download -> {
            enablePersistence()
            download()


        }


    }
    return super.onOptionsItemSelected(item)

}

private fun enablePersistence() {
    FirebaseDatabase.getInstance().setPersistenceEnabled(true)
}

在文档中它与此非常相似,我真的不知道如何解决此错误。

1 个答案:

答案 0 :(得分:1)

如错误消息所述,您需要在对数据库进行任何其他调用之前启用持久性。常用的方法是将呼叫放入您的主要活动的onCreate中,或放入Application的子类中,或放入ContentProvider中。