Помилка Xcode 7: "Відсутня ідентифікація підпису розповсюдження iOS для…"


837

Я спробував завантажити своє додаток в iTunes Connect респ. AppStore і отримав таку помилку:

Не вдалося знайти або створити відповідні активи для підписання

Xcode намагався знайти або генерувати відповідні активи підпису, але цього не вдалося зробити через наступні проблеми.

Відсутня особа підпису iOS з розповсюдженням iOS для ... Xcode може запросити її для вас.

Перш ніж налаштувати нову розроблювальну машину, експортував облікові записи розробників через Xcode 7 зі старої на нову машину.

Що я можу зробити, щоб це виправити?


Вам також потрібно мати профіль розповсюдження та сертифікати разом із його ключами, щоб генерувати IPA (Навіть із профілем Dev)
Bhumit Mehta

1
З новим імпортом експорту облікового запису розробника Xcode 7 також експортуються профілі та сертифікати. У моєму випадку мені потрібно було додатково передати сертифікат "Apple World Wide Developer Certificate Authority" (див. Відповідь нижче)
Awsed

1
@За допомогою ви можете знайти детальну інформацію про сертифікати та профіль у Документації Apple . Було б корисно.
Діпен Панчасара

Відповіді:


1949

Від Apple -

Дякуємо, що донесли до цього увагу громади та вибачте за проблеми, які у вас виникли. Ця проблема пов'язана з наявністю копії сертифікату проміжного періоду WWDR, ​​який закінчився, у брелках системи та входу. Щоб вирішити проблему, слід спочатку завантажити та встановити новий проміжний сертифікат WWDR (двічі клацнувши по файлу). Далі в додатку Keychain Access виберіть системний брелок. Переконайтесь, що в меню «Вид» виберіть пункт «Показати термін дії, що втратив чинність», а потім видаліть прострочену версію проміжного сертифікату проміжного сертифікату служб сертифікатів Apple по всьому світу (минув 14 лютого 2016 року). Тепер ваші сертифікати повинні бути дійсними в Keychain Access і бути доступними для Xcode для подання в App Store.

Як зазначено в коментарі нижче, сертифікат з минулим терміном дії також потрібно видалити з loginрозділу:

Незважаючи на вказівки для всіх, хто не може змусити його працювати ... Є два серти з терміном дії WWDR. Один знаходиться в брелоку для входу, а другий - у системі. Ви повинні видалити їх обох, щоб вони працювали


63
Я думаю, що це була найкраща відповідь, оскільки вона містила інструкції щодо видалення сертифікату, що минув. Весь цей випуск - божевільний.
Чад Павлиська

12
Це траплялося кожні два роки; багато додатків перестають працювати на Mac, поки користувач не перезапустить Mac. Звичайно, вони будуть звинувачувати вас. Принаймні, новий сертифікат закінчується до 2023 року.
Тібідабо

4
Дякую тобі друже! Якщо це не працює: Ви впевнені, що додали новий? Мені довелося перезапустити Mac і завантажити його знову, оскільки мій Mac не хотів його додавати. (Я знав це, бо мене не просили вводити свій пароль ...)
Богоподібний

131
Незважаючи на вказівки для всіх, хто не може змусити його працювати ... Є два серти з терміном дії WWDR. Один знаходиться в брелоку для входу, а другий - у системі. Ви повинні видалити їх обох , щоб вони працювали.
Алекс Н.

3
Переконайтесь, що ви переходите до "Keychain Access", переходите до Keychains> System та видаляєте старі серти звідти. Мої особи, які підписувались, були скасовані, поки я цього не зробив.
wowzuzz

562

