Ошибка XCode при запуске на подключенном устройстве: "исполняемый файл подписан с недопустимыми правами"

Описание проблемы

Я работаю над приложением на основе ReactNative 0.40, я использую Fastlane для бета-развертываний и использую Match для управления своими профилями подписи. Большинство вещей работает, как ожидалось, однако:

Проблема: когда я пытаюсь запустить свое приложение на физическом устройстве непосредственно из Xcode 8, это выдает мне эту ошибку:

Скриншот 2017-01-23 17 43 15

Вот что я попробовал:

  • [x] Следуйте инструкциям Apple по устранению неполадок с правами.
  • [x] убедился, что права, выбранные на экране "Возможности" XCode, совпадают с правами, выбранными в идентификаторе приложения на панели разработчика.
  • [x] Перезапущенный матч. т.е. fastlane match developmentfastlane match adhocfastlane match appstore
  • [x] Ран fastlane match decrypt а потом security cms -D -i /path/to/***.mobileprovision, Хотя я не совсем уверен, что я ищу, что отсутствует / дополнительный / недействительный.

Вопросы:

  1. Какими должны быть эти настройки как для проекта, так и для цели? Скриншот 2017-01-23 18 31 55

  2. Какой идентификатор подписи следует использовать для запуска приложения на устройстве из xcode во время разработки?

  3. Что еще я могу попытаться устранить это?

1 ответ

Решение

... и, наконец, исправил это. На случай, если какая-то другая бедная душа крутит свои колеса, вот что было сломано в моем случае.

Идентификатор приложения на портале разработчика имеет 3 варианта защиты данных:

Скриншот 2017-01-25 01 17 40

Тем не менее, Xcode не:

Скриншот 2017-01-25 01 18 33

В любом случае настройка должна совпадать, поэтому я не заметил, что файл прав был установлен на NSFileProtectionComplete в отличие от NSFileProtectionCompleteUntilFirstUserAuthentication

Внесение этого изменения, наряду с переключением на автоматическую подпись (что в ретроспективе могло не иметь никакого эффекта), устранило проблему. Я могу вернуться к профилям разработки, управляемым соответствием, и посмотреть, что произойдет.

Я получил эту ошибку из-за попытки построения с неправильной схемой. Я по ошибке использовал конфигурацию выпуска вместо конфигурации отладки

Поэтому дважды проверьте, выбрана ли правильная конфигурация схемы / сборки

Другие вопросы по тегам