我正在开发一个ios应用程序,它使用couchbase-lite的复制功能。此复制从后台获取开始。在一个真正的设备上进行了几次测试之后,它似乎可以工作,但是当我试图在一个锁定的设备上启动这个复制时,会出现如下错误
Failed to Load DB 'DBNAME': Error Domain=SQLite Code=23 "authorization denied" UserInfo={NSLocalizedDescription=authorization denied}
error opening!: 23启动应用程序时,我执行以下操作来创建管理器
var error:NSError?
let options:CBLManagerOptions = CBLManagerOptions(readOnly: false, fileProtection: NSDataWritingOptions.DataWritingFileProtectionCompleteUntilFirstUserAuthentication)
let poptions:UnsafePointer<CBLManagerOptions> = UnsafePointer<CBLManagerOptions>.init(UnsafeMutablePointer<CBLManagerOptions>.alloc(1).initialize(options))
manager = CBLManager(directory: CBLManager.defaultDirectory(), options: poptions, error: &error)有什么办法解决这个问题吗?只有当iphone被锁定时,才会出现此错误!
谢谢。
发布于 2016-02-03 14:07:14
问题已解决,请参见以下对cblmanager的正确初始化:
var error: NSError?
let cbloptions = CBLManagerOptions(readOnly: false, fileProtection: NSDataWritingOptions.DataWritingFileProtectionNone)
let cblpoptions=UnsafeMutablePointer<CBLManagerOptions>.alloc(1)
cblpoptions.initialize(cbloptions)
manager = CBLManager(directory: CBLManager.defaultDirectory(), options: cblpoptions, error: &error)https://stackoverflow.com/questions/35149668
复制相似问题