Я також зіткнувся з тим же питанням і сьогодні. Наступні кроки вирішили мою проблему.

  1. Завантажте https://developer.apple.com/certificationauthority/AppleWWDRCA.cer
  2. Двічі клацніть, щоб встановити Keychain.
  3. Потім у брелоку виберіть Перегляд -> "Показати сертифікати з минулим терміном дії" в додатку Keychain.
  4. У ньому будуть перераховані всі сертифікати, що минули.
  5. Видаліть "Сертифікати сертифікаційного органу Apple Worldwide Developers" на вкладці "Логін"
  6. А також видаліть його на вкладці "Система".

Тепер ви готові йти.


62
"6. А також видаліть його з вкладки" Система "." крок вирішена моя проблема. Це правильна відповідь !!!
EFE

4
Я також! Я виправив, видаливши його з вкладки "Система". "Крок
Едвард Чіанг

1
Я виконую ці кроки, включаючи видалення його з системи, однак кожного разу, коли я відкриваю програму розширення (розробник сафарі), знову з'являється старий сертифікат з минулим терміном дії. Будь-які ідеї?
Андре

3
Вищезазначене питання було вирішено, виконавши цей крок "Якщо ваш сертифікат відсутній у Safari Extension Builder, оновіть систему підпису до бета-версії OS X El Capitan v10.11.4" на наступній сторінці: термін дії сертифікату
Андре

для тих, хто хоче знати, де знайти сертифікати: Сертифікований Apple
Jorge Casariego

41

Я продовжував працювати над проблемою і побачив, що всі мої серти були визнані недійсними - о, ні!

Виявляється, я ніколи не видаляв термін, що втратив чинність. Це не відображалось для мене, поки я не вибрав із програми Keychain Access:

Перегляд-> Показати терміни дії, що минув

тоді

Система-> Усі товари

нарешті відобразить цей загальний термін, який закінчився. Видаліть це і повторіть з XCode підбере нові дійсні серти.

Просто переконайтеся, що ви шукаєте "Усі товари" в додатку Keychain Access. Недійсні серти є результатом вказівки на сертифікат, що втратив чинність, ще не видалений.


Показ сертифікатів із минулим терміном дії та видалення із системи вирішив це для мене.
Жуль

33

Наведений нижче процес вирішить проблему,

1: Відкрийте доступ до KeyChain та видаліть "Сертифікаційний орган щодо зв'язків із розробниками Apple у всьому світі" (термін дії якого закінчується 14 лютого 2016 року) із розділів "Вхід" та "Система". Якщо ви не можете його знайти, скористайтеся пунктом "Показати термін дії сертифікату" у меню "Вид".

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

2: Тепер завантажте https://developer.apple.com/certificationauthority/AppleWWDRCA.cer і двічі клацніть сертифікат, щоб додати його до Keychain доступу> сертифікати (термін дії якого закінчується 8 лютого 2023 року). Тепер дійсний статус сертифікатів повинен стати зеленим, як показано нижче.

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

Після перевірки стану.


2
Дякую! Це "Якщо ви не можете його знайти, використовуйте" Показати сертифікати з минулим терміном дії "в меню" Вид "." допомогло мені МНОГО!
SDW

чому на цьому скріншоті є відсікання нігтів?
FlavorScape

21

Apple внесла наступні зміни, тому завантажте новий сертифікат developer.apple.com

оновлений сертифікат і розмістіть його як нижче знімків екрана. У брелоку як нижче знімків екрана натисніть на систему, а потім сертифікат. Видаліть сертифікат, що минув. Потім перетягніть AppleWWDRCA.cer, який ви завантажили зверху за посиланням

Проміжний термін дії сертифіката для розробників Apple Worldwide

Щоб захистити клієнтів та розробників, ми вимагаємо, щоб усі додатки сторонніх розробників, пропуски на Apple Wallet, розширення Safari, повідомлення про натискання Safari та квитанції на придбання App Store були підписані надійним сертифікаційним органом. Орган сертифікації відносин розробників Apple Worldwide видає сертифікати, якими ви користуєтесь для підписання свого програмного забезпечення для пристроїв Apple, дозволяючи нашим системам підтвердити, що ваше програмне забезпечення доставляється користувачам за призначенням і не було змінено.

