Идентификатор, используемый для подписи исполняемого файла, больше не действителен

173

У меня есть приложение, которое я отлаживаю на iPad. 2 дня назад я хотел отладить то же обновленное приложение, но у меня возникла эта ошибка.

Идентификатор, используемый для подписи исполняемого файла, больше не действителен.

Убедитесь, что часы вашего устройства установлены правильно, а срок действия сертификата подписи не истек.

(0xE8008018).

У меня пока нет сертификата iPhone Developer, но я однажды отлаживал эту игру.

Айк Мелконян
источник

Ответы:

94

Попробуйте перезапустить XCode. Это сработало для меня.

Namratha
источник
1
Это работает и для меня. команда + Q для выхода из XCode и перезапуска. Ура!
Джои
9
Мне пришлось удалить все сертификаты / профили вручную, а также обновить все на портале разработчиков Apple и загрузить их снова, но это сработало.
бенка
7
Только что случилось со мной с последней 6.1. Перезапуск XCode и удаление из проекта «производных данных» не имели значения. Я очень ненавижу эту грязную, немного устаревшую среду разработки.
Майк Гледхилл,
81
Перезапуск XCode не работал для меня. Для меня это было связано с Учетными записями в XCode (в настройках), Подробными сведениями для моей учетной записи разработчика, а затем нажатием на значок обновления в левом нижнем углу. Это загрузило новый профиль обеспечения команды, который, очевидно, был необходим ... да. Мы не должны иметь дело с этим Apple. Microsoft делала это с разработчиками, не ходи туда.
Eskim0
2
@ Eskim0 Ваше исправление сработало для меня после того, как я столкнулся с той же проблемой после преобразования из личного аккаунта в бизнес.
Рогаре
234

Ни перезапуск Xcode, ни перезапуск моего Mac не помогли.

Решение в Xcode:

  1. В XCode, перейдите в Настройки -> Аккаунты -> Просмотр сведений
  2. Нажмите символ + и выберите iOS Development
  3. Нажмите кнопку обновления в левом нижнем углу ( Download allвызывается в Xcode 7)

PS:

  • Иногда это также может помочь удалить недействительные профили обеспечения: щелкните правой кнопкой мыши -> перейти в корзину.
  • Я увидел эту ошибку ровно через год после регистрации в качестве разработчика Apple.
vomako
источник
14
Спасибо! Это работает для меня, за исключением того, что я не нужен шаг 2.
вир
3
Спасибо! Вероятно, эта проблема возникает один раз в год после даты зачисления.
Сергей Нескоромный
3
Спасибо! Я восстановил свою регистрацию и столкнулся с этой проблемой. Этот помог мне.
Нхон Нгуен
1
Правильный ответ сегодня
Феда Кульяндоло
1
Для меня это только помогло, что я удалил все загруженные файлы обеспечения и затем позволил Xcode "Исправить проблемы".
Ларс Блумберг
59

Это может произойти, когда срок действия вашего сертификата истечет в вашей цепочке для ключей.

РЕДАКТИРОВАТЬ : Я бы сейчас рекомендовал cert и sigh для создания ваших сертификатов и профилей обеспечения. Это две команды часть фастлэйна инструментов из KrauseFx.

Используя cert & sigh:

  1. Откройте терминал и введите cert
  2. Ответьте на предложенные вопросы, чтобы указать своего пользователя, пароль, команду, приложение и т. Д.
  3. Откройте терминал и введите sigh
  4. Ответьте на предложенные вопросы, чтобы указать своего пользователя, пароль, команду, приложение и т. Д.
  5. Выберите правильный профиль в Code Signing Identity (iPhone Developer)

Обычный способ:

  1. Просто перейдите на новый портал обеспечения: Сертификаты, Идентификатор, Профили
  2. Войдите в систему с помощью учетной записи разработчика.
  3. Перейдите в Сертификаты и нажмите кнопку «Плюс».
  4. Затем выберите «Разработка приложений для iOS» и нажмите «Продолжить».
  5. Выполните весь процесс и загрузите только что созданный сертификат.
  6. Загрузите его и положите в свой брелок.
  7. Обновите свои профили из окна устройств XCode Organizer
  8. Выберите правильный профиль в Code Signing Identity (iPhone Developer)
