iOS/Swift - Accessing shared DB using App Groups

Viewed 821

I use App Groups Capability to share a SQLite DB between two Apps.

Now i want to migrate to Swift from Objective-C.

To obtain the path of DB, in Objective-C i've

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];

and it works.

In Swift i've tried this way

let groupContainerURL = fileMgr!.containerURL(forSecurityApplicationGroupIdentifier: "<APP_GROUPS_ID>")

let groupContainerString = groupContainerURL.path

pathToDatabase = groupContainerString.appending(databaseFileName)

and i've declared also

let databaseFileName = "<DB_NAME>"

var pathToDatabase: String!

var fileMgr : FileManager!

But i've this error, about 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

at the start.

Where i wrong?

2 Answers
Related