供应配置文件中的重复密钥导致生成失败:错误MSB4018

时间:2018-12-15 16:20:37

标签: ios xamarin azure-devops provisioning-profile build-agent

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

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

错误MSB4018:System.ArgumentException:已添加具有相同键的项。密钥:com.apple.developer.associated-domains

打开安装在构建代理上的配置文件时,我确实可以看到两次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删除了上面的敏感内容)。

4 个答案:

答案 0 :(得分:2)

这似乎已在Apple开发人员门户网站一侧修复。通过企业帐户,我能够生成具有多种功能且没有重复密钥的开发,临时和内部配置文件。

我没有从苹果公司得到关于该主题的正式通知,但是我能够创建一个发布版本并将其成功部署到设备上。

答案 1 :(得分:1)

有完全相同的问题。它刚开始发生在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

可能相关(当上述问题开始时,在开发人员门户网站更新的同时发生故障)

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

答案 2 :(得分:1)

这是Xamarin.iOS中的一个错误,但由于苹果方面的变化而浮出水面。

在这里被跟踪:https://github.com/xamarin/xamarin-macios/issues/5277

答案 3 :(得分:0)

+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]