"Файл" MyApp.app "не может быть открыт, потому что у вас нет разрешения на его просмотр" при запуске приложения в Xcode 6 Beta 4

Всякий раз, когда я пытаюсь запустить приложение в Xcode 6 Beta 4, я получаю сообщение об ошибке:

The file "MyApp.app" couldn't be opened because you don't have permission to view it.

Эта ошибка появляется независимо от того, на какой тренажер или устройство я нацелен.

Я пробовал:

  • Удаление всех полученных данных из организатора в Xcode
  • Восстановление разрешений на моем диске
  • Вручную добавление разрешений встроенного MyApp.app
  • Перезагрузка моего компьютера.

Кто-нибудь еще сталкивается с этой проблемой и находит решение?

Screenshot

Ответ 1

Возникла проблема с Info.plist проекта. Я создал новый проект с тем же именем в Xcode 6 beta 4, а затем заменил реальный проект Info.plist новым. Затем проект строился и работал нормально.

Посмотрите на diff, это похоже на то, что plist может каким-то образом перепутаться с площадкой для игровых площадок. Идентификатор пакета был "com.apple.dt.playground.iOS-18300-13", а имена исполняемого файла и пакета были "iOS" вместе с некоторыми другими странностями.

Это полный diff в случае, если кто-то нуждается в этом для справки:

        <key>CFBundleDevelopmentRegion</key>
        <string>en</string>
        <key>CFBundleExecutable</key>
-       <string>iOS</string>
+       <string>${EXECUTABLE_NAME}</string>
        <key>CFBundleIdentifier</key>
-       <string>com.apple.dt.playground.iOS-18300-13</string>
+       <string>com.myCompany.${PRODUCT_NAME:rfc1034identifier}</string>
        <key>CFBundleInfoDictionaryVersion</key>
        <string>6.0</string>
        <key>CFBundleName</key>
-       <string>iOS</string>
+       <string>${PRODUCT_NAME}</string>
        <key>CFBundlePackageType</key>
-       <string>AAPL</string>
+       <string>APPL</string>
        <key>CFBundleShortVersionString</key>
        <string>1.0</string>
-       <key>CFBundleSupportedPlatforms</key>
-       <array>
-               <string>iPhoneSimulator</string>
-       </array>
+       <key>CFBundleSignature</key>
+       <string>????</string>
        <key>CFBundleVersion</key>
        <string>1</string>
-       <key>DTPlatformName</key>
-       <string>iphonesimulator</string>
-       <key>DTSDKName</key>
-       <string>iphonesimulator8.0</string>
-       <key>LSBackgroundOnly</key>
-       <true/>
        <key>LSRequiresIPhoneOS</key>
        <true/>
+       <key>UIMainStoryboardFile</key>
+       <string>Main</string>
        <key>UIRequiredDeviceCapabilities</key>
        <array>
                <string>armv7</string>
        </array>
+       <key>UISupportedInterfaceOrientations</key>
+       <array>
+               <string>UIInterfaceOrientationPortrait</string>
+               <string>UIInterfaceOrientationLandscapeLeft</string>
+               <string>UIInterfaceOrientationLandscapeRight</string>
+       </array>
 </dict>
 </plist>

Ответ 2

Я использую Xcode6 GM. Я столкнулся с той же проблемой. То, что я сделал, это перейти в "Настройки сборки" → "Параметры сборки". Затем я изменил значение "Компилятор для C/С++/ Objective-C" на компилятор по умолчанию. enter изображение здесь

Ответ 3

В Xcode выполните следующие действия

Окно → Органайзер → Проекты → Приложение с проблемой → кнопка удаления в Производных данных.

Затем я очистил проект и вуаля

работы

Ответ 4

Проблема с УСТРОЙСТВОМ тоже (не только симулятор)?


Другие решения только фиксировали это для меня на симуляторе, а не на устройстве.

Для меня эта проблема возникла (в Xcode 6), когда я попытаюсь изменить основные свойства info.plist, пытаясь изменить имя моего приложения.

