Получать сообщение «Подписанный ресурс был добавлен, изменен или удален» при попытке отладки приложения на iPhone - PullRequest
44 голосов
/ 29 января 2010

При попытке отладки сборки, созданной с помощью SDK 3.2 на устройстве iPhone, я получаю сообщение «Подписанный ресурс был добавлен, изменен или удален».

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

Кто-нибудь имеет представление о том, что может быть причиной этого?

Ответы [ 26 ]

32 голосов
/ 05 февраля 2010

Я нашел обходной путь для ошибки.

Если вы удалите файл .app в build / Debug-iphoneos / перед сборкой для устройства, приложение будет установлено без ошибок. И есть простой способ сделать это перед каждой сборкой.

Убедитесь, что вы выбрали «Устройство» в раскрывающемся меню обзора. В XCode перейдите в Project> New target ... Затем найдите «Цель сценария оболочки» под MacOSX / Другое Назовите его и добавьте в текущий проект

Теперь, в левой навигационной панели, под целями, разверните вновь созданную цель и дважды щелкните по Run Script. В открывшемся окне замените «# shell script here» на «rm -fr build / Debug-iphoneos / *. App» (без кавычек). Теперь откройте настройки основной цели и в разделе «Прямые зависимости» добавьте вновь созданную цель. Построй и иди! :)

20 голосов
/ 23 марта 2012

Эта ошибка возникает, когда в названии продукта есть специальный символ . В моем случае это было "?"

Если вы измените Имя продукта, оно автоматически обновит «Имя пакета» и «Отображаемое имя пакета», поэтому зачастую это лучший выбор для переименования приложения.

Если вы хотите включить специальные символы в имя приложения, вам нужно вручную переименовать «Имя пакета» и «Отображаемое имя пакета»

Имя пакета : Это фактическое имя пакета приложения в файловой системе, например «Awesome App.app». Обычно он невидим для пользователя.

Отображаемое имя пакета : это короткое имя , отображаемое под значком приложения на устройстве. Поскольку имя пакета будет усечено до «Awes …tion», у вас есть возможность выбрать более короткое имя, которое подходит лучше, например «Awesome App». Должно быть похоже на название App Store (установлено в iTunes Connect)

12 голосов
/ 01 февраля 2010

Это довольно явно ошибка в 3.2 SDK, но я не хочу понижать версию. Я обнаружил, что выполнение Clean нажатием Command+Shift+K, затем Return выполняется довольно быстро, прежде чем нажать Command+R для сборки.

4 голосов
/ 19 сентября 2017

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

3 голосов
/ 26 апреля 2015

Это может иметь несколько причин. Самый быстрый способ выяснить, что вызывает его, это перейти в Xcode, меню Window, Devices, а затем нажать кнопку открытия в нижней части панели, чтобы отобразить консоль. Теперь попытайтесь бежать. Вы должны увидеть вывод журнала с именами конкретных файлов, на которые он жалуется.

Большинство ранее опубликованных решений - это просто искусственные способы заставить XCode восстановить содержимое папки сборки и / или повторно подписать файлы.

В моем случае мое расширение WatchKit каким-то образом получало ссылки на фреймворки Cocoapods, которые были нацелены только на основное приложение, поэтому они были подписаны во время сборки, а затем сокращены (поскольку они не использовались). Затем на устройстве iOS пожаловалась, что они отсутствуют в папке .appex для расширения. В итоге мне не потребовалось никаких модулей в расширении, поэтому я просто удалил их все и удалил расширение как цель, а затем сделал небольшую очистку, чтобы удалить мусор, связанный с модулями, оставленный на этапах сборки. Теперь все работает отлично.

2 голосов
/ 15 апреля 2010

(решено) Это странно. Я перепробовал все, что мог найти. В конце концов я изменил название продукта с «Unit Tests (устройство)» на «Device Unit Tests» - сняв скобки. Теперь все работает. Пробелы в нем кажутся хорошими.

Ранее в стеке потока: Я только что столкнулся с этой ошибкой с двумя статическими проектами библиотеки. Один без проблем собирает и тестирует, используя GHUnit Test Runner на устройстве. Другие проекты не будут установлены и получат эту ошибку. Это означает, что между этими двумя проектами что-то не так. До сих пор я пытался стереть каталог сборки, убрав пробелы из имени исполняемого файла, а также различные очистки и сборки, как предложено здесь.

1 голос
/ 19 декабря 2016

Когда я создал ipa через терминал, используя команды xcodebuild, ipa создал, но при установке я получил ту же ошибку. exportOptionsPlist решил мою проблему.

xcodebuild -exportArchive -archivePath  projectPath/myapp.xcarchive  -exportPath  projectPath/myApp.ipa  -exportOptionsPlist  ProjectFolder/exportPlist.plist
1 голос
/ 21 сентября 2012

Я получал эту же ошибку, но периодически. Я попробовал все вышеперечисленное, и это все еще не сработало. Сегодня я обнаружил, что это вызвало.

Ошибка возникает при редактировании xib в конструкторе интерфейсов. Если вы попытаетесь запустить, пока в xcode открыт конструктор интерфейса, это вызовет вышеуказанную ошибку Для решения проблемы просто закройте редактор редактора интерфейсов. то есть просто выберите файл кода из своего проекта, чтобы вы были в редакторе исходного кода.

1 голос
/ 24 июля 2010

Я мог бы решить, изменив название проекта.

[project]-[Rename] menu. "phase1 (new)" -> "pahse1"
1 голос
/ 02 февраля 2010

решил мою проблему !!!

Я случайно обнаружил, что каким-то образом пробел "" попал в Имя продукта моего приложения, поэтому он назывался "First Second.app" вместо "FirstSecond.app". После удаления места проблема исчезла!

Я изменил это здесь: щелкните правой кнопкой мыши на цели Получить данные Вкладка «Сборка» Раздел упаковки Название продукта <- имя здесь будет использоваться для имени пакета (.app) </p>

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

Ура, Нильс

...