【问题标题】:ERROR ITMS-90046: value 'Development' for key 'com.apple.developer.icloud-container-environment' is not supported错误 ITMS-90046:不支持键“com.apple.developer.icloud-container-environment”的值“开发”
【发布时间】:2019-09-27 19:34:30
【问题描述】:

我收到以下错误:

错误 ITMS-90046:“无效的代码签名权利。您的应用程序包的签名包含 iOS 不支持的代码签名权利。具体而言,密钥“com.apple.developer.icloud-container-environment”的值为“开发”不支持在 '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>

【问题讨论】:

  • 你在项目中使用icloud吗?
  • Xamarin.essentials.preferences 和安全存储。
  • 在我的权利中,我指定了这样的环境: com.apple.developer.icloud-container-environmentProduction // 在调试模式下我评论在发布应用程序时,我取消了它的注释。
  • 我们可以查看您的 Entitlement.plist 吗?
  • 已更新。我尝试使用“Production”字符串,但没有成功。

标签: ios xamarin.forms provisioning-profile entitlements code-signing-entitlements


【解决方案1】:

最终删除了 iCloud,因为我找到了一种不使用它的方法。我改用secure-storagepreferences。请注意,无论出于何种原因,用于存储它们的密钥都必须包含应用标识符,否则它并不总是从设备(手机、平板电脑等)中获取它。

【讨论】:

    猜你喜欢
    • 2020-02-27
    • 2020-08-06
    • 2021-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-22
    • 2021-06-28
    • 1970-01-01
    相关资源
    最近更新 更多