领域自定义数据库插入数据警报权限被拒绝

时间:2016-05-15 08:00:27

标签: permissions realm denied

使用Realm自定义数据库插入数据提示时

  

由于未捕获的异常'RLMException'而终止应用,原因:'XX:权限被拒绝'

但已插入数据。

我的代码:

RLMRealm *realm = [RLMRealm realmWithURL:[self dataBasePath:kRealmCustomDBName]];
realm.configuration.readOnly = NO;
NSLog(@"path = %@",realm.configuration.fileURL);
WEAKSELF
[realm transactionWithBlock:^{
    NSDictionary *dic = @{
                          kRealmPrimaryKey:[weakSelf ret64bitString],
                          kRealmAvatarData:hiSchool.avatar,
                          kRealmTitle:hiSchool.title,
                          kRealmSubtitle:hiSchool.subTitle,
                          kRealmAge:hiSchool.age,
                          kRealmDate:hiSchool.date,
                          kRealmMale:hiSchool.isMale,
                          kRealmWeight:hiSchool.weight,
                          kRealmHeight:hiSchool.height
                          };
    [HiSchool createInRealm:realm withValue:dic];
}];

1 个答案:

答案 0 :(得分:0)

首先,(如果这可能导致问题),改变已经分配给RLMRealmConfiguration实例的RLMRealm对象的属性并不是一个好的做法。在这种情况下,所有配置都在[RLMRealm realmWithURL:]内执行,因此在事后修改它可能会导致一些不稳定。在任何情况下,除非readOnly在您的代码中设置为fileURL之前设置为YES,否则这不会导致任何问题。

我能想到的另一件事是你的RLMRealm可能会格格不入。由于文件路径中存在非法字符,因此存在Realm Java instance where a similar error message occurred

我建议您清理RLMRealmConfiguration实例创建。创建一个新的fileURL实例,设置其readOnly(如果有必要),在其中设置RLMRealm个属性,然后使用[RLMRealm realmWithConfiguration:error:]创建fileURL实例。另外,请确保您的[NSURL fileURLWithString:]值是正确的文件网址(即使用Sub test() Dim i As Long, x, r As Range For i = Range("b" & Rows.Count).End(xlUp).Row To 2 Step -1 x = Mid$(Cells(i, "b"), 2) - Mid$(Cells(i - 1, "b"), 2) If x > 1 Then Rows(i).Resize(x - 1).Insert Cells(i - 1, "b").AutoFill Cells(i - 1, "b").Resize(x), 2 End If Next 创建的。)并指向您的应用具有写访问权限的目录。

祝你好运!