Я получаю «ужасную» ошибку 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 дает вам (сертификат, устройство, подготовка) до буквы, и я не могу понять, что происходит не так.
Может ли кто-нибудь помочь мне с этой проблемой?
iphone
objective-c
code-signing
provisioning-profile
code-signing-entitlements
Ричард Дж. Росс III
источник
источник
Build Settings > Code Signing > Code Signing Entitlements
позволило мне создать этот проект.Ответы:
Просто столкнулся с этой проблемой сам, проблема заключалась в том, что у меня был файл Entitlements.plist в проекте как часть специального распределения, а его свойство get-task-allow (т.е. 'можно отлаживать') было установлено на NO - установка значения ДА устранила проблему и разрешила запуск приложения из Xcode4 на разрабатываемом устройстве.
Естественно, нужно вернуть его в NO для специальных дистрибутивов, но просто подумал, что упомяну об этом, если кто-то еще столкнется с той же проблемой.
источник
У меня была эта проблема с Xcode 4.2.1.
Для меня это не имело никакого отношения к файлу Entitlements или Ad-hoc ...
Я возвращался к старому проекту и забыл добавить свой новый iPhone в резерв.
Глупая ошибка, но также и соответствующее глупое сообщение об ошибке ...: - /
источник
Если вы используете response-native, убедитесь, что тестовая цель имеет тот же профиль подготовки, что и основной.
источник
У меня была эта проблема с правами iCloud. Моя проблема заключалась в том, что я забыл включить iCloud для своего идентификатора приложения на портале Provisioning Portal.
После включения iCloud для вашего идентификатора приложения вам нужно будет воссоздать профили подготовки.
источник
Сохраните свой файл прав в Target> Build Settings> Code Signing> Code Signing Entitlements.
Перейдите в Target> Capabilities. Включите / выключите или выключите / включите одну из возможностей.
Запустить.
источник
Что сработало для меня, так это полное удаление файла прав из списка групп и из параметров сборки как в Project, так и в Target. Затем я воссоздал права на вкладке «Сводка» в целевом объекте, и он загрузился нормально без каких-либо сообщений об ошибках.
источник
Просто кладу сюда свои 5 центов. Для меня ничего из вышеперечисленного не помогло, поэтому я был вынужден напрячься и взглянуть на каждую часть процесса свежим взглядом.
В спешке я забыл, что пытался установить свое приложение на совершенно новое устройство.
Итак, моя ошибка заключалась в том, что я не обновил свой профиль обеспечения, отметив свое новое устройство галочкой в разделе «Устройства» настройки профиля обеспечения на портале обеспечения.
Очевидно, что отсутствие вашего устройства в профиле подготовки также вызывает это сообщение об ошибке.
источник
Ни один из многих ответов не устранил для меня ошибку 0xE8008016.
Но когда я выбрал «Automatic Device Provisioning» в Xcode 4> Organizer> Devices> Provisioning Profiles, это наконец сработало.
источник
В моем случае это была глупая ошибка. Я неправильно установил схему «Выполнить», чтобы использовать конфигурацию сборки «Распространение» вместо конфигурации «Отладка» или «Выпуск». Глупая ошибка, но для ее отладки потребовалось время, поэтому я собираюсь добавить свой ответ, чтобы улучшить базу знаний внутри переполнения стека!
источник
Удалите свои профили подготовки, выполните «Очистить все», убедитесь, что настройки подготовки верны, загрузите повторно и попробуйте запустить снова.
источник
источник
У меня была такая же проблема в моем приложении, через несколько месяцев это конкретное приложение работало нормально.
Проблема заключалась в том, что возможности, настроенные в моем проекте Xcode (в разделе Targets -> {ProjectName} -> Capabilities), не совпадали с возможностями, настроенными в профиле подготовки (вы можете проверить это в центре участников Apple в разделе Идентификатор -> Приложение Идентификаторы -> {идентификатор вашего приложения}. В центре для участников я увидел, что Game Center включен, поэтому в моем проекте я также включил Game Center. Затем приложение было запущено.
До сих пор не знаю, как это работало. Это до сих пор загадка :)
источник
Для меня отметьте опцию «Автоматически управлять подписью» в Target, решите проблему!
источник
Удаление папки xcuserdata решило мою проблему. Подробнее об этом здесь: https://stackoverflow.com/a/9968884/300694
источник
Если вы не меняли ничего, связанного с сертификатами (не заменяли и не обновляли их), просто выполните
Product -> Clean
. Мне это помогало несколько раз. (Xcode 6.2)источник
Обновление до XCode 4 устранило проблему.
источник
Я столкнулся с этой проблемой сегодня, и я выдергивал волосы, пытаясь понять это. Как и многие здесь, это сработает, если я удалю параметры iCloud в своем файле прав. Когда я отправлялся отлаживать приложение с включенными параметрами iCloud, я получал ошибку 0xe8008016. Это было сразу после отзыва и восстановления новых сертификатов.
Решением для меня было включение поддержки iCloud для автоматически созданного профиля команды Xcode. Войдите в инструмент онлайн-подготовки, перейдите
App IDs
, щелкнитеXcode iOS Wildcard App ID
, щелкнитеedit
, включите iCloud, установив флажок и, наконец, нажавDone
. Обновите свои профили в Xcode, и тогда он начнет работать.В этом есть смысл - когда вы отлаживаете, по умолчанию используется профиль команды, а в профиле команды должен быть включен iCloud.
источник
Это случилось со мной, когда я по ошибке пытался использовать профиль обеспечения распространения в магазине приложений для локального тестирования. Когда я использовал правильный профиль разработки, он работал нормально. Может, это кому-то тоже поможет.
источник
Это сработало для меня ...
Entitlements
файл изtarget
.Cleaned
сборка в XcodeНадеюсь, это сработает и для вас, ребята :)
источник
Вот что решило мою проблему: удаление пути в разделе «Права на подпись кода» в настройках сборки Targets.
источник
Мой профиль подготовки от разработчика Apple соответствует моим возможностям Xcode, но он все равно не будет встроен в мое устройство, пока я не сделаю следующее:
Удалите / удалите файл прав из вашего проекта Xcode.
Вернитесь на вкладку возможностей Xcode
Нажмите кнопку «Исправить проблему», чтобы Xcode повторно добавил файл прав.
Сработал для меня, надеюсь, это кому-то поможет.
источник
Это случилось со мной в Xcode 8, частично это было вызвано новой
Provisioning Profile
настройкой сборки, так как в этой версии Xcode есть две записи для профиля подготовки:Моя ошибка заключалась в том, что я обновил только первый, а устаревшая запись все еще указывала на недопустимый профиль обеспечения. Изменение обоих значений на одно и то же значение решило проблему (удаление устаревшей записи также должно иметь тот же эффект).
источник
В моем случае похоже, что Xcode (тайно) сбросил схему. Я обнаружил, что конфигурация сборки для Archive была установлена на Release, а не на дистрибутив, и после того, как я изменил ее на правильную, все заработало.
Я думаю, что лучше проверить схемы, а также настройки сборки.
источник
У меня был старый проект и такая же проблема, и я решил.
1. Перейти к резюме
2.В есть группы связки ключей и удалите объект групп связки ключей.
Я надеюсь, это сработает для вас. С уважением.
источник
Я использую xcode 6 и сталкиваюсь с этой проблемой для одного конкретного iphone 4
наконец, я перехожу к устройству => профиль обеспечения =>
а затем добавьте профиль вручную, и проблема будет устранена.
источник
Для меня в 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.
Проверьте все анкеты!
источник
Проверьте доступ к KeyChain!
В моем случае я использовал неправильный сертификат распространения, связанный с профилем обеспечения.
источник
Код, над которым я работал, имел другой идентификатор пакета в 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 в Организаторе удалите профили подготовки, которые вы собираетесь заменить.
Теперь обзавестись новыми. Если вы разрабатываете более чем для одной команды и хотите обновить только конкретную, выберите соответствующую команду на левой панели в разделе «КОМАНДЫ», в противном случае выберите «Профили обеспечения» в разделе «БИБЛИОТЕКА», затем выберите «Обновить».
Наконец, удалите все старые профили обеспечения на вашем устройстве, которые могут конфликтовать с новыми, поскольку профили никогда не удаляются автоматически; новые профили просто добавляются в список.
источник