第一个领域db可以打开加密但writeCopyToPath不能

时间:2016-04-01 06:09:22

标签: realm

我在OSX应用程序中使用Realm 0.98.6和Xcode 7.3来创建加密的域数据库,然后制作一个干净的副本放在我的包中。原始数据库随Realm Browser一起打开(在粘贴密钥后),但副本不会。

这是我用来创建两个数据库的代码。调用的例程中没有写入,只是混合了realm.addrealm.append来创建相关对象的集合:

let config = Realm.Configuration(path: realmTempFile, encryptionKey: key)
let realm = try! Realm(configuration: config)

try! realm.write {
    loadAuthors(authorFile, realm: realm)
    loadVolumes(volumesFile, realm: realm)
}

try! realm.writeCopyToPath(realmFile, encryptionKey: key)

如果我从encryptionKeyconfig中删除writecopy个参数,则两个数据库都可以使用Realm浏览器打开。

如果重要,我会在每次尝试之前使用Finder(以及相关的锁定文件)删除db文件。 (我还尝试更改名称以缓解任何临时文件。)。这两个文件之间唯一明显的区别是原始版本的7.5和6.9 MB文件大小。并且'复制'分别(即,正如预期的那样,副本略小)。

我喜欢一些建议!它是一个非常普通的< 400行的程序,可以加载数据库,以便以后在iOS和iOS中使用。 Android应用。我可以随时发送更大的文件,但它让我对我可能不知道的其他内容保持警惕...提前感谢!

0 个答案:

没有答案