Предупреждение во время архива. Приложение с расширением iOS 8 в Xcode 6

У меня проблема при архивировании моего приложения.

Я создал новую цель для расширения iOS 8.

Когда я архивирую приложение, я получаю предупреждение.

Предупреждение

"Предупреждение PBXCp", "предупреждение: пропуск полосы фаз копирования, двоичный код подписали: /Users/Library/Developer/Xcode/DerivedData/App/ сборки/полупродукты/ArchiveInter опосредует /AppName/IntermediateBuildFilesPath/UninstalledProducts/AppExtappex/Appe х"

Приложение находится в Objective-C.

Ответ 1

В настройках целевой настройки Xcode проверьте параметр "Отладка отладки во время копирования". Его высказывание о том, что оно не может выводить символы отладки, поскольку расширение уже было подписано.

Ответ 2

Если вы создаете совершенно новый образец проекта и Today Extension в Xcode 6.2, значения по умолчанию устанавливаются как NO для удаления символов отладки.

enter image description here

Ответ 3

Скопировано из: fooobar.com/questions/93278/...

"Скомпилированный код обычно содержит отладочную информацию. полезно для проверки текущего кода в отладчике, но тем более для оптимизированный код, который вы отправили бы в дистрибутивах. Поэтому он получает стриптиз во время сборки архива.

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

Чтобы исправить предупреждение, просто измените оба значения на НЕТ. Удаление их не работает, потому что значение по умолчанию по-прежнему равно YES для обоих. Проект шаблоны, поставляемые с Xcode 6.3, по умолчанию отключены. Только проекты, которые были запущены со старыми шаблонами, по-прежнему имеют ДА строка выпуска.

Источник: https://www.cocoanetics.com/2015/04/skipping-copy-phase-strip/

Ответ 4

Рамка/расширение уже разделена и код по умолчанию подписан. Проект приложения не может обнаружить, что структура уже была лишена и выдает безобидное предупреждение. Вы должны не отключить его или ваше приложение не будет удалено.

Ответ 5

Кажется, что существует некоторая путаница, окружающая эффект Strip Debug Symbols When Copy, я рекомендую прочитав эту статью за дополнительной информацией: Пропуск фазы фаз копирования.

Вот мои ключевые выводы от изучения этого вопроса:

  • При создании нового проекта с Xcode 6.2 или более поздними значениями в файле проекта НЕТ для обоих параметров по умолчанию (Debug и Release) для этого параметра.
  • Установка значения YES в настройке Release и выполнение Архива Продуктов не влияет на сгенерированный бинарный размер приложения (я рекомендую вам проверить это с помощью тест на собственные проекты).
  • Отладочные символы, используемые для Sybolication отчетов о сбоях iOS из внешнего .dsym файла, который отделен от приложения поэтому я не ожидал, что таблица символов будет включена в двоичный файл.

Ответ 6

Отметьте опцию "Стиль полосы" в настройке сборки Xcode. Если это "Неглобальные символы", измените его на "Все символы". это может решить проблему, но я не знаю, есть ли другие проблемы, вызванные этим изменением.

Ответ 7

В разделе "Развертывание" в настройке сборки вашего объекта найдите Strip Debug Symbols During Copy и установите для него YES для любых производственных сборок.

enter image description here

Ответ 8

Что сработало для меня, было следующее:

Я редактировал схему, которую я архивировал. В этом окне я выбрал "Запустить", а затем вкладку "Информация". В "Конфигурации сборки" я изменил его на "Release". Я просто изменил его на "Отладка" (опция по умолчанию), и это предупреждение ушло.

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

Ответ 9

Это, вероятно, потому, что вы архивируете с помощью схемы DEBUG. Если вы выберете схему RELEASE, тогда опция "strip debug symbols во время копирования" установлена ​​в YES, и у вас нет этого предупреждения.

Я предлагаю архивировать с настройками DEBUG для бета-тестирования, но с настройками RELEASE для публикации в App Store.