Со вчерашнего дня я получаю следующую ошибку при попытке запустить приложение на моем устройстве: «Не найден действительный профиль обеспечения для этого исполняемого файла». Это после обновления до Xcode 10. Сборка с Xcode 9 на прошлой неделе работала без проблем.
Я проверил другие обсуждения об ошибке, но ни одно из решений не работает.
Эта проблема не ограничивается одним проектом, над которым я работаю, поскольку затрагивает несколько разных групп подписчиков.
До сих пор я пробовал следующее:
Проект очистки
Очистка полученных данных
Удаление Xcode, удаление любых настроек и файлов, связанных с ним.
Установка Xcode на совершенно другой Mac
Тестирование на разных устройствах
Отключение устройства в профиле разработчика и повторное включение Xcode.
Удаление всех сертификатов на портале разработчиков и их повторное создание
Снятие и повторная проверка «Автоматически управлять подписью»
Уничтожение профиля обеспечения и позволить Xcode воссоздать его
Создание профиля обеспечения вручную в профиле разработчика
Проект не содержит тестов, поэтому не может быть проблемы с неправильными настройками подписи для этой цели. Дата / Время установлено на Автоматический
Следует отметить, что здесь не указаны профили обеспечения, кроме созданного мной руководства: https://developer.apple.com/account/ios/profile/
Я ожидаю, что сгенерированный xcode будет отображаться так же, как и для всех других клиентов.
Ниже приведены параметры подписи, которые я сейчас использую.
Я еще не попробовал понизить Xcode до более старой версии, чтобы увидеть, работает ли это. Кроме этого я понятия не имею, что попробовать дальше.
missing provisioning-profile
.Ответы:
Я боролся с этим сегодня, это было супер расстраивающим. Сейчас просто войдите в
"File"
>"Project Settings..."
(или в некоторых случаях"Workspace Settings..."
) и затем выберите"Legacy Build System"
из"Build System"
выпадающего списка.источник
@ Stefhen TKS это решено для меня. Мне просто нужно пойти -> Файл -> WorspaceSettings -> Настройки сборки (изменить здесь на "Legacy Build System")
источник
[править] Примечание 2020: раньше я подписывал этот проект вручную. В проектах, где я автоматически подписывался, у меня никогда не было этой проблемы. [/редактировать]
У меня была такая же проблема, и я часами искал ответ, удалял профили, чистил проект и так далее.
Вы распространяли свое приложение? Вам нужно переключиться обратно на свой профиль разработчика, но не в общих настройках проекта, а в настройках сборки .
В разделе « Подписывание» посмотрите на свою личность подписи кода .
Убедитесь, что для Debug и Release установлены iOS Developer , а не iOS Distribution ; или ваш профиль обеспечения разработчика iOS, если не установлены автоматические значения.
То же самое касается профиля обеспечения. Это должен быть ваш развивающийся профиль, а не ваш профиль распространения.
Надеюсь, что это поможет будущим разработчикам, нуждающимся.
источник
Я перепробовал все вышеперечисленные решения.
Однако, в моем случае, после нескольких часов головной боли это было из-за того, что у Тестового проекта нет действительной учетной записи для обеспечения подписания. После того, как я выбрал команду для предоставления в тестовом проекте с автоматической подписью. Эта проблема ушла.
источник
Используйте чистую папку сборки (команда + Shift + K) и перестроить приложение может в скором времени решить эту проблему. Однако время сборки увеличится, так как вы очистили папку сборки.
источник
Так что это не будет иметь место для всех, но я думал, что выложу это здесь так или иначе, поскольку, кажется, нет никаких ответов, касающихся этого.
В моем случае я работал над приложением, которое разрабатывалось в ReactNative, моя проблема заключалась в том, что, хотя моя подпись была правильной для основной цели приложения, у цели теста не было подписи.
По какой-то причине React Native требует, чтобы цель приложения и цель тестирования были подписаны, чтобы установить приложение на устройство.
Это указано в официальной документации по сборке устройства, однако это единственный экземпляр, который я когда-либо видел, когда цель тестирования строится вместе с приложением для чего-либо кроме тестирования.
Чтобы подписать цель теста, перейдите в настройки проекта, открыв навигатор проекта (⌘1) и выберите свой проект в верхней части.
В главном редакторе выберите цель основного приложения в разделе «Цели» (должно иметь то же имя, что и ваш проект) и убедитесь, что подпись правильная, затем выберите цель тестирования (скорее всего, под основной целью приложения, она должна совпадать с именем «Тесты»). и убедитесь, что он подписан таким же образом.
Перестройте приложение, и теперь оно должно быть успешно установлено.
В этом заслуга Лео Лея, его ответ избавил меня от головной боли: https://stackoverflow.com/a/48657358/732844
Кроме того, если кто-нибудь знает, почему реагирует на нативный, то нужно, чтобы ваша цель тестирования была построена вместе с целью вашего приложения, могли бы они сообщить мне? Единственная причина, по которой я могу придумать, заключается в том, чтобы упростить интерфейс так, чтобы при реакции можно было создать одно приложение и выполнять как запуск, так и тестирование без необходимости перестраивать, но я просто догадываюсь с этим.
источник
В моем случае, вот шаги, которые я решаю проблемы:
~/Library/MobileDevice/Provisioning Profiles/
Причина, по которой нужно выполнить вышеописанные действия, состоит в том, чтобы удалить старые профили обеспечения, которые испортили процесс сборки.
источник
Для нашей команды ничего не помогло. Мы потратили пару дней и опробовали каждый шаг, который был упомянут здесь выше в ответах и комментариях. Мы пробовали использовать XCode 10 и даже XCode 9.2 в приложении, которое уже много лет находится в магазине приложений.
Проблема началась после обновления до MacOS Mojave. К сожалению, возвращение в HighSierra тогда не помогло.
По крайней мере, мы смогли снова отправиться в магазин приложений после того, как создали новый сертификат и профиль обеспечения. Но мы все еще не можем тестировать наше приложение в режиме релиза на реальном устройстве, что необходимо для тестирования InApp-покупок.
Короче говоря: архивация и отправка работает хорошо, работает на реальном устройстве нет!
Несколько разработчиков, несколько устройств, macbooks, версии XCode ....
В конце мы должны были изменить AppID для возможности повторного тестирования на реальном устройстве.
Для этого мы сейчас выполняем два разных проекта: один для доставки в TestFlight / AppStore с реальным AppID, а другой для целей разработки с другим AppID.
Хотя это происходит только в ОДНОМ конкретном приложении нашей компании, а не во всех остальных, мы ожидаем, что в будущем мы столкнемся с подобными проблемами, поскольку с инструментами разработки Apple дела пойдут еще хуже ...
источник
Эта проблема возникла в Xcode 10.3 после того, как я переключился на свою цель модульного тестирования XCTest, а затем вернулся к цели времени выполнения проекта.
Оказывается, у меня были разные Команды, выбранные в моем профиле обеспечения для каждой цели.
Исправить это :
Чистая папка сборки
Убедитесь, что все цели могут использовать одну и ту же команду. См. Подпись профиля под общей вкладкой.
Если для всех целей не используется одна и та же команда, очистите ее перед переключением на цель сборки с
другая команда выбрана.
источник
Убедитесь, что профиль обеспечения предоставляется одной и той же командой как в вашей цели, так и в ваших целевых тестах.
источник
В моем случае дата и время устройства были установлены на будущую дату. Изменение настройки даты на «автоматическое» исправило проблему.
источник
Я боролся с той же проблемой, и решение в моем случае состояло в том, чтобы войти в учетную запись (ы) разработчика. После обновления до Xcode 10 все учетные записи были отключены.
Используйте меню «Xcode -> Preferences ... -> Accounts» и убедитесь, что все используемые вами учетные записи зарегистрированы, чтобы профили инициализации были доступны.
источник
Я должен был выполнить все вышеперечисленные шаги, но это не работа со мной, наконец. Я создал дубликат Target, и он работает нормально. Я понятия не имею, что не так, может быть, проблема с кеш-памятью
источник
Возможно, вы меняли свое устройство для разработки? Это случилось со мной, когда я купил новый iPhone и дал ему то же имя, что и у моего предыдущего устройства. Однако чистая сборка устранила проблему.
источник
Это заняло много времени, и мы выполнили все вышеперечисленные решения, а они вообще не работали, поэтому наша команда решила удалить
Pod
файлы и запуститьpod install
снова. наконец, наша OTA загрузила ipa, установленный на устройстве пользователя. лучшее решениечистый
project menu > Product > Clean Build Folder
и/Users/{you user name}/Library/Developer/Xcode/DerivedData
перейти в каталог проекта и удалить
Podfile.lock
,Pods
папки,pod_***.framework
беги
pod install
сноваГотово
источник
У меня был случай, когда мое приложение развернулось бы на моем iPhone, но не на моих часах. Развертывание на часы даст «Действительный профиль обеспечения для этого исполняемого файла не найден». ошибка. Это с XCode версии 11.2.1 и использованием бесплатной учетной записи разработчика.
Вот что я сделал, чтобы развернуть его на своих часах:
1) Я удалил свой профиль обеспечения в XCode. Я сделал это, зайдя в Окно -> Устройства и симуляторы. Затем щелкните правой кнопкой мыши на имени iPhone и выберите «Показать профили обеспечения». Оттуда я могу удалить файл
2) В окне «Устройства и симуляторы» я также удалил свое приложение из раздела «Установленные приложения».
3) Сделал «чистую папку сборки» (Product -> Clean Build Folder)
4) В «Настройках сборки» -> «Подпись» я позаботился о том, чтобы у каждой цели (iPhone, Tests и Watch) были одинаковые настройки (команда разработчиков, стиль подписи кода, профиль обеспечения был настроен на автоматический и т. Д.).
5) Убедитесь, что каталог ~ / Library / MobileDevice / Provisioning Profiles пуст.
6) Отключил телефон от компьютера
7) перезагрузил компьютер, телефон и часы
8) Подключил телефон обратно к компьютеру и прошел подсказки «доверяй этой машине» на телефоне и смотри.
9) Запустил приложение. Это сработало!
источник
Сегодня у меня была такая же ошибка при установке приложения на мое устройство. Проблема возникла после обновления до нового xCode 11.4.
Что я сделал, чтобы исправить проблему:
источник
В моем случае, где больше ничего не помогло, я сделал следующее:
Перед этим я опробовал каждый шаг, который был упомянут здесь. Но только это помогло.
источник
Для меня даже то, что сертификат распределения и профиль обеспечения были доступны для XCode, выбрав Автоматическое управление подписанием во время процесса распространения, сделал его неудачным. Я сделал следующее. Как упоминалось ранее, я создал новый сертификат распространения и профиль обеспечения, а затем во время процесса распространения вручную выбрал сертификат и профиль обеспечения и Voilaaaa. Также убедитесь, что я на последней версии 10.1.
источник
Похоже, что Apple исправила эту ошибку в Xcode 10.2 beta 2 Release.
https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_beta_2_release_notes
Xcode 10.2 beta 2 Release можно скачать здесь: https://developer.apple.com/download/
источник
Вам просто нужно сменить команду. В моем случае это сработало
источник
После того, как я устал большинство решения, я обнаружил , что его заставить его работать без какого - либо вопроса для меня, ее решить, идти на
developer.apple.com
тоaccount
тогдаCertificates, identifiers & profiles
и я нажимаю наAll
ссылку подDevices
, а затем добавить новое устройство.Затем вам нужно установить имя устройства и uuid, а затем сохранить его. Зайдите в xcode и почистите кеш, соберите, и все работает нормально.
Примечание 1: убедитесь, что ваша команда настроена на правду.
Примечание 2: Вы можете получить uuid, подключив устройство к вашему устройству Mac, и нажмите на iTunes, и нажмите на ярлык безопасности, вы увидите UUID.
Который этот ответ тоже полезно.
источник
Я попробовал все ответы выше и мне не повезло. После этого я перезагружаю свой iPhone, и проблема кажется исчезла. Я знаю, что это так глупо, но это сработало. Ответы выше, скорее всего, решают проблему, но если нет, попробуйте перезагрузить устройство iOS.
источник
Убедись, что ты:
1) Иметь зарегистрированный профиль обеспечения для вашего устройства.
2) Устройство должно быть добавлено в профиль разработки и обновлено.
Если вы все еще сталкиваетесь с проблемами, проверьте настройки сборки вашей цели.
Убедись, что ты:
1)
CODE_SIGNING_REQUIRED
вUser-Defined
установлен в положениеYES
.2) Проверьте
Signing
правильность параметров. Если проблема сохраняется, переключитесь на Ручные настройки вместо автоматически.источник
Встречающиеся же проблема, у нас было несколько конфигураций в проекте Xcode, скажем , давайте
Debug-Staging
,Debug-Production
. Затем мы объединили их и использовали только одну конфигурациюDebug
. Но старый (больше не существующий) застрял в схеме для фазы запуска, поэтому, как только вы попытались запустить, Xcode показал вам это сообщение. Это имеет смысл, поскольку профили инициализации настраиваются в настройках сборки на основе конфигурации.Итак, схема запуска выглядела так:
В то время как настройки проекта были настроены так.
Изменение схемы для использования конфигурации, которая все еще доступна в проекте, - это то, что исправило эту проблему для меня.
источник
У меня была такая же проблема (XCode 11), и ничего не получалось, что было написано здесь.
Моя проблема заключалась в том, что на моем телефоне была установлена iOS Beta (13.3). После возврата, что все снова работало нормально.
Идея: Может быть, устройство также кеширует некоторую информацию о профиле инициализации, так что сброс настроек телефона может также исправить это?
источник
Для меня это сработало, чтобы удалить Capability, а затем добавить его обратно.
источник
Я сделал следующее:
Это очень странно, но это сработало для меня, может сработать для других и спасти разочарование.
источник
Наконец, я понял, что происходит ... почти 2 часа у меня
Мой случай, дата моего телефона не верна. Я забыл, что изменил дату моего телефона. Я предполагаю, что это истекло все мои профили обеспечения ...
Так что, если вы попробовали все эти ответы, но ничего не работает. Зайдите в НАСТРОЙКИ, проверьте дату вашего телефона.
источник