Почему я получаю сообщение об ошибке «Не удалось найти или сгенерировать соответствующие ресурсы подписи» в Xcode 6?


79

Я установил семя Xcode 6 GM и впервые пытаюсь создать файл IPA. После успешного архивирования, когда я нажимаю кнопку «Экспорт», появляется окно с сообщением:

Не удалось найти или создать соответствующие активы для подписи

Xcode попытался найти или сгенерировать соответствующие активы подписи и не смог этого сделать из-за следующих проблем.

  • У вашей учетной записи уже есть действующий сертификат распространения iOS.

    Если у вас есть удостоверение подписи на другом Mac, вы можете импортировать профиль разработчика. Вы также можете отозвать текущий сертификат и запросить еще раз.

Вот скриншот ошибки:

введите описание изображения здесь

Кто-нибудь может сказать мне, как это решить?


1
у меня ничего не работает :( это единственный вариант скачать xcode 5?
Игорь Коноплянко

1
Как ни странно, «Попробуй снова» у меня сработало
Джеймс Рот

К сожалению, окончательного решения или исправления нет. Кто-нибудь знает, почему это происходит?
Аликс

1
Я также сталкиваюсь с той же проблемой xcode 7.2, но не получаю решения
matinict

Ответы:


24

В доступе к цепочке ключей -> Показать просроченные сертификаты, затем в цепочке ключей входа в систему щелкните просроченный сертификат и удалите его. У меня также был такой же просроченный сертификат в моей цепочке ключей System, поэтому я удалил его и оттуда.

-> После удаления просроченного сертификата из логина и системных цепочек ключей загрузите сертификат по ссылке ниже и откройте с помощью цепочки ключей.

Загрузите https://developer.apple.com/certificationauthority/AppleWWDRCA.cer и добавьте его в Keychain access> Certificates (срок действия которого истекает в 2023 году).

это решило мою проблему


3
Загрузка этого решения - вот что решило эту проблему для меня. Все мои сертификаты были указаны как недействительный пользователь до того, как я их загрузил.
Магнус О.

Спасибо за этот пост! Это устранило проблему в моем случае.
Джошуа

Благодаря! Для кого-то еще: вам не нужно удалять все сертификаты разработки с истекшим сроком действия, только сертификат Apple «Worldwide Developer Relations»
scosman

Работал у меня. У всех, кто сталкивался с этой проблемой, истек срок действия лицензии разработчика до продления? Это мой случай, просто было любопытно по поводу других.
ALTVisual,

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

19

Я отредактировал профиль распространения и снова загрузил его, перезапустил xcode, и он заработал.


1
То же самое и здесь, просто повторно сохранил новый профиль, установил его, а затем перезапустил. Как только я это сделал, все заработало.
warpedspeed

1
Я просто выбрал его в списке профилей обеспечения в Центре участников, выбрал редактировать, ничего не изменил и сохранил.
Джереми Хикс,

Я отзываю и создаю новый профиль распространения, скачиваю, добавляю в xcode и работаю как шарм :)
Ulysses

10

Я искал ответ на эту проблему последние 6 часов. Нет ничего удовлетворительного. Ведь никто не знает, почему это происходит. Ниже приведен способ создания .ipa через командную строку. Если это сработает, я обновлю здесь завтра.

xcodebuild -exportArchive -archivePath $ projectname.xcarchive -exportPath $ projectname -exportFormat ipa -exportProvisioningProfile «Имя профиля обеспечения»

Примечание. «Имя профиля обеспечения» - это имя, указанное в поле имени сертификата (его можно просмотреть на сайте developer.apple.com).

Это создаст .ipa.

кредит принадлежит оригинальному автору здесь

У меня этот трюк сработал.


3

Я получил то же самое в первый раз, а затем я понял, что на сайте разработчиков был новый профиль подготовки, который начинался с XC: я перезапустил xcode, и xcode автоматически нашел профиль XC:, созданный ранее, и позволил мне подписать приложение . Похоже, что перезапуск xcode и обновление подписей (после входа в систему при загрузке / проверке приложения на xcode) помогли


перезапустил Xcode, и он работает. даже в Xcode 10!
Саураб Праджапати

