2010-02-02 2 views
11

Мне нужно скопировать несколько файлов в каталог ресурсов приложения во время отладочной сборки. Я думаю об использовании правил сборки, но не знаю, как определить, является ли сборка конструкцией отладки. У меня есть опция компилятора «DEBUG».Скопируйте файл в каталог ресурсов приложений, если выбрана конфигурация отладки

ответ

13

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

Вы можете определить, какая конфигурация строится с помощью переменной окружения CONFIGURATION; вы можете посмотреть другие переменные среды, такие как BUILT_PRODUCTS_DIR, чтобы определить, где разместить свой ресурс. Если вы правильно укажете выход фазы сборки сценария запуска, он будет запущен только тогда, когда вывод необходимо обновить, но не каждый раз, когда вы создаете.

Дополнительная информация о Run Script строить фазы можно найти здесь: Xcode Build System Guide: Build Phases: Run Script Build Phase

Такая же вещь может быть сделано с помощью сценария, правила построения, что полезно, если у вас есть несколько ресурсов, которые вы хотите применить это: Вы можете создайте правило сборки сценария, которое соответствует вашему расширению (например, *.myresource), и используйте настройки сборки и входные файлы, которые передаются вашему сценарию через переменные среды для фактического копирования. Если вы правильно укажете выход правила сборки, он будет запускаться только тогда, когда его ввод будет более новым, чем его вывод, а не каждый раз, когда вы создадите.

Более подробная информация о правилах сборки скриптов доступна здесь: Xcode Build System Guide: Build Phases: Build Rules

+0

связь нарушается, но благодаря – user1244109