dulgan
источник
1
Я следовал вышеописанному процессу, он будет запрашивать отзыв и запрос. Если я отзову этот сертификат, это повлияет на сомнения?
ИП Балу Коммури
1
Это не повлияет на приложения, которые уже есть в AppStore, но вам придется
заново создавать
Это означает, что если я буду использовать для дальнейшего развития моего приложения. Я хочу использовать вновь созданный профиль обеспечения, это правильно. @dulgan
ИП Балу Коммури
Да, все, что вы уже разработали, все равно будет работать, но срок действия всех профилей обеспечения, созданных с использованием ваших старых сертификатов, истечет. Профили инициализации используются только при установке приложения через XCode, по беспроводной
сети
Спасибо @dulgan отныне я использую новый отозванный сертификат с новым профилем обеспечения, это не проблема. хорошо .....
ИП Балу Коммури
22

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

~ / Библиотека / MobileDevice / Профили обеспечения

... и удалите свои профили обеспечения.

Затем снова загрузите свой профиль обеспечения с сайта;

https://developer.apple.com/account/ios/profile/profileList.action

AnthonyBlake
источник
6

Если вы используете джейлкодер, убедитесь, что вы успешно взломали свой iphone. Не забудьте установить AppSync для IOS в Cydia.

Андрей
источник
Есть ли авторитетное место для получения AppSync?
Newenglander
5

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

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

Просто закройте xcode прямо вниз (Cmd + Q), затем снова откройте его, загрузите ваш проект и нажмите play. Он спросит вас, хотите ли вы помочь с автоматическим исправлением проблемы с сертификатом, затем просто следуйте инструкциям на экране и делает всю тяжелую работу за вас :)

Кевин С
источник
5

Ваши профили инициализации устарели.

  1. Xcode
  2. предпочтения
  3. Счета
  4. Выберите свой идентификатор Apple
  5. Просмотр деталей (правый нижний угол)
  6. Скачать все
  7. Беги снова и СДЕЛАНО!
Себастьян Лара
источник
Работает для меня! Я импортировал профиль разработчика с другого компьютера
FlySoFast
Работает на меня, спасибо ... dangit Apple, почему так много мест, чтобы застрять?
Кайл Пеннелл
4

Это может быть эмпирическим подходом, но он стоит того, чтобы многие комментаторы отмечали, что «это сработало для меня» или «это не сработало для меня». Во-первых, проблема может заключаться в нескольких местах: в ваших сертификатах (идентификаторах подписи кода) или в ваших профилях обеспечения. Определение того, в чем заключается проблема, прежде чем что-либо предпринимать, сэкономит вам много усилий Вам нужно будет проверить в трех местах:

  1. XCode
  2. Брелок Доступ
  3. Портал разработчиков (Центр разработчиков)

ОК, в XCode нажмите «Проект» (над заголовком «Цели»), выберите «Настройки сборки» и перейдите к «Подписи кода». Разверните заголовок «CODE_SIGNING_IDENTITY», и вы увидите несколько идентификаторов (Debug, Release и т. Д.). Каждая из них будет соответствовать сертификату в Keychain Access. Найдите совпадение и проверьте дату истечения срока действия ... если он истек, вам нужно будет обновить его на портале разработчика и загрузить. Проверяйте КАЖДУЮ личность, а не только первую, срок действия которой вы найдете. Кроме того, если срок его действия истек, вам потребуется заново создать профиль обеспечения, в котором использовался просроченный сертификат. Если нет проблем с сертификатами, проверьте срок действия всех профилей обеспечения. Еще раз, если они истекли, их нужно будет восстановить.

После завершения повторите тот же процесс для ЦЕЛИ, для которой вы пытаетесь построить.

Ничего из этого не сработало? Истекший сертификат скрывается в одном из ваших профилей предоставления. Признак того, что это может иметь место, состоит в том, что когда вы нажимаете на CODE_SIGNING_IDENTITY, идентичность находится ниже Другой ... например.xcode пример хитрой личности

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