3

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

  1. У меня был сертификат распространения с закрытым ключом для учетной записи, к которой принадлежало приложение (если кто-то другой сделал сертификат, вы должны получить от него закрытый ключ и установить его).
  2. У меня был конкретный (не подстановочный) идентификатор приложения (как в com.mycompany.myapp).
  3. У меня был профиль обеспечения, который был создан с использованием упомянутого выше сертификата распространения вместе с упомянутым выше AppID.

Когда все это будет на месте, вы можете обновить свою учетную запись в Xcode, и вы больше не должны получать это сообщение ...


2

Это должно быть проблема с выбранной вами командой. Если вы создали новый идентификатор пакета из другой учетной записи Apple, который не добавлен в ваши xcodeнастройки, выполните следующие шаги, чтобы добавить новую команду.

Шаг 1: перейдите к настройкам xcode.
Шаг 2: Щелкните вкладку «Учетные записи».
Шаг 3: Щелкните значок (+), чтобы добавить новую учетную запись.
Шаг 4. Войдите в систему, используя учетные данные разработчика
Шаг 5: Нажмите "Готово"

2

Не знаю, почему у меня сработало "Использовать локальные ресурсы подписи"


Тоже самое. Дело в том, что когда вы выбираете команду, Xcode пытается выяснить «настройку» подписи, запрашивая портал разработчика. И по неизвестной причине этого не происходит. Последним средством в этом случае будет использование локальных подписывающих активов. Конечно, если вы уверены на 100%, значит, у вас уже есть правильная «настройка» локально.
Евгений Дубинин

1

Мне удалось решить эту проблему, переименовав имя профиля подготовки в центре участников и обновив в XCode 6.


1

У меня такая же проблема. Я был уверен, что мои настройки, сертификат и т. Д. Настроены правильно. Я создал все это на портале разработки Apple, когда был открыт мой Xcode 6.2 . После загрузки сертификата и подготовки я дважды щелкнул оба, а затем смог выбрать подпись из Xcode. Это НЕТ необходимости перезапуска Xcode до этого момента поскольку новый файл подготовки доступен для выбора из Xcode. Затем я заархивировал двоичный файл, и он открылся в Организаторе для отправки.

Но вот настоящая проблема в том, что Организатор не знает о моих настоящих активах. Итак, здесь нам нужно перезапустить Организатор (Xcode). Я должен сказать об ошибке со стороны Apple, чтобы Организатор не узнал об обновленных активах. Как и после перезапуска Организатора, я отправил приложение, и оно предложило разрешить подписать сертификат из Связки ключей .


1

Только таким образом я решил проблему: откройте приложение «Связка ключей» и выберите «Просмотр» -> «Показать просроченные сертификаты». Удалите ВСЕ просроченные сертификаты Apple! Перезапустите Xcode.

См .: Xcode не может создавать сборки распространения для представлений в App Store или корпоративных приложений -> https://developer.apple.com/support/certificates/expiration/


0

Я также столкнулся с той же проблемой при использовании Xcode 6 GM, поэтому я использовал Xcode 5.1 для создания файла ipa.


0

Это может произойти при попытке первого выпуска с новой версией Xcode на том же Mac .

В моем случае у меня были установлены как Xcode 6, так и Xcode 5.

Я решил проблему, экспортировав свой .developerprofile в Xcode 5, а затем импортировав его в Xcode 6 следующим образом:

В старом Xcode (мой был 5.1.1)

  1. Перейдите в Xcode> Настройки> Учетные записи
  2. Выберите значок шестеренки слева внизу
  3. Выберите Экспорт учетных записей.
  4. Установите файл для сохранения в удобном для вас месте
  5. Введите пароль, который вы будете использовать при импорте
  6. Выберите Сохранить

В новом Xcode (мой был 6.0.1)

  1. Перейдите в Xcode> Настройки> Учетные записи
  2. Выберите значок шестеренки слева внизу
  3. Выберите Импорт учетных записей.
  4. Выберите файл .developerprofile
  5. Введите пароль, и теперь вы сможете продолжить.

Это работает и со старого Mac на новый Mac.


Откуда мне импортировать, если нет более раннего профиля разработчика?
Аликс

0

Похоже, что если у вас есть только сертификат разработчика в вашей связке ключей, вы не сможете экспортировать сборки Ad Hoc. У вас должен быть сертификат распространения, а также профиль обеспечения распространения.


