配置文件中的重复键导致构建失败:错误 MSB4018

Duplicate key in provisioning profile causes build failure: error MSB4018

我的 Xamarin 构建任务在我的 Azure Dev Ops 管道中失败:

错误 MSB4018:"DetectSigningIdentity" 任务意外失败。

error MSB4018: System.ArgumentException: 已添加具有相同密钥的项目。键:com.apple.developer.associated-域

打开构建代理上安装的供应配置文件时,我确实可以看到 com.apple.developer.associated-domains 密钥两次包含在权利字典中:

<key>Entitlements</key>
<dict>
    <key>keychain-access-groups</key>
    <array>
        <string>xxxxxxx</string>        
    </array>
    <key>get-task-allow</key>
    <false/>
    <key>application-identifier</key>
    <string>xxxxxxxx</string>
    <key>com.apple.developer.healthkit</key>
    <true/>
    <key>com.apple.developer.healthkit.access</key>
    <array>
        <string>health-records</string>
    </array>
    <key>com.apple.developer.associated-domains</key>
    <string>*</string>
    <key>com.apple.developer.team-identifier</key>
    <string>xxxxxxxxx</string>
    <key>com.apple.developer.associated-domains</key>
    <string>*</string>

</dict>

我在代理上编辑了配置文件并删除了重复项并禁用了安装配置文件任务,它工作正常。但是,此手动解决方法不适用于托管生成代理。

知道为什么会发生这种情况或如何解决吗? (我用 xxxxxxx 编辑了上面的敏感内容)。

遇到完全相同的问题。这刚刚开始发生,它出现在 12/12 或 12/13。我们的移动构建在水中死了。

要么 Xamarin 优雅地处理现在由 Apple 引起的重复,要么 Apple 解决回归并删除重复。

引用:

https://forums.developer.apple.com/message/343811#343811

https://forums.xamarin.com/discussion/146770/the-detectsigningidentity-task-failed-unexpectedly

可能相关(出现上述问题时与Developer Portal更新同时发生故障)

https://github.com/fastlane/fastlane/issues/13916

+1 我也遇到了这个问题,无法将我们的应用发布到 AppStore。堆栈跟踪的顶部如下所示:

"/Users/vsts/agent/2.144.0/work/1/s/Mobile/Mobile.iOS/Mobile.iOS.csproj" (Rebuild target) (1) -> (_DetectSigningIdentity target) -> /Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets(646,3): error MSB4018: The "DetectSigningIdentity" task failed unexpectedly. [/Users/vsts/agent/2.144.0/work/1/s/Mobile/Mobile.iOS/Mobile.iOS.csproj] /Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets(646,3): error MSB4018: System.ArgumentException: An item with the same key has already been added. Key: aps-environment [/Users/vsts/agent/2.144.0/work/1/s/Mobile/Mobile.iOS/Mobile.iOS.csproj]

这是 Xamarin.iOS 中的一个错误,由 Apple 方面的更改浮出水面。

在此处跟踪:https://github.com/xamarin/xamarin-macios/issues/5277

Apple 开发者门户端似乎已修复此问题。从我的企业帐户,我能够生成具有多种功能且没有重复密钥的开发、临时和内部配置文件。

我没有看到 Apple 关于该主题的官方通知,但我能够创建发布版本并将其成功部署到设备。