Права указаны ... профиль. (0xE8008016). Ошибка в iOS 4.2
Я получаю "страшную" ошибку The entitlements specified in your application’s Code Signing Entitlements file do not match those specified in your provisioning profile.
(0xE8008016).
при попытке развернуть мое первое приложение на устройстве без джейлбрейка на iOS 4.2.6 (Verizon). Дело в том, что у меня нет Entitlements file
в моем проекте, как я не распространяю его вообще, только положить его на одном устройстве. Я прошел через все обручи и петли, через которые apple ставит вас (сертификат, устройство, подготовка) до буквы, и я не могу понять, что происходит не так.
может кто-нибудь, пожалуйста, помогите мне с этим проблема?
30 ответов:
просто наткнулся на эту проблему сам, проблема была в том, что я был прав.plist-файл в проекте как часть специального дистрибутива, а его get-task-allow (т. е. 'can be debugged') свойство было установлено в НЕТ-установка этого да Исправлена проблема и позволило приложению работать с Xcode4 на устройстве в разработке.
естественно, нужно установить его обратно в NO для специальных распределений, но просто подумал, что я упомяну об этом, если кто-то еще столкнется с той же проблемой.
У меня была эта проблема с Xcode 4.2.1.
для меня это не имело никакого отношения к файлу прав или Ad-hoc...
Я возвращался к старому проекту, и я забыл добавить свой новый iPhone в положение.
глупая ошибка, но и глупо соответствующее сообщение об ошибке... : -/
У меня была эта проблема с правами iCloud. Моя проблема заключалась в том, что я забыл включить iCloud для своего идентификатора приложения на портале подготовки.
после включения iCloud для вашего идентификатора приложения вам нужно будет воссоздать профили подготовки.
Если вы используете react-native, убедитесь, что тестовый объект имеет тот же профиль подготовки, что и основной.
сохранить файл правами в цель> Параметры > код подписи > права подписи кода.
перейти к цели > функции. Включение / выключение или выключение/включение одной из возможностей.
выполнить.
Что сработало для меня, так это полностью удалить файл прав, из списка групп и из настроек сборки как в проекте, так и в цели. Затем я воссоздал права на вкладке "сводка" в целевом объекте, и он загрузился нормально без каких-либо сообщений об ошибках.
просто положив мои 5 центов здесь. Для меня ничего из вышеперечисленного не сработало, поэтому я был вынужден напрячься и фактически взглянуть на каждую часть процесса свежим взглядом.
в спешке это я забыл, что я пытался установить мое приложение на совершенно новом устройстве.
Итак, моя ошибка заключалась в том, что я не обновил свой профиль подготовки, отметив свое новое устройство в разделе "Устройства" настройки профиля подготовки на портале подготовки.
видимо не включение устройства в профиль подготовки также создает это сообщение об ошибке.
ни один из многих ответов не исправил ошибку 0xE8008016 для меня.
но когда я выбрал "автоматическая подготовка устройств" в Xcode 4 > Organizer > Devices > Provisioning Profiles, это наконец сработало.
в моем случае это была глупая ошибка. Я неправильно установил схему " Run "для использования конфигурации сборки" Distribution "вместо" Debug "или" Release". Глупая ошибка, но потребовалось время, чтобы отладить ее, поэтому я собираюсь добавить свой ответ, чтобы улучшить базу знаний внутри переполнения стека!
удалите профили подготовки, выполните "очистить все", убедитесь, что ваши настройки подготовки верны, перезагрузите и повторите попытку запуска.
- откройте "портал подготовки iOS" в Safari.
- нажмите "устройства"на боковой панели.
- зарегистрируйте UDID вашего устройства
- Нажмите "Профили Подготовки"
- Редактировать профиль приложения.
- выберите устройство, которое вы только что добавили.
- скачать .mobileprovision файл.
- установить его.
- снова строить.
У меня была такая же проблема в моем приложении, через несколько месяцев этот конкретный приложение работало нормально.
проблема заключалась в том, что возможности, настроенные в моем проекте Xcode (в разделе Targets -> {ProjectName} -> Capabilities), не совпадали с возможностями, настроенными в профиле подготовки (вы можете проверить это в центре членов Apple в разделе Identifier -> App Ids -> {your app ID}. В центре участников я увидел, что Game Center включен, и поэтому в моем проекте я также включил игру Центр. Затем приложение удалось запустить.
Я не знаю, как это работало до сих пор. Это все еще загадка:)
Удаление папки xcuserdata решило мою проблему. Подробнее об этом здесь: https://stackoverflow.com/a/9968884/300694
Если вы не изменили ничего, связанного с сертификатами (не заменили или не обновили их), просто сделайте
Product -> Clean
. Это помогло мне несколько раз. (Xcode 6.2)
я столкнулся с этой проблемой сегодня, и я вытаскивал свои волосы, пытаясь понять это. Как и многие люди здесь, это будет работать, если я удалил параметры iCloud в моем файле прав. Когда я пойду отлаживать приложение с включенными параметрами iCloud, я получу ошибку 0xe8008016. Это было сразу после отзыва и регенерации новых сертификатов.
поэтому для меня было решено включить поддержку iCloud для автоматически созданного профиля команды Xcode. Войдите в систему онлайн-инструмент подготовки, перейдите к
App IDs
, нажмите кнопкуXcode iOS Wildcard App ID
, нажмите кнопкуedit
, включите iCloud, установив флажок и, наконец, нажавDone
. Обновите свои профили в Xcode, и тогда он начнет работать.это имеет некоторый смысл - при отладке по умолчанию используется профиль команды, и профиль команды должен быть включен iCloud.
случилось со мной, когда я пытался использовать профиль подготовки дистрибутива app store для локального теста по ошибке. Когда я использовал правильный профиль развития, он работал просто отлично. Может быть, это тоже кому-то помогает.
это работает для меня...
- Я удалил с
target
.- удалил приложение со всех моих устройств
Cleaned
сборка в Xcode- *необязательно удалить профиль подготовки и повторно добавить его
надеюсь, что это работает для вас, ребята :)
Это то, что решило мою проблему: удаление пути в разделе прав подписи кода целевых параметров сборки.
мой профиль подготовки от Apple developer соответствует моим возможностям Xcode, но он все равно не будет построен на моем устройстве, пока я не сделаю следующее:
удалить / удалить файл прав из вашего проекта Xcode.
вернитесь на вкладку возможности Xcode
Нажмите кнопку" исправить проблему", чтобы получить Xcode для повторного добавления файла прав.
работал на меня, надеюсь, это поможет кто-то.
случилось со мной на Xcode 8, это было частично вызвано новым
Provisioning Profile
настройка сборки, так как в этой версии Xcode есть две записи для профиля подготовки:
- Профиль Подготовки
- Профиль Подготовки (Устарело)
моя ошибка заключалась в том, что я обновил только первый, и устаревшая запись все еще указывала на недопустимый профиль подготовки. Изменение обоих на одно и то же значение решило проблему (очистка устаревшей записи следует также иметь тот же эффект).
в моем случае это выглядит как Xcode (тайно) сбросить схему. Я обнаружил, что конфигурация сборки для архива была настроена на выпуск вместо дистрибутива, и после того, как я изменил ее на правильную, она работала.
Я думаю, что лучше проверить схемы, а также настройки сборки.
У меня был старый проект и та же проблема, и я решил .
1.Перейти к резюме
2.Резюме есть группы ключей и удалить keychanin объект группы.Я надеюсь, что это будет работать для вас . С уважением.
Я использую xcode 6 и сталкиваюсь с этой проблемой для одного конкретного iphone 4
наконец, я перехожу к device = > provision profile =>
а затем добавить профиль вручную и проблема исправлена .
для меня в Xcode 5.1 я получаю
The entitlements specified in your application’s Code Signing Entitlements file do not match those specified in your provisioning profile.
при попытке проверить приложение на моем устройстве. Срок действия сертификата на разработку устройства истекает в феврале 2015 года.проблема была решена:
избранные
Target->Capabilities
, под GameCenter, здесь я получал ошибку на GameCenter права, как это не было добавлено в проект, хотя первая версия приложения была выпущена через тот же XCode 5.1, но не было никаких ошибок, как это раньше.ниже, кнопка была дана с названием
Fix Issue
. При нажатии он добавил право GameCenter и проблема была решена.после нее экран выглядит так:
для меня не было ничего общего с сертификатом. Приложение теперь успешно работает на устройстве.
еще одна потенциальная проблема, которая вызовет это сообщение об ошибке: если вы используете совершенно допустимый профиль подготовки для вашего основного приложения, но у вас есть истекший или иным образом недопустимый профиль подготовки для вашего расширения виджета Today. Я предполагаю, что это будет то же самое для расширения Apple watch.
проверьте все профили!
код, над которым я работал, имел другой bundleid в Info-plist, чем в
Product Bundle Identifier
создать настройки.Я нашел это, потому что я заметил это сообщение в консоли устройства в представлении устройства:
MIS: entitlement 'application-identifier' has value not permitted by provisioning profile 'iOS Team Provisioning Profile: com.xxx.yyy'
Если вы пытаетесь активировать синхронизацию iCloud, вам нужно будет включить iCloud для AppID, который используется для создания профиля подготовки разработки (что Xcode делает автоматически). Вам также необходимо включить это для профилей распространения.
сложность заключается в том, что при обновлении профилей в Xcode это не вызывает обновления профилей; они просто повторно загружаются. Поэтому на вашем портале подготовки iOS в разделе Подготовка/разработка вам понадобится чтобы проверить профиль, который помечен (управляется Xcode) и удалить его (удалить выбранную кнопку). Сделайте это для всех профилей, разработки и распространения, которые необходимо восстановить.
теперь в Xcode в органайзере удалите профили подготовки, которые вы собираетесь заменить.
теперь, чтобы получить новые. Если вы разрабатываете для нескольких команд и хотите обновить только одну, выберите соответствующую команду на левой панели в разделе команды, в противном случае выберите подготовка Профили в разделе Библиотека, затем выберите Обновить.
наконец, удалите все старые профили подготовки на вашем устройстве, которые могут конфликтовать с новыми, поскольку профили никогда не удаляются автоматически; новые профили просто добавляются в список.
моя проблема заключалась в том, что схема имела точку архивирования для выпуска, а выпуск в настройках сборки имел идентификатор подписи кода, установленный на один из автоматических селекторов профилей. Ну, "автоматический" сделал неправильную вещь (и фактически изменил то, на что он указал с двух дней назад), и указывал на другой профиль, чем тот, который я выбирал при создании специального выпуска. Указание идентификатора на явную настройку и использование того же профиля при распространении фиксировало проблема.