Подтвердить что ты не робот

Xcode 6 beta 2 выпускает экспорт .ipa: "У вашей учетной записи уже есть действительный сертификат распространения iOS"

У меня возникли проблемы с экспортом приложения для Ad Hoc Distribution на Xcode 6 beta 2:

Failed to locate or generate matching signing assets

При экспорте моего проекта для разработки ad hoc на Xcode 6 я получаю это предупреждение. Я попытался экспортировать его на Xcode 5 и не имел никаких проблем при сохранении .ipa. Кто-нибудь тоже испытывает эту проблему?

4b9b3361

Ответ 1

Это то, что сработало для меня.

  • На моей машине я сохранил как Xcode 5, так и Xcode 6 beta.

  • Из Xcode 6 beta, Архивируйте проект. Закройте Xcode 6.

  • Откройте Xcode 5, перейдите в Organizer и экспортируйте как Ad Hoc с соответствующим профилем подготовки.

Что это!

Ответ 2

У меня была такая же проблема два дня назад. Оказывается, проблема была:

  • У меня есть собственный сертификат распространения дистрибутива с соответствующим личным ключом
  • У меня есть сертификат дистрибутива корпоративного разработчика моего клиента без закрытого ключа
  • Я пытаюсь создать корпоративный дистрибутив для моего клиента
  • Xcode бросает на меня туманную ошибку: у вашей учетной записи уже есть действительный сертификат распространения iOS

Решение: получить закрытый ключ для учетной записи предприятия моего клиента. Возможны 2 варианта:

  • Попросите клиента предоставить учетные данные для доступа к его учетной записи разработчика предприятия на веб-сайте Apple. Отмените старый сертификат и заново создайте его. Вы создадите секретный ключ в этом процессе. BEWARE: отмена сертификата корпоративного распространения делает недействительными все приложения, которые были подписаны и развернуты с этим сертификатом (официальная информация).
  • Попросите вашего клиента экспортировать свой закрытый ключ из своего приложения Keychain Access в файл *.p12 и отправить его вам с паролем. Вы не можете загрузить существующий закрытый ключ с веб-сайта Apple. Единственный способ получить это - спросить своего клиента. Я сделал это, и он, и я смог наконец сделать пакет.

Как узнать, есть ли у вас закрытый ключ для сертификата: Откройте приложение Keychain Access. Выберите сертификаты. Найдите свой сертификат. Если вы видите маленький серый треугольник в левой части сертификата, откройте его, и вы увидите свой закрытый ключ. Нет треугольника = нет закрытого ключа.

How to find if you have a private key for certificate

Ответ 3

У меня была та же проблема, мне пришлось использовать инструмент командной строки "xcodebuild" в качестве обходного пути, только с установленным Xcode 6 (не нужно было переустанавливать Xcode 5).

http://www.thecave.com/2014/09/16/using-xcodebuild-to-export-a-ipa-from-an-archive/

Пример:

xcodebuild -exportArchive -archivePath $projectname.xcarchive -exportPath $projectname -exportFormat ipa -exportProvisioningProfile "Provisioning Profile Name"

Ответ 4

В моем случае решение проблемы заключалось в удалении всех сертификатов распространения со своей учетной записи Apple Developer. Затем Xcode снова смог создать сертификаты разработки и распространения, и это сделало трюк.

Ответ 5

Я получаю решение без обновления сертификата:

1 - Архивировать цель с помощью соответствующего идентификатора подписи кода и профиля предоставления

2 - Правая кнопка в созданном файле в Organizer → Показать в Finder

3 - Правая кнопка в файле xcarchive → Показать содержимое пакета

4 - Там, в Finder, перейдите к Products/Applications/

5 - Загрузите файл Продукты/Приложения/имя приложения в iTunes

6 - Когда приложение появится в iTunes, щелкните его правой кнопкой мыши → Показать в Finder. Это файл ipa

