ios + icloud:com.apple.developer.ubiquity-container-identifiers 值不允许

Posted

技术标签:

【中文标题】ios + icloud:com.apple.developer.ubiquity-container-identifiers 值不允许【英文标题】:ios + icloud: com.apple.developer.ubiquity-container-identifiers value not allowed 【发布时间】:2015-06-21 13:31:34 【问题描述】:

我在通过应用程序加载器上传我的应用程序时遇到问题。我在 Xamarin Studio 中使用了 Archive for publishing 功能,并在应用程序加载器中打开了创建的 ipa。然后我得到以下错误:

错误 ITMS-90164:“无效的代码签名权利。您的应用程序包签名中的权利与配置文件中包含的权利不匹配。根据配置文件,捆绑包包含不允许的键值: '[ "iCloud.info.mycompany.myapp" ]' 用于 'Payload/MyApp.app/MyApp' 中的键 'com.apple.developer.ubiquity-container-identifiers'"

我的应用正在使用 cloudkit,因此我添加了一个 icloud 容器并将其与开发者门户中的应用 ID 相关联。

entitlements.plist:

...
<key>com.apple.developer.ubiquity-container-identifiers</key>
<array>
    <string>iCloud.info.mycompany.myapp</string>
</array>
<key>com.apple.developer.icloud-services</key>
<array>
    <string>CloudDocuments</string>
    <string>CloudKit</string>
</array>
...

【问题讨论】:

我遇到了同样的错误。如果您找到解决方法,请告诉我。 【参考方案1】:

真的很烦! 诀窍是打开项目的配置文件并检查字符串是什么。 但是,如果它是您尝试提交到 AppStore 的应用程序,您应该只使用与 Production 相关的字符串。 例如,我的一项权利是:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>com.apple.developer.icloud-services</key>
    <string>CloudKit</string>
    <key>com.apple.developer.icloud-container-environment</key>
    <array>
      <string>Production</string>
    </array>
    <key>com.apple.developer.icloud-container-identifiers</key>
    <array>
      <string>iCloud.[MY BUNDLE]</string>
    </array>
    <key>com.apple.developer.ubiquity-container-identifiers</key>
    <array>
      <string>iCloud.[MY BUNDLE]</string>
    </array>
  </dict>
</plist>

[MY BUNDLE] 类似于 br.com.riandesign.myproject

【讨论】:

以上是关于ios + icloud:com.apple.developer.ubiquity-container-identifiers 值不允许的主要内容,如果未能解决你的问题,请参考以下文章

更改 iOS 模拟器 iCloud 帐户

iOS模拟器中应用程序的iCloud测试

iOS:以编程方式阻止 iCloud 备份

是否需要为 iCloud Drive 更新 iOS 7 iCloud 应用程序?

带有 iOS 和 iCloud 的 SQLITE 数据库

iOS开发-iCloud的简单使用(1)-配置iCloud环境以及key-value storage的使用