Аркади Боб
источник
3

Я столкнулся с этой проблемой, когда срок моего членства истек, и я возобновил его. Я использую xCode6, и я решаю эту проблему, отозвав сертификат разработчика с истекшим сроком действия из Member Center и очистив папку сборки (alt + [Product> Clean]). xCode обрабатывает другие проблемы самостоятельно.

См. Раздел « Замена устаревших сертификатов » по этой ссылке: https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/MaintainedCertificates/Main массыCertificates.html.

CoyBit
источник
3

У меня была эта проблема с XCode 6.3 Ниже приведены шаги, которые работали для меня.

Перейдите в XCode > Preferences > Accountsраздел «Выберите учетную запись разработчика», затем нажмите « View Details...Нажать на refreshкнопку» в левом нижнем углу окна. Он должен уведомить вас, что вам не хватает нескольких сертификатов. Нажмите Request. XCode автоматически должен загрузить недостающие сертификаты. Нажмите, Doneи это должно работать.

u54r
источник
2

Вы отлаживаете его на симуляторе, только если у вас нет сертификата iPhone Developer. отметьте в левом углу в Xcode, что вы выбираете симулятор, а не устройство.

Приянка
источник
Отладка на симуляторе и на iPad тоже, но 2 дня назад я не знаю, что случилось, и у меня есть эта ошибка.
Айк Мелконян
2

Я столкнулся с той же проблемой, я удалил все ресурсы инициализации из xcode и добавил их обратно, и просто перезапустил Xcode.

Мое приложение было загружено на устройство, и оно работало.

Джоти Сваруп
источник
2

Это также происходит, если срок действия вашего сертификата разработчика истек. Время оплатить яблоко и обновить его: P

Радж Паван Гумдал
источник
2

Сначала: перейдите к настройке параметров и проверьте, выбрана ли ваша действительная идентификация подписи кода. Если это не поможет, попробуйте более сложные вещи

brainray
источник
Оно работает. У меня есть старый сертификат и новый. Установил новый в настройках сборки.
djdance
2

В моем случае это диалоговое сообщение сработало

Идентификатор, используемый для подписи исполняемого файла, больше не действителен.

Убедитесь, что часы вашего устройства установлены правильно, а срок действия сертификата подписи не истек.

(0xE8008018).

Мой сертификат в Keychain Access получил статус недействительного красного цвета с истечением около года и часа в будущем. Я установил время на час вперед, и статус сертификата стал зеленым. Таким образом, любой, кто думает, что решение заключается в перезапуске xcode, является неправильным, но для перезапуска xcode истечет время, после которого сертификат станет действительным. Как, нажав кнопку Fix Issue , отзывает и создает новый сертификат ровно на год (плюс несколько минут в зависимости от локали, чтобы поднять эту проблему).

zeeawan
источник
2

Этот ответ - точно работа для меня.


146 «вниз». Ни перезапуск Xcode, ни перезапуск моего Mac не помогли.

Решение в Xcode:

In Xcode, go to Preferences --> Accounts --> View Details
Press the + symbol and select iOS Development
Press the refresh button in the lower left corner (called Download all in Xcode 7)

PS:

Sometimes it may also help to delete invalid provisioning profiles: right-click -> move to trash
I saw this error exactly one year after signing up as an Apple developer.

*** Что я хочу знать, так это то, почему эта проблема часто возникает после ноября。 PS: моя учетная запись разработчика Apple регистрировалась несколько лет. Но в этом году я изменил роль агента на другую учетную запись электронной почты.

magicya
источник
2

Мое решение, после того, как ничего больше не работало, состояло в том, чтобы пойти к Доступу Цепочки для ключей и удалить все ключи / сертификаты "разработчика iOS", затем позволить XCode восстановить их.

Maniek
источник
Пришлось избавиться и от «iPhone Developer» тоже.
rstackhouse
1

Попробуйте установить время на мобильном устройстве и Mac, чтобы «установить дату и время автоматически» и перезапустить xcode, который сделал это для меня

Waqleh
источник
1

Проблема здесь в том, что ваш профиль был создан на основе просроченного сертифицированного

