6

Раньше с Xcode 7.3.1 Я смог построить прямо над своим приложением App Store на своем iPad и протестировать сценарий обновления, который отлично работал. На этой неделе я обновился до Xcode 8, и когда я попробую точно такой же подход, я все время получаю эту ошибку обновления.Обновление для iOS - право на идентификатор приложения не соответствует

«Права на приложение-заявку этого приложения не соответствуют назначению установленного приложения. Эти значения должны соответствовать обновлению до допустимо."

enter image description here

Я попробовал несколько решений, которые размещены на этой теме, и ни один из них не работал. У меня также нет приложения для часов. Просто простая целевая программа для iOS.

App installation failed due to application-identifier entitlement

Я удалил свои сертификаты и профили выделения ресурсов и воссоздал их и все та же проблема. Затем я пошел и загрузил Xcode 7.3.1 и снова попытался с той же проблемой.

Теперь я застреваю без возможности полностью проверить мой сценарий обновления.

ПОЖАЛУЙСТА, ПОМОГИТЕ!

+0

Я также использовал Xcode 8 и попробовал их «автоматическое подписание», «ручное подписание», и я все равно получаю ту же ошибку. – ArdenDev

+0

Если вы запустите 'codesign -d -entitlements: - path/to/AppName.app/AppName 'как для старых, так и для новых приложений. Получаете ли вы один и тот же идентификатор приложения на выходе? Возможно, у AppID есть префикс, отличный от вашего префикса. – Mats

+0

@ Маты, я сравнивал «идентификатор приложения» с префиксом команды для приложения отладки, и он соответствует тому, что находится в iTunes Connect. Я не думаю, что мы можем получить право на приложение, загруженное из App Store непосредственно с устройства. – ArdenDev

ответ

1

Чтобы исправить это, просто включите «Автоматическое управление подписанием» на общей вкладке параметров проекта.

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

Надеюсь, это поможет!

Проверить этот мой вопрос: Xcode 8 shows error that provisioning profile doesn't include signing certificate

+0

Я прикрепил образ ошибка, которую я получаю, которая отличается от ошибки, упомянутой в вашей ссылке. – ArdenDev

4

Удалить существующее приложение из устройства и запустить снова.

+0

Почему люди голодают без упоминания причины. –

+2

Я предполагаю, что это связано с тем, что речь идет о «обновлении» – GreatWiz

+0

Мы передали право собственности на приложение от компании A компании B (us). У устройства разработки все еще была версия от установленной компании A. Удаление компании Приложение с устройства и построение исправили проблему, как ожидалось. – Jon

0

Я получил это от .ipa, сгенерированного как артефакт Дженкинса. Проблема для меня заключалась в том, что Дженкинс использовал другой профиль обеспечения.

Я вручную установил Jenkins для использования того же профиля, что и обновленная версия, которую я пытался установить, и он начал работать.

1

Это одно решение, если вы хотите обновить существующее приложение App Store без его удаления, но ваше право на идентификатор приложения не соответствует. Загрузите архив своей новой сборки в App Store, а затем используйте TestFlight, чтобы загрузить ее на свое устройство. Это не так быстро, как создание устройства, но оно перезапишет ваше старое приложение вашей новой сборкой, сохранив при этом ваши старые данные.Для (относительно) быстрее оборачиваемости тестирования процесса обновления, как только у вас есть новое строительство доступного на TestFlight:

  1. Удалить приложение с вашего устройства (предполагая, что это было в последнее время сборки)
  2. Скачать приложение магазин сборка и генерировать некоторые данные
  3. Скачать инструкцию TestFlight сборки, но не запускать его
  4. Создайте свои новейшие сборки непосредственно на устройство

билд TestFlight перезаписывает Права остроумия hout удаляет старые данные, поэтому Xcode с радостью установит вашу новую сборку поверх сборки TestFlight, но вы все еще проверяете процесс обновления, как если бы вы строили прямо поверх версии App Store вашего приложения.

3

У меня была такая же проблема при попытке обновления приложения. И вот что я нашел:

Я проверил права приложения-идентификатора старого приложения и нового приложения. Вы можете сделать это, запустив codesign -d --entitlements :- path/to/AppName.app/AppName или откройте файл «archived-extended-rights.xcent» по пути «AppName.app/AppName».

Application-идентификатор старого приложения был «1234XXX5X6.com.mycompany.myapp», но в новом приложении это было «1234XXX5X6.com.mycompany.myapp. развивать».

Обычно я установил "Bundle Identifier" непосредственно в Info.plist.

Info.plist Bundle Identifier property

Но я не знал, что есть и «продукта идентификатор пакета» недвижимость в проекте Строительства Настройке.

Build Settings Product Bundle Identifier property

предыдущая версия приложения была построена с Xcode 7.3.1 и имели следующие параметры:

  • Info.plist: com.mycompany.myapp
  • Строительные настройки: com.mycompany.myapp. разработать
  • приложений идентификатор: 1234XXX5X6.com.mycompany.myapp

новая версия была построена с Xcode 8.2.1 и он имел следующие параметры:

  • info.plist : com.mycompany.myapp
  • Настройки сборки: com.mycompany.myapp.
  • идентификатор приложения: 1234XXX5X6.com.mycompany.myapp.

Похоже, что новый Xcode имеет различный источник для идентификатора приложения. Итак, я только что исправил «Идентификационный номер продукта», и моя проблема была решена.

Смежные вопросы