В info.plist Я изменил имя Executable File на нечто иное, чем значение по умолчанию ${EXECUTABLE_NAME}...

Я ошибался в этом поле для поля, которое меняет имя приложения под значком на трамплине.

Ответ 5

Для меня простой Продукт → Чистый работал отлично

Ответ 6

Я исправил его, очистив папку сборки. Просто перешел в меню "Продукт" и Option + "Очистить". После этого проблема была решена.

Ответ 7

У меня была такая же ошибка в Xcode 8.2. Причина, по которой я узнал для меня, еще один Info.plist добавлен в мой проект при добавлении библиотеки (вручную копировать).

Так что Xcode путается для выбора правильного Info.plist.

Я просто удалил этот Info.plist из добавленной библиотеки.

Затем он работает нормально без предупреждения о разрешении.

Ответ 8

Перейдите к настройкам сборки из целевой цели проекта, затем перейдите в "Параметры сборки", затем измените значение "Компилятор для C/С++/ Objective-C" на компилятор по умолчанию. Я использую Xcode 6 beta 4, и это сработало и для меня.

Ответ 9

Пожалуйста, проверьте, если вы изменили исполняемый файл = > $(EXECUTABLE_NAME) на любое другое имя. Если вы изменили это имя, оно показывает эту ошибку. Пожалуйста, замените его на $(EXECUTABLE_NAME).

Ответ 10

Продукт → Очистить (командный сдвиг K) зафиксировал его для меня

Ответ 11

Мое добро! Я потратил несколько часов, чтобы решить эту проблему.

В XCode 7.3 У меня был проект без проблем.

Ошибка, которую я сделал

Я только что добавил физические папки и переместил в них файлы, проблема началась.

Я пробовал все

  • Компилятор по умолчанию
  • Очистить и построить
  • Reset симулятор и симулятор перезагрузки, Xcode, iPhone даже mac
  • Обновлен Info.plist
  • Удаление исходных данных
  • Редактирование разрешения в папке проекта
  • Проверка моей архитектуры

ничего не получилось: (

Как я решил

Я был о создании нового проекта, а затем я просто удалил эти физические папки Я добавил, чистая сборка и YESS!!

Это работает!!

введите описание изображения здесь

Ответ 12

Попробуйте "cmd + shift + k", чтобы очистить проект и перестроить. По крайней мере, это сработало для меня.

Ответ 13

У меня была аналогичная проблема (xCode 6.2) для загруженного образца кода. Я попытался установить Executable Name на Default in Info.plist, но это не сработало.

Вместо этого замените Компилятор для C/С++/Objective-C на Компилятор по умолчанию (Apple LLVM 6.0) вместо Unsupported Compiler (com.apple.compilers.llvmgcc42) для проект.

Screenshot

Ответ 14

1) Сначала выберите варианты сборки.

2) Затем изменилось значение "Компилятор для C/С++/ Objective-C" на компилятор по умолчанию.

чистая и рабочая: -)

Ответ 15

Иногда открытие старого проекта в новой версии Xcode получит это сообщение.

Перейдите к навигатору проблем и следуйте подсказке "Upate to reconmmeded settings".

Бум, волшебство!

Ответ 16

Я обнаружил, что изменить мой компилятор на LLVM 6.0 в настройках сборки достаточно для меня (xcode 6.1)

enter image description here

Ответ 17

У меня была эта ошибка с рядом моих старых проектов, которые я выхожу из шкафа для обновления. Похоже, что использование Xcode 6 со старым кодом, по-видимому, вызывает это по какой-то причине.

Я исправил это во всех проектах, которые я сделал с помощью:

  • Удалить Производные данные
  • в Продукт: сделать чистый
  • перейдите в "Настроить параметры" в проекте "Цель" и перейдите к "Параметры сборки" и измените значение "Компилятор для C/С++/Objective-C" на " По умолчанию Компилятор.

Ответ 18

