同时从2个不同目标访问领域 [英] Access Realm from 2 different target at the same time

查看:32
本文介绍了同时从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个不同目标访问领域的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