【问题标题】:iCloud set up and provisioningiCloud 设置和配置
【发布时间】:2014-08-05 00:41:20
【问题描述】:

我正在尝试在我的 iOS 应用程序中设置 iCloud,我已完成以下操作:

  1. 删除了 mac 上的所有旧证书。
  2. 在开发控制台中将 iCloud 添加到应用程序 - 创建新容器并添加到应用程序
  3. 重做开发配置并下载
  4. 安装了规定
  5. 为应用添加了 iCloud 授权

这就是一切都出错的地方......

我无法让应用再次运行,应用正在构建,但我收到一条错误消息:

您应用程序的代码签名权利文件中指定的权利与您的配置文件中指定的权利不匹配。

(0xE8008016)。

有什么想法吗??

更新:我已经设法运行该应用程序以将所有内容编程并到位,一切都已设置 iTunes Connect 结束,所有规定均有效且已同步。

现在我在验证过程中遇到错误...

有 4 个:无效的代码签名权利。您的应用程序包的签名包含 iOS 不支持的代码签名权利。具体来说,Payload 中的键 'com.apple.developer.icloud-container-identifiers' -------- 不支持

其他 3 个与其他容器类似!

【问题讨论】:

    标签: xcode ios7 certificate icloud


    【解决方案1】:

    也许这是一个迟到的评论,但我把它贴在这里以防有人因为同样的原因而苦苦挣扎。

    我最近在尝试归档时在 Xcode8 上遇到了这个问题。通常,我通过以下步骤使用 Xcode 启用 iCloud:

    1. 通过将切换设置为 ON,在我的目标中启用 iCloud inCapabilities 面板。
    2. 在会员中心我的应用程序标识符下检查iCloud 会自动变为绿色,并使用我的应用程序标识符自动创建一个 iCloud 容器。 (Apple 的系统会为我们做到这一点。)
    3. 使用我的应用标识符重新生成我的证书。
    4. 创建新的配置文件。
    5. 下载并安装新的证书和配置文件
    6. 在我的目标中General 面板的Signing(Release) 部分中选择新的配置文件。

    然后我收到如下错误:

    配置文件“iCloud 测试”不包括 com.apple.developer.ubiquity-container-identifiers, com.apple.developer.icloud-container-identifiers, 和 com.apple.developer.icloud-services 权利。 SDK“iOS 10.1”中的产品类型“应用程序”需要代码签名 SDK“iOS 10.1”中的产品类型“应用程序”需要代码签名

    最后我发现会员中心我的App Identifier下的iCloud部分有两个选项。默认情况下,Compatible with Xcode 5 被选中,但我通过选择其他选项成功。

    【讨论】:

    • 是的,你是对的,我今天早上很有趣地遇到了这个问题。 Xcode 8 很糟糕。
    • 我发现这个Entitlements Troubleshooting很有帮助。
    【解决方案2】:

    如果您只是第一次将 iCloud 添加到应用程序,或者想在使用较旧的 iCloud 容器后升级以使用 CloudKit:

    1. 转到Apple Development Center
    2. 选择证书、ID 和配置文件
    3. 使用左上角的下拉菜单在 iOS/tvOS/watchOS 或 macOS 之间切换
    4. 标识符部分下选择App IDs
    5. 从列表中选择您的应用。
    6. 向下滚动到 iCloud 并确保它已启用,并带有一个绿点。
    7. 如果未启用或有黄点,请单击页面底部的按钮以编辑并确保您已检查 iCloud 服务。
    8. 您可能还需要在 iCloud 容器 部分下创建一个容器,然后将其与此应用关联。

    【讨论】:

    • 这对我很有帮助!谢谢。
    • 感谢@JohnRamos,我刚刚更新了 Apple 修改后的网页布局,自从我最初在 2015 年初回答这个问题以来,它已经发生了变化。
    • 是的,但找出过时的指令是一个很好的挑战:D.
    【解决方案3】:

    向苹果提交报告后,发现苹果系统又没用了!

    好的,所以如果您正在创建一个新的应用程序,或者您只是将 iCloud 添加到您的应用程序中 - 您需要确保系统不会启动或创建 iOS8 云容器!

    如果确实需要将其从应用权利文件中删除,请在 Apple 开发者控制台中删除选定的容器并重新下载证书!

    再次感谢苹果!

    我因使用预发布软件而受到指责!我还没接触过Xcode 6!!!

    【讨论】:

    • 您如何使用 iOS8 或 iOS7 容器?没有在 iOS7 和 iOS8 之间切换的选项。甚至无法删除容器。
    • 没关系,我找到了解决方案。所以你应该启用 iCloud,但不要选择任何容器。
    • 又花了我几个小时的痛苦尝试,直到我找到了这个答案。非常感谢!
    • 虽然这可能晚了,但我遇到了类似的问题,但我的应用程序已经在带有 iCloud 的 iOS 7 的 App Store 中。使用 Xcode 6,一切都变得一团糟。 @zappiDev 你如何“删除选定的容器?”。我似乎无法在 Developer Portal 中执行此操作,并且我的原始容器不存在。
    • 您从您的应用程序中删除选定的容器,以阻止它们指向您不想使用的容器
    【解决方案4】:

    我做了什么: - 在权利文件中只保留 com.apple.developer.icloud-services - 在 iCloud 标记键值存储和 iCloud 文档(云套件 EMPTY)下的 Capabilities - 容器设置为指定自定义但不选择任何容器 - 这可能会在步骤下给你红色警告标志,但不要修复 - 关于配置文件开发和分发配置文件必须具有启用 iCloud 但未链接到任何容器的 App ID - 在 iCloud OLD 版本下为 Xcode 5 等设置的那些配置文件中,不是与 iCloud 容器相关的新配置文件

    【讨论】:

      【解决方案5】:

      我遇到了“将 iCloud 容器添加到您的 App ID”的错误。

      自动签名无法解决目标权利的问题。

      我什至不使用 iCloud 容器,只使用键值存储(钥匙串)。 我还在会员中心的 App Identifier 下的 iCloud 部分从“与 Xcode 5 兼容”切换到“包括 CloudKit 支持(需要 Xcode 6)”问题仍然存在。

      所以我这样修复它:

      1. 通过设置 切换到开启。
      2. 在会员中开启“包括 CloudKit 支持(需要 Xcode 6)” 中心(仍然出现同样的错误)。
      3. 在 Xcode 中的 iCloud 功能 开启 CloudKit(即使你没有 需要它)然后关闭。

      然后问题就帮我解决了!

      【讨论】:

        猜你喜欢
        • 2012-01-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多