Проміжний сертифікат стосунків розробників Apple Worldwide скоро закінчується, і ми видали оновлений сертифікат, який потрібно включати підписуючи всі нові паспорти Apple Wallet, push-пакети для повідомлень Push Safari і розширення Safari з 14 лютого 2016 року.

Хоча на більшість розробників та користувачів не вплине зміна сертифікату, ми рекомендуємо всім розробникам завантажувати та встановлювати оновлений сертифікат на своїх розробних системах та серверах як найкращу практику. Усі додатки залишатимуться доступними в магазині додатків для iOS, Mac та Apple TV.

Оскільки різні методи можна використовувати для перевірки квитанцій та доставки віддалених сповіщень, радимо протестувати свої послуги, щоб переконатися, що немає проблем, пов’язаних із впровадженням. У ваших додатках може виникнути помилка підтвердження отримання, якщо код перевірки квитанції робить неправильні припущення щодо сертифіката. Переконайтеся, що ваш код дотримується Посібника з програмування перевірки квитанцій та вирішіть усі проблеми з підтвердженням квитанції до 14 лютого 2016 року.

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


12

Після деякого пошуку я виявив, що недостатньо експортувати облікові записи розробників з Xcode та імпортувати їх на новій машині, знову ж таки, через Xcode.

Додатково мені потрібно було скопіювати сертифікат під назвою " Apple World Wide Developer Certificate Authority " з брелка колишньої машини розробки на брелок нового.

Це вирішило для мене проблему.


10
Ви можете встановити його за посиланням: developer.apple.com/certificationauthority/AppleWWDRCA.cer
ERU

12

Я імпортував новий сертифікат Apple WWDR, ​​термін дії якого закінчується в 2023 році, але у мене все ще виникають проблеми, і мої сертифікати розробника показували недійсну помилку емітента.

У доступі до брелоків перейдіть до Перегляд -> Показати минули сертифікати, а потім у вашому брелоку для входу виділіть термін дії сертифіката WWDR та видаліть його. У мене також був такий самий сертифікат простроченого терміну в моєму системному брелоку, тому я його також видалив звідти (важливо)

Після видалення сертифікату терміну, що минув, із входу та системних брелоків, я знову зміг створити для дистрибуції.


4

Я видалив старий AppleWWDRCA, завантажив і встановив AppleWWDRCA , але проблема залишилася. Я також перевірив свої сертифікати на розповсюдження та розробку з Keychain Access і бачу нижче помилку;

"This certificate has an invalid issuer."

Тоді,

  1. Я відкликав сертифікати на розробку та розповсюдження в центрі-члені.
  2. Заново створили файл CSR та додайте сертифікати розробки та розповсюдження з нуля, завантажили їх та встановили.

Ця виправлена ​​проблема з сертифікатом.

Оскільки старі сертифікати були анульовані, існуючі профілі резервування втрачають силу. Щоб виправити це;

  1. У центрі-члені відкрили профілі забезпечення.
  2. Деталі профілю відкрили, натиснувши "Редагувати", перевірили сертифікат зі списку та натиснули кнопку "Створити".
  3. Завантажували та встановлювали профілі розробки та розповсюдження.

Я сподіваюся, що це допомагає.


3

Моя відповідь була іншою і прийшла разом із повідомленням:

resource fork, Finder information, or similar detritus not allowed

Рішення полягало в створеній графіці:

Помилка підпису коду в macOS Sierra Xcode 8: вилка ресурсу, інформація про Finder або подібний детрит заборонено


Допомогли мені, дякую! Ця проблема була справді пов'язана із створеною графікою та тим самим повідомленням про помилку.
dubbelugh


1

Переконайтесь, що в Навігаторі проектів> Підпис> Команда має бути вибрано ім'я команди.

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.