0

Для меня все, что мне нужно было сделать, это перезапустить XCode, и это сработало.


0

В XCODE 6, когда мы создаем профиль обеспечения, он должен быть типа ADHOC. Установите профиль в настройках сборки, а затем архивируйте. Я думаю, все будет работать нормально.


0

Была такая же проблема, и теперь я снова могу ЭКСПОРТИРОВАТЬ свое приложение. 1) этот ответ был очень забавным, но хорошим НЕ СЛЫШАТЬ НИКОМУ объединение с 2) ответил 19 сен '14 в 23:21 помог мне поработать на моем iPhone.

Перейдите на development.apple.com -> Certificates -> All / Production и просто удалите свой iOS Distribution . Возможно, вы удалили все сертификаты локально, и он больше не соответствует оригиналу, поэтому у вас есть это сообщение с этим изображением =) Как я уже сказал, у меня была такая же проблема. После удаления просто Архивировать и Экспортировать новый, и он сделает это за вас автоматически.

Версия 6.1.1 (6A2008a)


0

Я мог видеть свой сертификат распространения в связке ключей, но он не был подписан. Я решил это, перейдя на сайт Dev, очистив все сертификаты и профили обеспечения (да, удалив все), повторно сгенерировав сертификаты (dev и dist), загрузив и очистив старые сертификаты и импортировав новые в связку ключей. Также, если у вас есть более одного идентификатора приложения, сгенерируйте профиль распространения и загрузите его при импорте, иначе Xcode mgmgt может выбрать неправильное приложение для создания профиля (это случилось со мной). Перезапустив XCode, я убедился, что в моих приложениях в разделе «Подписывание цели» было выбрано распределение iOS (это не так). XCode переделал мне Prov-профили. Он прошел проверку подписи (тьфу, теперь поддержка 64-битных!)


0

В моем случае «Xcode 7.3» все, что мне нужно, это очистить проект, перезапустить Xcode, повторно заархивировать, и все в порядке.


0

Проблема с моей стороны заключалась в том, что в itunesconnect моя учетная запись была сертифицирована как «разработчик iOS», но не как «дистрибьютор приложений iOS». Пришлось воссоздать сертификат, загрузить его, открыть с помощью связки ключей, а затем повторно проверить архив. Наконец-то это сработало. Спасибо всем


0

Чтобы исправить это, мне пришлось отключить автоматическое управление подписями в Target> General и импортировать профили разработчиков и pro после их загрузки из моей учетной записи Apple dev. Восстановил приложение, и оно заработало, больше ничего не помогло. Я предполагаю, что эта проблема может исходить из разных источников.


0

Моя проблема была вызвана чем-то другим, так что это может помочь.

Это довольно просто, мне нужно создать учетные записи, и я выбрал неправильный при экспорте в органайзере! Ага.

Надеюсь это поможет.


-4

Не слушай никого.

СДЕЛАТЬ ДАЛЕЕ:

  1. Открыть XCODE
  2. Перейдите в Xcode> Настройки> Просмотреть подробности
  3. Вы увидите подписывающие идентификаторы в верхней части нового открытого окна. Будет «iOS-разработка» или «iOS-распространение». (в моем случае был только 1 - iOS Development)
  4. Отменить все имеющиеся у вас удостоверения подписи
  5. Нажмите кнопку «+» и нажмите «Разработка iOS», затем «Распространение iOS». Теперь вы запрашиваете новые идентификаторы!

КОНЕЦ! ТОЛЬКО 5 ШАГОВ


8
Мне нравится ваша уверенность, но это было так же неудачно, как и другие ответы.
Аликс

1
Это было страшно. Я получил электронное письмо о том, что мой сертификат разработки был отозван. По общему признанию, я действительно не знаю, что делаю в xcode, но я не могу рекомендовать это никому, на всякий случай, если это действительно что-то плохое.
Гай Шалнат,

2
Это опасный ответ, поскольку он не обязательно решает проблему, и для людей, которые работают в коллективной среде, очень вероятно, что вы не захотите отзывать все подписывающие удостоверения. Не следуйте этим советам, если вы полностью не понимаете, что делаете.
нуар

8
Нам пришлось сжечь деревню, чтобы спасти людей.
Кендалл Хельмштеттер Гельнер
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.