Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';无法通过应用程序扩展访问我的“CKContainer”中的任何数据-CloudKit,Swift_Swift_Icloud_Cloudkit_Ios App Extension_Bundle Identifier - Fatal编程技术网

Can';无法通过应用程序扩展访问我的“CKContainer”中的任何数据-CloudKit,Swift

Can';无法通过应用程序扩展访问我的“CKContainer”中的任何数据-CloudKit,Swift,swift,icloud,cloudkit,ios-app-extension,bundle-identifier,Swift,Icloud,Cloudkit,Ios App Extension,Bundle Identifier,我想通过应用程序扩展(更具体地说是手表应用程序)从CloudKit访问一些数据 在我的主应用程序中,我只需创建如下容器:CKContainer(标识符:“myContainerID”),然后调用私有数据库上的任何方法 在我的应用程序扩展中,我使用完全相同的代码创建了一个容器,但当我尝试调用私有数据库上的方法时,我遇到以下错误: 我还加倍检查了我是否拥有所有正确的iCloud权利 我也看到了这个问题,但我已经在使用解决方案: 谢谢你的帮助 我今天花了一整天的时间试图修复,终于成功了。我发现:云容

我想通过应用程序扩展(更具体地说是手表应用程序)从CloudKit访问一些数据

在我的主应用程序中,我只需创建如下容器:
CKContainer(标识符:“myContainerID”)
,然后调用私有数据库上的任何方法

在我的应用程序扩展中,我使用完全相同的代码创建了一个容器,但当我尝试调用私有数据库上的方法时,我遇到以下错误:

我还加倍检查了我是否拥有所有正确的iCloud权利

我也看到了这个问题,但我已经在使用解决方案:


谢谢你的帮助

我今天花了一整天的时间试图修复,终于成功了。我发现:云容器ID中的姓氏必须与产品目标ID和应用程序名称(plist文件中的CFBundleName值)匹配。这是默认情况下在info.plist中设置的方式:

<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string> 
更改完成后,您需要将新容器添加到您的应用程序ID中,并重新创建配置文件,因为它们将无效。创建新概要文件后,只需下载它们并导入Xcode/签名和功能

请注意,苹果官方文档确实表示建议使用应用程序名称,但他们从未说过这是强制性的,也是使其正常工作的唯一方法


苹果似乎已经在他们这边解决了这个问题

无论如何,谢谢你的帮助:)

iCloud.com.company.abc