【发布时间】:2017-07-24 09:36:53
【问题描述】:
我使用 App Groups 在两个应用程序之间共享 SQLite DB 的能力。
现在我想从 Objective-C 迁移到 Swift。
为了获取DB的路径,在Objective-C中我已经
NSFileManager *fileMgr = [NSFileManager defaultManager];
NSURL *groupContainerURL = [fileMgr containerURLForSecurityApplicationGroupIdentifier:@"<APP_GROUPS_ID>"];
NSString *groupContainerString = [groupContainerURL path];
NSString *sharedDB = [groupContainerString stringByAppendingPathComponent:dbFilename];
const char *dbPath = [sharedDB UTF8String];
它有效。
在 Swift 中我尝试过这种方式
let groupContainerURL = fileMgr!.containerURL(forSecurityApplicationGroupIdentifier: "<APP_GROUPS_ID>")
let groupContainerString = groupContainerURL.path
pathToDatabase = groupContainerString.appending(databaseFileName)
我也声明了
let databaseFileName = "<DB_NAME>"
var pathToDatabase: String!
var fileMgr : FileManager!
但是我有这个错误,关于 Optional Value
fatal error: unexpectedly found nil while unwrapping an Optional value
2017-07-24 11:25:09.086974 CatchTheData[7941:4022839] fatal error: unexpectedly found nil while unwrapping an Optional value
一开始。
我哪里错了?
【问题讨论】:
标签: ios swift sqlite ios-app-group