现在我试图产品>存档我的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

其他回答

找到.xcodeproj文件并用文本编辑器打开它

找到下面的字段,并使它们像这样

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

Provisioning_profile = "";

Provisioning_profile_specifier = "";

试试下面的任何一种方法

1.删除和添加ios平台和重建项目的ios

ionic cordova platform rm ios
ionic cordova platform add ios
ionic cordova build ios --release

2.更改Xcode构建设置

解决方案是取消检查,然后再次检查并重新选择团队。然后Xcode自己修复了导致问题的任何东西。

3.在平台中更改以下代码

这对我来说没有任何意义,因为我已经在xcode中将项目设置为自动签名。和你一样,勾选和取消勾选也没用。但随后我读取了最后给出的文件路径并遵循它。文件路径:APP > Platforms > ios > Cordova > build-release.xconfig

在文件中,iPhone Distribution被显式地设置为CODE_SIGN_IDENTITY。

变化:

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

To:

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

转到构建设置,搜索代码签名标识,并设置iOS开发者的任何iOS SDK值:

在更新到Xcode 8.3.2之后,我在Cordova项目中遇到了同样的错误。我需要升级Cordova (v7.0.0)和iOS平台(v4.4.0)才能进行代码签名。

这对我来说非常有效。

步骤1:

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

步骤2:

取消勾选“自动管理签名”,然后再次勾选并重新选择团队。然后Xcode自行修复导致问题的任何东西。