Я получил ту же ошибку на моем Xcode 6.1.1 для проекта, загруженного с gitHub, который был совершен 4 года назад. Для меня настройка Архитектуры на значение по умолчанию Стандартные архитектуры (armv7, arm64) и Компилятор для C/С++/Objective-C для компилятора по умолчанию в Настройки здания.

Ответ 19

У меня была та же проблема в моем проекте. Позже обнаружил, что сторонний (fmdb для SQLite) файл, используемый в проекте, содержал Info.plist.

Простое удаление файла Info.plist сработало для меня!

Info.plist

Ответ 20

Недавно я столкнулся с той же проблемой для запуска старого проекта (изначально созданного в Xcode 4.x) в Xcode 6.0.1.

Я исправил проблему, изменив Архитектуры в Настройка здания s на значение по умолчанию, которое " Стандартные архитектуры (armv7, arm64)".

Надеюсь, это поможет любому, у кого возникли подобные проблемы:)

Ответ 21

В моем случае я просто переименую значения Bundle Name и Executable file в info.plist так же, как имя проекта. Это сработало для меня.

Ответ 22

Я попробовал все перечисленные ответы, и ни один из них не был полезен. Проблема заключалась в существовании другого файла plist, связанного с подмодулем через cocoapods. К счастью, это был мой собственный модуль, поэтому я просто удалил этот plist из проекта подмодуля и переустановил контейнеры.

Решение

Позже я понял, что ключ к проблеме был во имя этого второго plist: просто info.plist. Вы можете переименовать файл и связать его с помощью раздела sources подмодуля

Второй файл plist имел уникальное имя, поэтому Xcode не должен был расстраиваться. Даже мои целевые настройки указывали на основной слой, а не на info.plist. Похоже, Xcode принимает особые соображения по поводу этого имени

Ошибка, выраженная в Xcode 6.4 и Xcode 7.0

Ответ 23

У меня была подобная проблема. Как-то мое значение для ключевого исполняемого файла было замешано. Просто измените его на ${EXECUTABLE_NAME} (в вашем проекте > Информация). Работал для меня!

Ответ 24

Не знаю, связана ли проблема, но, возможно, это может быть решением для тех, кто тянет волосы, как я.

В моем случае у меня есть проект с большим количеством целей. Каждая цель - это настройка базового проекта, который является Cocoa Touch Static Library и целями, Applications. Даже если файл main добавляется в компиляцию библиотеки, но не в каждой цели, появляется это сообщение об ошибке. Так что я сделал? Вручную добавили файл main к каждой цели в разделе Compile Sources и бинго, все в порядке.

Ответ 25

Для меня ошибка была в файле .plist с ключом CFBundleExecutable. Я переименовал исполняемый файл, удалив пробел между двумя словами. (Например: от "Wild Racer" до "WildRacer" ). Взял 1 день, чтобы определить это!

Xcode бесполезен в отладке!

Ответ 26

В моем случае main.m, содержащий основную (...) функцию, не содержался в списке "Скомпилировать источники" в разделе "Фазы сборки". Чтобы проверить, действительно ли это так, введите "Фазы сборки" и посмотрите, если ваш main.m появляется в списке "Источники компиляции".

Ответ 27

Мое приложение работало нормально на XCode 9.4, но когда я открыл свой проект в XCode 10, я столкнулся с этой проблемой. Для меня проблема заключалась в настройке сборки. Я нашел ответ на этой странице https://forums.developer.apple.com/thread/112141.

Вкратце зайдите в File> Workspace Settings…> Build System и измените его на "Legacy Build System"

Ответ 28

Для меня это решило установить Только встроенную активную архитектуру Нет до Да.

Ответ 29

с X-кодом 6.3.2

[Настройки сборки]. [All] - [Опции сборки] - [Компилятор для C/С++/ Objective-C] - [Компилятор по умолчанию (Apple LLVM 6.1)]

Затем перестройте проект, и он работает нормально.

Ответ 30

В моем случае это помогло просто закрыть Xcode, восстановил разрешения с помощью Disk Utility. Только после перезагрузки он работал как шарм.