现在我试图产品>存档我的iOS应用程序提交。然而,我得到以下错误:

AppName配置设置冲突。AppName是为开发自动签名的,但是手动指定了一个冲突的代码签名标识iPhone Distribution。在构建设置编辑器中将代码签名标识值设置为iPhone Developer,或在项目编辑器中切换到手动签名。 在SDK“iOS 10.1”中,产品类型“应用程序”需要代码签名

即使我重新尝试了整个过程来重新创建iOS证书或配置配置文件,情况也不会改变。

我在TARGETS中设置为iOS分发> Code Signing Identity > Release >任何iOS SDK。当我在这里作为iOS开发人员更改设置,并在PROJECTS > Code Signing Identity > Release > Any iOS SDK作为iOS Distribution时,我已成功归档。我想知道是否有必要在目标编辑器中设置为iOS Distribution。如果这是强制性的,请有人告诉我如何解决这个错误。

我的XCode版本是8.1。


当前回答

对于那些来自爱奥尼亚或科尔多瓦的人,你可以尝试以下:

打开文件yourproject/platforms/ios/cordova/build-release。Xcconfig和change from this:

CODE_SIGN_IDENTITY = iPhone Distribution
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution

到这个:

CODE_SIGN_IDENTITY = iPhone Developer
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer

并尝试再次运行ios cordova build ios—release来编译一个发布版本。

参考:https://forum.ionicframework.com/t/ios-build-release-error-is-automatically-signed-for-development-but-a-conflicting-code-signing-identity-iphone-distribution-has-been-manually-specified/100633/7

其他回答

对我来说唯一有效的解决方法是:

关闭Xcode项目 使用finder转到项目文件夹 右键单击。xcodeproj并选择“显示包内容” 右键单击项目。pbxproj打开“打开”,选择TextEdit 现在搜索在错误消息中指定的Provision Profile instanceId。 删除所有找到的文本,并清除Provisioning Profiles。 保存并关闭 打开Xcode 启用自动管理签名

享受吧!希望对大家有用!

对于那些来自爱奥尼亚或科尔多瓦的人,你可以尝试以下:

打开文件yourproject/platforms/ios/cordova/build-release。Xcconfig和change from this:

CODE_SIGN_IDENTITY = iPhone Distribution
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution

到这个:

CODE_SIGN_IDENTITY = iPhone Developer
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer

并尝试再次运行ios cordova build ios—release来编译一个发布版本。

参考:https://forum.ionicframework.com/t/ios-build-release-error-is-automatically-signed-for-development-but-a-conflicting-code-signing-identity-iphone-distribution-has-been-manually-specified/100633/7

对我来说,当我手动安装Firebase SDK时,我已经将dump_syms二进制文件和一堆脚本拖到了构建目标中。从我的目标和项目中删除这些就解决了这个问题。

别忘了做这个,

选择项目——>构建设置。搜索PROVISIONING_PROFILE并删除任何无意义的内容。

如果你得到这个错误

应用程序有冲突的配置设置。 App是自动签名的,但配置文件“ID”已手动指定。在构建设置编辑器中将配置配置文件的值设置为“Automatic”,或者在项目编辑器中切换到手动签名。

然后确保你在目标构建设置中有空的PROVISIONING_PROFILE选项: