问题描述
我正在尝试将我的iOS应用上传到App Store。 它失败并显示以下错误:
错误ITMS-90046:“无效的代码签名权利。您的应用程序捆绑包的签名包含iOS上不支持的代码签名权利。特别是,密钥'com.apple.developer.associated-domains'中的值'*'不支持Payload / yaka.app / yaka'。“
我不理解此错误,因为我的Entitlements.plist文件不包含'*':
<?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.associated-domains</key>
<array>
<string>applinks:yakaweb.yaka-etp.fr</string>
</array>
</dict>
</plist>
要了解其价值,请知道该应用是由AppCenter构建的。
日志显示:
构建解决方案配置“发布| iPhone”。
我有以下配置:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
<DebugType>none</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\iPhone\Release</OutputPath>
<DefineConstants>__IOS__;__MOBILE__;__UNIFIED__;STACKVIEWINSCROLLVIEW</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
<MtouchArch>ARMv7,ARM64</MtouchArch>
<CodesignKey>iPhone Distribution: blabla (XXXXXXXXX)</CodesignKey>
<MtouchLink>Full</MtouchLink>
<CodesignProvision>iOS Distribution</CodesignProvision>
</PropertyGroup>
如何诊断此问题?
编辑1:我使用following command从AppCenter生成的IPA文件中获取权利:
codesign -d --entitlements entitlements.xml Example.app/Example
要弄清楚,当然,这是没有魔术的,嵌入文件包含'*'而不是我期望的值。
我的临时解决方法是使用fastlane sigh resign使用固定的授权文件辞职。
编辑2:可能是AppCenter问题,因为签名配置文件和证书是在内部版本中配置的。权利不是。 在Visual Studio中可以正常工作。
编辑3:通过使用新的配置文件解决。这是一个AppCenter问题。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)