我遇到以下错误:
错误ITMS-90046:“无效的代码签名权利。您的应用程序捆绑包的签名包含iOS上不支持的代码签名权利。特别是,键'com.apple.developer.icloud-container-environment'的值'Development' 'Payload / AppName.iOS.app / AppName.iOS'中的版本不受支持。”
“开发”甚至不在entitlements.plist中。 iCloud认证的名称虽然包含在一个字符串数组中(这在以前的上传中有效,但我不知道是什么原因导致了它的中断)。我还尝试删除所有证书和条款并重做它们。不用找了。
我也尝试了以下方法:
ERROR ITMS-90164/90046: Invalid Code Signing Entitlements
https://forums.xamarin.com/discussion/48831/tinyurl.com/oqbw7ra
https://forums.xamarin.com/discussion/58051/ios-entitlement-error-90046
建议?
编辑:
<?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.networking.wifi-info</key>
<true/>
<key>keychain-access-groups</key>
<array>
<string>$(AppIdentifierPrefix)com.PrivateAppName</string>
</array>
<key>com.apple.developer.icloud-container-identifiers</key>
<array>
<string>iCloud.com.PrivateAppName</string>
</array>
<key>com.apple.developer.ubiquity-kvstore-identifier</key>
<string>$(AppIdentifierPrefix)$(CFBundleIdentifier)</string>
</dict>
</plist>
答案 0 :(得分:0)
最终删除了iCloud,因为我找到了一种不使用它的方法。我改用secure-storage和preferences。请注意,出于任何原因,用于存储它们的密钥都必须包含应用程序标识符,否则它并不总是从设备(手机,平板电脑等)中获取。