【问题标题】:iCloud container changes with release of iOS 8iCloud 容器随着 iOS 8 的发布而改变
【发布时间】:2023-03-06 06:22:01
【问题描述】:

自 17 日发布 iOS 8 以来,我所有的开发和部署配置文件在 Apple 开发中心都显示为无效。此外,我使用 iCloud 的所有应用程序都不会在实际设备上的 Xcode 5.1 或 6 GM 中运行。收到一条消息,说明权利与配置文件不匹配。唯一可接受的 iCloud 容器现在必须以 iCloud 开头,它不能识别已使用以前需要的 iCloud 容器命名结构存储在 iCloud 中的数据。

有什么解决办法吗?我已经在网络和 Apple 开发网站上搜索了几个小时,但没有找到任何解决方案。我不可能是唯一一个遇到这个问题的人。刚刚在 App Store 上发布了一个应用程序,现在无法更改任何代码来更新它,非常令人沮丧!

【问题讨论】:

  • 我有一个类似的问题,我什至无法构建我的项目,因为权利显然是错误的(没有一个有效的配置文件允许指定的功能:功能:iCloud。iCloud 容器: )
  • 我仍在寻找解决方案。还没有任何效果。
  • 我的问题是通过在 iCloud 功能中选择“使用默认容器”解决的。
  • 我可以在 XCode 提供的容器列表中选择旧类型容器(对应于 $(TeamIdentifierPrefix)$(CFBundleIdentifier)),但似乎更新到 iOS 8 本身会刹车,我只看到CoreData + iCloud 试图对现有商店做一些事情的无尽错误消息。一旦我删除了应用程序并从商店重新安装了 iOS7 版本 - 一切都开始按预期运行 - 来自云的数据进入了应用程序的数据库。

标签: ios xcode containers icloud provisioning-profile


【解决方案1】:

不确定这是最终答案,但我终于找到了一种在设备上的应用程序中访问旧 iCloud 信息的方法。我回到了 Xcode 5.1.1,删除了我项目中的权利文件。编辑了 iTunesConnect 上的 Development 和 Distribution 配置文件(使用现在只允许的 iCloud.xxxx 设置),下载并安装在 Xcode 5.1.1 中。我检查了 Key-Value Store:在 iCloud 功能下并单击了 Ubiquity Containers 下的 +,并确保目标对于应用程序中的每个目标都具有相同的容器 (com.companyName.AppName)。然后连接 iOS 设备并运行应用程序。出现错误,返回每个目标并单击 Capabilities - iCloud 下的“修复”。不得不多次点击修复,直到不再出现。然后再次运行应用程序,iOS 8 发布之前存储在应用程序中的先前 iCloud 数据显示在应用程序中,并且一切正常。

以上结果为每个目标生成了一个单独的权利文件,以前所有目标都只使用一个权利文件。

我还没有再次尝试使用 Xcode 6,但我终于可以通过 Xcode 5.1.1 访问我的应用程序,并且可以再次为我发布的应用程序进行修复和增强。

更新(2014 年 11 月 5 日):能够通过上述方法使用 Xcode 5 上传到应用商店进行 beta 测试,而不会出现问题。

希望这对其他人有所帮助。

【讨论】:

  • 我这样做了,但旧的 iCloud 文档不再出现。恐怕如果我使用新的 iCloud 容器命名方案 (iCloud.xxx) 提交更新,我的用户会丢失所有数据。我错过了什么?
  • 您是否能够使用 XCode 6.x 成功构建您的应用程序?
【解决方案2】:
  1. 点击Use Default Container
  2. 点击Specify Custom Containers
  3. 重新选择您的自定义容器

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-14
    • 1970-01-01
    • 2020-12-10
    • 2015-12-27
    • 1970-01-01
    相关资源
    最近更新 更多