• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - iCloud 权利被拒绝

[复制链接]
菜鸟教程小白 发表于 2022-12-13 13:17:49 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我已经在我的(现有)应用上工作了一段时间,以添加对 iCloud 同步的支持。我总共有 3 个版本的应用程序:

a) 普通 iPhone 版本
b) lite(免费)iPhone 版
c) iPad版

我想使用 iCloud 使所有 3 个版本/设备之间的核心数据存储同步。我已经完成了实现,并且我在设备上放置的开发版本运行良好。

昨天我决定提交iPhone版本,但被拒绝了:

Invalid Code Signing Entitlements - The signature for your app bundle contains entitlement values that are not supported. For the com.apple.developer.ubiquity-container-identifiers entitlement, the first value in the array must consist of the prefix provided by Apple in the provisioning profile followed by a bundle identifier suffix. The bundle identifier must match the bundle identifier for one of your apps or another app that you are permitted to use as the iCloud container identifier.

Specifically, value "[teamid].com.[myself].[somename]" for key "com.apple.developer.ubiquity-container-identifiers" in [my app] is not supported.

我真的不知道这些标识符应该是什么样子。在此页面上:https://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/iCloud/iCloud.html#//apple_ref/doc/uid/TP40007072-CH5-SW1他们说我的其他应用程序的容器......我是否必须为我的应用程序的 3 个版本添加 3 个容器?到目前为止,我在 project/targets/summary/entitlements 下配置:

[x] iCloud 键值存储:com.[myself].[somename]
iCloud 容器:com.[myself].[somename]

对于所有 3 个版本(相同的标识符)。我需要具体配置什么,以便所有 3 个版本都可以通过 iCloud 同步它们的核心数据存储数据库?



Best Answer-推荐答案


根据iCloud Design Guide: iCloud Fundamentals ,您所有共享 iCloud 容器的应用程序都可以使用单个 iCloud 容器来实现(如果您愿意的话)。这里要注意的是,主(第一个)容器 ID 必须是您的当前正在开发的应用程序Bundle ID,或 Bundle ID 您之前提交的任何应用(共享相同的团队 ID)。

我举个例子,

让我们假设您的应用常规 iPhone 应用 (a) 有一个 Bundle ID com.yourteam.iphoneapp 并且它是您首先提交并且可用的那个在应用商店。然后,您还必须为所有其他版本提供与主要 iCloud 容器 ID 相同的 ID。

这是上述文档中的相关部分:

In the Xcode target editor’s Summary tab, you can request access to as many ubiquity containers as you need for your app. For example, say you provide a free and paid version of your app. You’d want users, who upgrade, to retain access to their iCloud documents. Or, perhaps you provide two apps that interoperate and need access to each other’s files. In both of these examples, you obtain the needed access by specifying a common ubiquity container and then requesting access to it from each app.

  1. Pick one of your iCloud-enabled apps to serve as the primary app for the common ubiquity container. The app you pick can be the current one you are developing, or another app of yours submitted for distribution in the App Store and whose entitlements use the same team ID.

关于ios - iCloud 权利被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10234289/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap