我有一个今天扩展的应用。在appDelegate.swift中为主应用程序:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
let directory: NSURL = NSFileManager.defaultManager().containerURLForSecurityApplicationGroupIdentifier("group.Hobo.RealmDatabase")!
var config = Realm.Configuration()
config.fileURL = directory.filePathURL?.URLByAppendingPathComponent("db.realm")
Realm.Configuration.defaultConfiguration = config
return true
}
在我今天的扩展视图中:
override func viewDidLoad() {
super.viewDidLoad()
let directory: NSURL = NSFileManager.defaultManager().containerURLForSecurityApplicationGroupIdentifier("group.Hobo.RealmDatabase")!
var config = Realm.Configuration()
config.fileURL = directory.filePathURL?.URLByAppendingPathComponent("db.realm")
Realm.Configuration.defaultConfiguration = config
let realm = try! Realm()
}
当我在主应用程序中创建对象时,它会持久存储在数据库中。但是,当我尝试从todayExtensionViewController读取对象的数量时,它返回0,表示没有创建任何对象。
我很困惑,因为这两个应用程序从同一个位置获得相同的Realm数据,它不应该"分享"数据?
我使用群组在应用之间共享数据。
提前致谢!