7 - Отправьте этот ipa через App Loader 3.0

Я не думаю, что это долговременное решение, но не хочу удалять мои сертификаты.

Ответ 6

НАКОНЕЧНО РЕШАЕМ ЭТО!!

1) Создайте новый производственный сертификат через developer.apple.com, который требует, чтобы вы использовали Keychain Access для создания нового закрытого ключа на вашем компьютере.

2) На том же портале разработчиков откройте профиль распределения Provisioning Profile, используемый в этом приложении, и выберите новый производственный сертификат, который вы только что создали. Создайте резервную копию, затем загрузите ее и запустите.

3) Запустите приложение, запишите его, а затем экспортируйте архив.

альт

Мне потребовались дни, если не недели, чтобы понять, я надеюсь, что это поможет вам.

Ответ 7

Создайте новый сертификат дистрибутива iOS и выберите "Производство" > "Магазин приложений" и "AdHoc". Также не забудьте изменить Target > Build Settings > Code Signing all to iOS Distribution. (Но после того, как я создал ipa, вернул его в iOS Developer) Только это решило мою проблему.

Ответ 8

Сегодня я столкнулся с такой же проблемой с Xcode 6.1.1

Когда я попытался добавить сертификат распространения iOS через Xcode, я получил ошибку. Уже было несколько выпущенных сертификатов распространения в Центре-члене, и я не хотел их аннулировать, потому что, если они используются для распределения Ad Hoc в среде Enterprise, это также приведет к недействительности приложений, установленных на устройствах (по крайней мере, это то, что я 'read read).

Что я сделал:
 1. Через Keychain Access сформирован запрос на получение сертификата от центра сертификации. И сохранил запрос в файл,
 2. Зашел в раздел "Сертификаты центров сертификатов членов" и запросил новый сертификат производства "App Store и Ad Hoc", который запросил файл с шага 1,
 3. Загрузили новый сертификат и при импорте в Keychain Access теперь у него был закрытый ключ.

Послесловие я очистил Xcode, перезапустил его, проверил, что в моей учетной записи профиль виден и построил новый Архив. И теперь я смог проверить архив.

Теперь, если я попытаюсь запросить новый сертификат "App Store и Ad Hoc", этот параметр будет недоступен для меня, и я полагаю, это связано с тем, что у моей учетной записи уже есть сертификат. Если это ваш случай, вам, скорее всего, понадобится аннулировать предыдущий сертификат, прежде чем вы сможете выпустить новый. Вот почему Apple рекомендует создать резервную копию своего сертификата. Но очень вероятно, что вам не нужно будет аннулировать все производственные сертификаты, поскольку у меня уже есть число из них в профиле.

Надеюсь, это поможет кому-то:)

Ответ 9

Apple изменила способ создания Ad Hoc. Теперь вы не можете создавать сборки Ad Hoc, используя dev cert. Вместо этого следует использовать сертификат распространения с профилем подготовки "Ad Hoc".

Ответ 10

Я полагаю, что фактическая причина, по которой вы оказались на этом экране, заключается в попытке получить файл .ipa для распространения среди ваших тестировщиков и клиентов. В Xcode 6 для получения файла .ipa вы можете использовать старый метод генерации iPA:

  • Выберите организатор в Xcode. На вкладке "Архивы" выберите архив, iPA файл которого вам нужно создать.
  • Щелкните правой кнопкой мыши и выберите опцию "Показать в Finder"
  • Вы увидите файл .xarchive. Щелкните правой кнопкой мыши и выберите "Показать содержимое пакета"
  • Вы увидите папки: dSYMs, Info.plist и продукты.
  • Откройте продукты > Приложения, и вы увидите свой файл .app.
  • Перетащите этот файл .app в iTunes на Mac.
  • Ваш .app файл будет указан в разделе "Мои приложения" в iTunes.
  • Щелкните правой кнопкой мыши на своем приложении и выберите "Показать в Finder".

