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 值不允许的主要内容,如果未能解决你的问题,请参考以下文章