-Так что вам нужно зайти на портал разработчика и обновить ваш сертификат, если срок его действия истек

- затем регенерируйте профиль, чтобы он был заново оформлен на новом сертификате.

Я предлагаю использовать утилиту конфигурации iPhone для управления профилями на вашем Mac

Омар Фриуэн
источник
1

Если ваш сертификат не установлен локально. Или вы попытались запустить сертификат и решили «отозвать и запросить» новый сертификат, тогда у вас есть возможность сделать это на компьютере, на котором вы пытаетесь запустить

Перейдите в « Настройки» -> «Аккаунты» -> под своим AppleId -> «Просмотр сведений» -> в разделе «Подпись удостоверения» вы можете увидеть статус вашего сертификата «Действительный» или «Отмененный», если отозван, и вы хотите запросить новый сертификат, перейдите на -> + затем -> тип дистрибутива, который вы пытаетесь использовать.

Дейзи Р.
источник
0

В Xcode 5.1 - есть зона самопомощи, которая сделала эту работу за меня.

Вы найдете его в разделе «Общие» после нажатия на название вашего проекта в разделе> Цели. Вы должны увидеть значок предупреждения и описание проблемы в разделе Identity (там, где вы вводите номера сборки / версии).

Он заметил, что в настоящее время не было сохранено никакого сертификата, и через некоторые ящики самопомощи и изменение моего пароля я получил его.

Крис Ламбру
источник
0

Вот причины, по которым у меня возникла эта ошибка:

Для идентификатора приложения не был проверен мой сертификат разработчика iOS (я являюсь членом программы Enterprise), и у меня было 2 профиля обеспечения с одинаковым идентификатором приложения на моем Mac. Я удалил один.

Надеюсь, это кому-нибудь поможет.

user3900346
источник
0

Я перепробовал все вышеперечисленное. Я продолжал получать ошибку о том, что UUID не найден.

Я пошел в проект, открыл project.pbxproj и нашел все экземпляры UUID (2) и удалил UUID (не всю строку).

Исправлена ​​проблема.

Dorrin
источник
0

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

гадюка
источник
0

Пережил ту же проблему. Была проблема с просроченным сертификатом. Вам нужно будет создать новый сертификат и соответствующий профиль prov. Следуйте советам Дулгана для этого.

Книга Джошуа
источник
0

Удалены профили из каталога на вашем компьютере: «~ / Library / MobileDevice / Provisioning Profiles». Зайдя в центр разработчиков Apple, отредактировал конкретный профиль обеспечения, выбрал сертификат для обеспечения и снова сгенерировал профиль. Установил новый профиль и у меня все заработало.

Минна Захария
источник
0

Нашел другой способ это происходит сегодня. Когда вы изменяете свой профиль обеспечения после изменения сертификата, вы можете видеть, что выбранные сертификаты говорят о 2 из 1 выбранных сертификатов (если вы просто используете 1 сертификат). Просто отменив выбор и повторно выбрав сертификат, вы можете восстановить и установить профиль, и это решит проблему.

AdbC
источник
0

Решение @vomako почти решило мою проблему, но мне пришлось сделать еще пару шагов.

Я имею в виду следующее ...

В Xcode 6.1.1 я пошел в Настройки -> Учетные записи -> Просмотр сведений

После обновления до Xcode 6.1.1 основной проблемой для меня было то, что кнопка > View Details была выделена серым цветом.

Мне пришлось удалить свою учетную запись, перезапустить Xcode, а затем снова добавить свою учетную запись разработчика.

После этого шага я мог еще раз просмотреть детали и обновить свои профили обеспечения.

andrewbuilder
источник
0

Я выбрал None из выпадающего списка Team в общих настройках цели. Затем выбрали оригинальную команду. Xcode показывает некоторый счетчик рядом с ним. Подождите, пока он завершится, и тогда все работает. Пробовал в Xcode 6.2

Джит
источник
0

У меня была эта проблема несколько раз, обычно она может быть решена путем повторного открытия Xcode.

Я удалил производные данные из органайзера XCode. В конце концов это работает

r0ng
источник