Android Realm: Cannot modify managed objects outside of a write transaction.

 java.lang.IllegalStateException: Cannot modify managed objects outside of a write transaction.
        at io.realm.internal.Table.throwImmutable(Table.java:653)
        at io.realm.internal.Table.checkImmutable(Table.java:522)
        at io.realm.internal.UncheckedRow.setBoolean(UncheckedRow.java:194)
        at io.realm.com_kubota_kpad_models_realmmodel_RMUserInfoModelRealmProxy.realmSet$currentImageQuality(com_kubota_kpad_models_realmmodel_RMUserInfoModelRealmProxy.java:231)
        at com.kubota.kpad.models.realmmodel.RMUserInfoModel.setCurrentImageQuality(RMUserInfoModel.kt:28)

日誌如上,解決方案是在代碼中Realm處理的部分套一層處理“ Realm.Transaction { ”

      Realm.Transaction {
                val existUserInfoBean = userCase.findUserInfoByUserId(pref?.userId!!)
                if (existUserInfoBean != null) {
                    existUserInfoBean.currentImageQuality = true
                    userCase.updateUserInfo(existUserInfoBean)
                }
            }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章