Теперь у вас есть .ipa файл, который вы можете отправить своим тестировщикам для тестирования. Надеюсь, это поможет.

Ответ 11

Были изменения в способе, которым яблоко управляет нашим частным и открытым ключом. Предыдущий способ совместного использования учетной записи на двух машинах был 1.загрузка ресурсов
Сертификат 2.export/checkout

установите их как на другом Mac

но теперь вам не нужно делать то, что вы экспортируете всю свою учетную запись.
1.XCode → настройки → учетная запись (выберите учетную запись) внизу слева есть возможность экспортировать enter image description here вам будет предложено указать пароль, который будет необходим при импорте в другую систему. Файл .developerprofile будет загружен по вашему выбору.

2.загрузите его на другой Mac, и когда вы увидите приглашение, у вашего устройства уже есть подлинный идентификатор подписи, нажмите import Profile Profile и импортируйте этот файл .developerprofile. enter image description here введите пароль при появлении запроса.

получил помощь отсюда

Ответ 12

Я решил его выполнить следующие шаги:

1) в вашей учетной записи разработчика Apple: Создать новый Сертификат производства Выберите App Store и Специальный вариант

2) в вашей учетной записи разработчика Apple: создайте новый профиль обеспечения с вашим текущим идентификатором пакета и сертификатом, созданным на первом шаге.

3) в вашем xcode:

  • Выберите цель
  • На вкладке "Настройки сборки" в зоне "Подписание кода"
  • В подзоне Code Signing Identity - Release
  • Установите новый сертификат распространения (ad hoc)
  • В профиле Provisioning Profile - укажите новый профиль подготовки (ad hoc)

Кажется, что xcode 6 теперь требует наличия специального сертификата распространения, чтобы экспортировать ваш IPA.

enter image description here

Ответ 13

Сегодня у меня такая же проблема, и я нашел хорошее решение, я думаю.

Прежде всего, есть что-то ненормальное:

enter image description here

нормаль:

enter image description here

и в цепочке ключей:

enter image description here

нормаль:

enter image description here

то я понимаю, что мне не хватает правильного профиля подготовки, который содержит правильный сертификат распространения iOS.

Наконец, мое решение: использовать файл CertificateSigningRequest.certSigningRequest для создания нового сертификата распространения iOS и использовать новый сертификат распространения iOS для создания нового профиля подготовки.

Примечание. Я не удаляю старый профиль сертификации и подготовки, потому что мой коллега хорошо работает с ними. Это влияет на приложения, которые я уже опубликовал? Ответ НЕТ. Я просто меняю сертификат подписи кода, а какой-то важный сертификат типа push notification certificate связан с идентификатором приложения:

enter image description here

Так что не беспокойтесь об этом.

Надеемся, что это будет полезно.

Ответ 14

Как отметил комментатор, это оказалось для меня и для других решением:

Я удалил и повторно загрузил все мои требуемые сертификаты вместе с ключами, необходимыми для создания, и я смог пропустить эту ошибку.

Ответ 15

Я отменяю свои сертификаты на производство и запрашиваю другой, решая эту проблему. Возможно, вам нужно перезапустить xcode.

Ответ 16

Я просто столкнулся с этим после обновления с Xcode 5 до 6.

В моем случае создание нового производственного сертификата, а затем воссоздание профиля распределения ресурсов для моего приложения сделало трюк.

Ответ 17

В официальном последнем Xcode 6.0 это произойдет, если вы случайно создали запись в своем файле прав, которая имеет такой ключ:

com.apple.security.application-groups

Я не уверен, что Xcode автоматически создал его по умолчанию. Но удаление этого ключа решило мою проблему. Мне не нужно было воссоздавать какие-либо сертификаты. Это не моя проблема.

Ответ 18

Я решил это, просто обновив профиль подготовки на портале разработчиков (в моем случае профиль App Store) и добавив на свой компьютер через iPhone Configuration Utility. Я не хотел связываться с сертификатами и успешно избегал этого.

