Android Realm-无法在以下路径打开领域:只读文件系统

时间:2019-07-16 10:07:50

标签: android database exception permissions realm

我们在应用程序中使用Realm数据库已有一段时间,但最近我们注意到一些用户发出了一些奇怪的日志,这些日志涉及Realm无法打开实例,原因是该领域缺乏权限.lock

此问题是随机出现的,这意味着该问题是在我们代码的许多不同位置触发的,但是根本不是系统地触发的。即使在实例成功几次打开(和关闭)之后,它还是发生了。 我们无法复制它。 它发生在Android 7.0上的Samsung SMT-580上。 在我们的应用中,我们使用的是Realm 4.2.0

正如我所说,当我们尝试打开Realm实例时会发生这种情况,例如:


    Realm realmInstance = Realm.getDefaultInstance();
    try {
         RealmResults<Object> results = realmInstance.where(...).findAll();
               ...
    }
    finally {
         realmInstance.close();
    }

我们收到的错误是:

  

”无法在路径上打开领域   '/data/data/com.xxx/files/default.realm.lock'。请使用以下路径   您的应用具有读写权限。   (open(“ / data / data / com.xxx / files / default.realm.lock”)失败:只读   文件系统)(/data/data/com.xxx/files/default.realm.lock)在   /home/cc/repo/realm/release/realm/realm-library/src/main/cpp/io_realm_internal_OsSharedRealm.cpp   第101行”

我们不知道为什么会这样,为什么这个问题似乎最近才出现(我们在这部分没有做任何更改)

我们在Realm Github上发现了这个问题: https://github.com/realm/realm-java/issues/5715 但不确定是否真的有关联

0 个答案:

没有答案