Я получаю конфликтующие настройки параметров настройки при попытке архивирования для отправки приложения iOS
Теперь я пытаюсь Продукт > Архивировать приложение iOS для отправки. Однако я получаю следующие ошибки:
AppName имеет конфликтующие настройки настройки. AppName автоматически подписывается для разработки, но вручную указывается идентификатор подписи кода iPhone. Задайте значение идентификации подписи кода iPhone Developer
в редакторе настроек сборки или переключитесь на ручную подпись в редакторе проекта. `
Подписание кода требуется для типа продукта "Приложение" в SDK "iOS 10.1"
Ситуация не изменится, даже те, что я повторил весь процесс, чтобы воссоздать сертификаты iOS или профиль подготовки.
Я устанавливал как iOS Distribution
в TARGETS > Code Signing Identity > Release > Any iOS SDK
. Когда я изменил настройку как iOS Developer
здесь и изменил настройку в PROJECTS > Code Signing Identity > Release > Any iOS SDK
как iOS Distribution
, мне удалось архивировать. Мне интересно, нужно ли устанавливать в iOS Distribution
в целевом редакторе или нет. И если это обязательно, пожалуйста, сообщите мне, как я могу обойти эту ошибку.
Моя версия XCode - 8.1.
Ответы
Ответ 1
У меня была такая же ошибка, но я уже проверил "Автоматически управлять подписанием".
Решение заключалось в том, чтобы снять флажок, затем снова проверить его и повторно выбрать команду. Xcode затем исправил все, что вызывало проблему самостоятельно.
Ответ 2
У меня была та же проблема, я заметил, что если вы хотите выпустить свое приложение iOs и опубликовать его в App Store, вам вообще не нужно указывать "Идентификационные данные подписи кода" в качестве выпуска, просто сохраните его как Разработчик.
Зайдите в Ваш проект → Настройки сборки → Идентификация подписи кода и предоставьте все это разработчику iOs.
![enter image description here]()
Ответ 3
Для тех, кто поступает из Ионы или Кордовы, вы можете попробовать следующее:
Откройте файл yourproject/platforms/ios/cordova/build-release.xcconfig
и измените его:
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
Ответ 4
Ты передумал это. Этот процесс значительно улучшен и чрезвычайно прост в Xcode 8. Воспользуйтесь этим фактом.
Шаг первый. Ни в коем случае не фигурируйте или не создавайте, не пытайтесь установить параметры подписи кода в настройках сборки. Не подходите к ним. Вы полностью испортите это. Вместо этого отредактируйте цель и выполните всю работу в области "Общие". Лучший подход: настройте автоматическое подписание кода - просто введите свою команду и установите флажок, например:
![введите описание изображения здесь]()
Шаг второй. Убедитесь, что у вас есть идентификатор распространения iOS (сертификат). Вы можете проверить это в разделе "Настройки Xcode" > "Учетные записи", "Просмотреть детали". В это время было бы неплохо пойти в центр-член и получить мобильное приложение App Store для этого приложения, а также загрузить и установить его.
Шаг третий. Выберите "Generic iOS Device" в качестве своего пункта назначения и выберите "Продукт" > "Архив". Приложение будет скомпилировано, архив будет создан, и теперь вы готовы отправить в App Store.
Ответ 5
Если вы получаете что-то вроде этого:
Приложение имеет конфликтующие настройки предоставления. Приложение автоматически подписывается, но идентификатор профиля обеспечения был указан вручную. Установите значение профиля обеспечения "Автоматически" в редакторе параметров сборки или переключитесь на ручную подпись в редакторе проекта.
затем убедитесь, что у вас есть пустая опция PROVISIONING_PROFILE в настройках целевой сборки:
![enter image description here]()
Ответ 6
Не забудьте сделать это,
Выберите Проект → Настройки сборки. Ищите PROVISIONING_PROFILE и удаляйте всю чушь.
Ответ 7
Если вы из ионического мира. Вы можете получить ошибку "Подписание кода конфликта", когда вы находитесь на стадии "архив", как показано ниже:
... автоматически подписывается для разработки, но конфликтующий код Подпись для идентификации iPhone Распределение указано вручную. Задавать значение идентификатора подписи кода для "iPhone Developer" в сборке редактор настроек или переключиться на ручное подписание в редакторе проекта. Подписание кода требуется для типа продукта "Приложение" в SDK "iOS" 10.x
В этом случае перейдите к разделу "Настройки сборки/подписи", "Идентификация подписи кода" и выберите оба варианта как "Разработчик iOS", а не "Распространение".
Перейдите в меню: Продукт/Архив снова, тогда проблема будет исправлена.
Ответ 8
Для тех, кто прибывает из Ionic или Cordova, вы можете попробовать следующее: Отключите ваши устройства ios от компьютера до того, как ios cordova build ios --release
(похоже, что оно меняет целевое устройство для подписи xcode).
Ответ 9
Перейдите к настройкам сборки, найдите идентификатор подписи кода и установите значение Any iOS SDK для iOS Developer:
![enter image description here]()
Ответ 10
Единственное решение сработало для меня:
- Закрыть проект Xcode
- Используя поиск, перейдите в папку проекта
- Щелкните правой кнопкой мыши на .xcodeproj и выберите "Показать содержимое пакета".
- Щелкните правой кнопкой мыши на project.pbxproj, перейдите в "Открыть с помощью" и выберите TextEdit.
- Теперь найдите ваш экземпляр профиля ProvisionId, указанный в сообщении об ошибке.
- Удалите все найденные тексты и дайте очистить профили обеспечения.
- Сохранить и закрыть
- Открыть Xcode
- Включить автоматическое управление подписью
Наслаждайтесь! Надеюсь, это будет полезно!
Ответ 11
В моем случае я установил "автоматический" вариант в настройках сборки.
![enter image description here]()
Ответ 12
Попробуйте одно из следующих
1. Удаление и добавление платформы ios и перестройка проекта для ios
ionic cordova platform rm ios
ionic cordova platform add ios
ionic cordova build ios --release
2. Изменение настроек сборки Xcode
Решение состояло в том, чтобы снять его, затем проверить еще раз и снова выбрать команду. Затем Xcode самостоятельно исправил все, что вызывало проблему.
3. Измените следующий код в платформе
Это не имело никакого смысла для меня, так как я настроил проект на автоматический вход в xcode. Как и вы, проверка и снятие флажка не сработали. Но затем я прочитал последний путь к файлу и следовал по нему. Путь к файлу: APP> Платформы> ios> Cordova> build-release.xconfig
И в этом файле iPhone Distribution явно установлен для CODE_SIGN_IDENTITY.
Изменить:
CODE_SIGN_IDENTITY = iPhone Distribution
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution
Для того, чтобы:
CODE_SIGN_IDENTITY = iPhone Developer
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer
Ответ 13
Для меня измените Code Signing Identity
на все iOS Developer
для обоих Debug
и Release
.
И от Code Signing Style
до Automatic
.
![enter image description here]()
Ответ 14
Я долго боролся, перепробовал все предложенные решения. Ничто не работает для меня.
Затем я обнаружил проблему: в конце вкладки "Параметры сборки" были "Определенные пользователем настройки" для "PROVISIONING_PROFILE". Я удаляю его как для настройки проекта, так и для сборки цели. Тогда автоматическая подпись работала отлично.
Я надеюсь, что это поможет кому-то еще. :)
Ответ 15
Найдите файл .xcodeproj и откройте его в текстовом редакторе.
Найдите поля ниже и сделайте их такими
CODE_SIGN_IDENTITY = "Разработчик iPhone"; "CODE_SIGN_IDENTITY [sdk = iphoneos *]" = "Разработчик iPhone";
PROVISIONING_PROFILE = "";
PROVISIONING_PROFILE_SPECIFIER = "";
Ответ 16
В моем случае мне пришлось зайти на сайт Apple Developer и сбросить список устройств.
Похоже, что теперь они требуют, чтобы вы делали это каждый год при продлении подписки, прежде чем сможете добавлять новые устройства и генерировать сертификаты.
Ответ 17
У меня была та же проблема. Моя проблема была исправлена путем поиска "профиля обеспечения" в настройке сборки расширения общего ресурса.
Тогда там было два поля "Профиль обеспечения", одно обычное и одно устаревшее. Обычный был на Автоматическом, но устаревший не был. Изменение этого на Автоматическое тоже исправило мою ошибку.
Ответ 18
Использование Xcode 10: ни одно из других решений здесь не сработало для меня.
![This error appears to be something you can't fix in Xcode 10]()
Мне пришлось вернуться к Xcode 9, чтобы решить эту проблему, а затем обновить обратно до Xcode 10, чтобы я мог запустить свое приложение на iOS 12 на устройстве без эмулятора.
Любые другие решения, найденные в Переполнении стека или где-либо еще, используемые в Xcode 10, отправили меня в бесконечный цикл инициации конфликтов или проблем с подписанием сертификатов. Кажется, что подпись нарушена в Xcode 10, используете ли вы автоматический метод или выбираете вручную профили обеспечения и сертификаты.
Вы можете вернуться к Xcode 9, сначала удалив Xcode 10 из папки "Программы". Затем установите Xcode 9, используя файл .xip, указанный на этой странице разработчиков Apple.
В Xcode 9 используйте опцию автоматической сборки. Возможно, вам придется снять флажок "Автоматически управлять подписью" и повторно выбрать его, а также вам может потребоваться отозвать существующий сертификат на developer.apple.com.
После того, как вы получите приложение для успешной сборки в Xcode 9, вы можете обновить его до Xcode 10 с помощью App Store. После повторного открытия приложения в Xcode 10 все по-прежнему работало. Возможно, вам не нужно это делать, но мне нужно было сделать это для iOS 12, для которой требуется Xcode 10.
Ответ 19
Для меня я перетащил dump_syms
файл dump_syms
и кучу скриптов в свою цель сборки, когда я вручную установил Firebase SDK. Удаление тех из моей цели и проекта решило проблему.
Ответ 20
Я открыл файл проекта в текстовом редакторе "Атом", затем я искал идентификатор профиля обеспечения и удалил его.
Ответ 21
Измените свой кодовый знак в сертификате раздачи.
Ответ 22
После обновления до Xcode 8.3.2 у меня была такая же ошибка с проектом Cordova. Мне нужно было обновить Кордову (v7.0.0) и платформу iOS (v4.4.0) для подписи кода для работы.
Ответ 23
Вам необходимо добавить производственный сертификат и (или) загрузить его из своего компонента разработки
![введите описание изображения здесь]()
Ответ 24
Убедитесь, что "Идентификатор комплекта продукта" в названии настроек сборки соответствует фактическому идентификатору комплекта. Это сработало для меня.
Ответ 25
Для меня мне нужно переключиться с автоматического на ручной и переключиться на автоматический, та же ошибка. Переключитесь на ручное управление, измените эти профили инициализации и настройки подписи кода, а также создайте и получите сообщения об ошибках и вернитесь к автоматическому режиму, тогда это будет просто успех.
Ответ 26
У меня была такая же проблема. Я понял, что это потому, что я использовал xcode, когда я его использовал. Поскольку обновления не были установлены правильно, это привело к появлению этих ошибок. Единственное, что исправило это, было выйти из xcode и снова открыть его. Когда я снова открыл его, мне предложили установить обновления. После установки обновлений ошибки исчезли.
Ответ 27
Общие → Подписание → проверить, автоматически управлять подписью и выбрать команду
Настройки сборки → Подписывание → Идентификация подписи кода → УСТАНОВИТЬ ВСЕ "IOS разработчику"
Ответ 28
Единственное, что сработало для меня.
Откройте проект → Выберите цель → Перейдите в Настройки сборки → Поиск PROVISIONING и удалите выбранные профили.