Я заметил это сообщение об ошибке, зарегистрированное из Xcode в моей консоли:

Ни один из действительных профилей подготовки не разрешил указанные права: идентификатор приложения, бета-отчеты-активные, группы ключей-доступа.

После загрузки нового профиля подготовки отсутствовал beta-reports-active = true, и Xcode подписал сборку.

Ответ 19

Мое решение: удалить единственный сертификат производства iOS, который я использую, и создать его снова. Для этого вы должны создать новый профиль Provisioning, назначающий только что созданный сертификат.

то я снова делал процесс Архива и работает!

Ответ 20

Кроме того, я обнаружил, что Xcode Accounts входят в игру -

enter image description here

Оказалось, что у меня действительно есть сертификат распространения на моей личной учетной записи (mobilology), поэтому я временно удалил эту учетную запись из раздела "Аккаунты" (вы можете оставить только эту учетную запись, распространение от).

Внезапно процесс подписания/архивирования работает!

Ответ 21

Шаг 1: -Войти в свою учетную запись разработчика Apple

Шаг 2: -Выберите сертификаты

Шаг 3: -Удалить, если существует несколько сертификатов распространения

Шаг4: -После повторного архивирования (если ошибка все еще существует, отмените все сертификаты и создайте новый сертификат распространения и отредактируйте свои профили предоставления.)

Ответ 22

Я думаю, что это ошибка от Xcode. чтобы он работал, мне нужно удалить фактический профиль предварительного распределения, и мне пришлось создать новый предварительный профиль распространения из devcenter. Это работает от меня

Ответ 23

Я также столкнулся с той же проблемой, я использовал сертификат разработки вместо Adhoc. Проблема устранена после использования сертификата Adhoc.

Ответ 24

Удалите сертификат ios Distribution с сайта разработчика Apple и зарегистрируйте ios Distribution с файлом certSignReq. Работает для меня всегда. Ваши другие приложения не будут затронуты. По крайней мере, в моем случае это никогда не делалось.

Ответ 25

В моем случае я сгенерировал новый профиль распространения и добавил его в XCode, затем попытался отправить сборку. Оказывается, все, что мне нужно было сделать, чтобы избавиться от этого сообщения, - это перезапустить XCode и снова попытаться отправить. Работали.

Ответ 26

В моем случае я получил сообщение об ошибке при попытке экспорта и сборке AdHoc из Organizer. Я сделал две вещи, каждая из которых могла устранить проблему:

1) Экспортировал существующий сертификат, который, как он утверждал, у меня не было из моей связки ключей, удалил его из брелка, повторно импортировал.

2) Создал специальный сертификат распространения, обновил учетную запись XCode, чтобы получить новый профиль предоставления распределения.

После этого я смог экспортировать тот же самый архив в сборку AdHoc. Я действительно думаю, что это был только тот факт, что мне не хватало ad-hoc-дистрибутива, нацеленного на то, что специфицировал bundleID, который привел к запутанию XCode.

Followup: архив, который я создал ранее, не работал, мне пришлось его сгенерировать. Это было связано с тем, что при выборе архива и выборе экспорта Ad-Hoc выбранная учетная запись по умолчанию была неправильной учетной записью для сборки (у проекта не было учетной записи по умолчанию, выбранной при архивировании сборки).

Ответ 27

Это то, что сработало для меня (учетная запись предприятия)

Импортируйте профиль разработчика с другого компьютера, который загрузил сертификат, который мне нужен, с помощью секретного ключа.
Переименуйте пакет приложений в название предприятия (оно было названо под именем магазина приложения).
Измените название команды на вкладке "Общие" в моей команде компании - она ​​по умолчанию лишилась моей личной учетной записи разработчика!

С этими изменениями я мог бы экспортировать ipa как ad-hoc и enterprise, загрузить его на хоккейный каток и загрузить его на свой телефон