Несколько сертификатов / профилей обеспечения в одном Xcode Organizer? - PullRequest
15 голосов
/ 10 февраля 2011

Здесь есть несколько похожих вопросов, но ни один не смог ответить на мой основной вопрос:

Возможно ли иметь два отдельных сертификата разработчика в цепочке для ключей и два соответствующих профиля распространения в Организаторе?

У меня есть собственный (рабочий) сертификат разработчика и профиль обеспечения для моих собственных приложений iPhone.Теперь я закончил проект для клиента и хотел бы использовать его учетную запись разработчика / сертификаты / профили обеспечения, чтобы отправить свое приложение в магазин приложений на своем аккаунте.

Возможно ли это вообще?

Пока что я скачал и установил его сертификаты, и они отображаются в моей цепочке для ключей, и я установил его профиль обеспечения в Организаторе, но Организатор говорит мне: «В вашей цепочке для ключей не найдена действительная подпись, соответствующая этому профилю. ".Аналогично, сборка архива завершается неудачно.

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

Спасибо залюбая помощь!

Ответы [ 3 ]

23 голосов
/ 10 февраля 2011

Да. Я несколько раз производил сборки проектов приложений для клиентов, используя их сертификат распространения.Не нужно использовать их сертификат разработчика.Здесь есть много вещей, которые могут пойти не так, если у вас есть доступ к учетной записи клиента, вы можете перейти на портал инициализации и проверить:

  • убедитесь, что идентификатор пакета внастройки проекта в точности соответствуют идентификатору приложения на портале обеспечения iOS (обычно com.company.appname)

  • убедитесь, что профиль обеспечения распространения в магазине приложений помечен как «действительный» и отображается подсертификат распространения.

  • убедитесь, что конфигурация сборки магазина приложений в xcode ссылается на сертификат распространения клиента.

  • откройте свою цепочку ключей и убедитесь, чтоСертификат распространения клиента также имеет свой закрытый ключ.Это может быть проблемой, это та часть, которая обычно не учитывается.Клиент должен экспортировать свой закрытый ключ для своего дистрибутива и отправить его вам в файл .p12 вместе с паролем к файлу .p12.Сертификат dist нельзя использовать для подписи приложения без закрытого ключа!

  • иногда просто выход из Xcode и перезапуск помогают.

5 голосов
/ 06 июля 2012

См. Это решение для дублирования сертификатов: http://tapadoo.com/2012/certificates-magically-re-appearing-in-your-keychain-try-this/

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

1 голос
/ 16 марта 2017

ЛЕГКИЙ РЕЖИМ

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

  • Войдите в систему https://developer.apple.com
  • перейдите на Сертификаты, идентификаторы и профили
  • внизу слева: Профили обеспечения
  • Удалить дубликаты / недействительные профили (в моем случае у меня был только один, но он был недействительным)

Примечание: , есливы пытаетесь экспортировать архив, вы можете оставить окно экспорта открытым, удалить a подготовительный профиль , затем нажать «повторить попытку» или что-то еще, что кнопка говорит ,Это избавит вас от необходимости повторно архивировать снова и снова

# xcode8.2.1 # osx10.11.6

...