Access Realm from 2 different target at the same time(同时从2个不同目标访问领域)
问题描述
假设我想为我的共享扩展使用领域,那么问题是,当包含的应用程序正在运行时,我是否可以访问共享目标中的领域。看起来是不可能的,但能不能请有经验的人给我建议? 谢谢!推荐答案
Xcode11-SWIFT 5
为了能够从多个目标访问领域,您必须在Xcode的工作区中创建应用程序组。
在主要目标的签名&;功能选项卡中,执行以下步骤:
单击+功能
然后应用组
在新应用组部分中,单击添加容器选项
容器应具有以group开头的标识符。
确保需要访问领域的所有目标在App Group节内指定了相同的容器。
在AppDelegate中指定以下领域配置:
if var directory: URL = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: "group.com.yourappgroup.identifier") {
directory.appendPathComponent("db.realm", isDirectory: true)
let config = Realm.Configuration(fileURL: directory, schemaVersion: 1)
Realm.Configuration.defaultConfiguration = config
}
将"group.com.yourappgroup.Identifier"更改为您在Signing&;Capabilities.中指定的实际组标识符 这将告诉Realm将其自身放置在组容器中。 最后,应告知希望访问领域的每个目标在同一组容器中进行搜索。
因此,当您希望从其他目标访问领域时,请在访问之前添加相同的配置代码,仅此而已!
这篇关于同时从2个不同目标访问领域的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!