У меня есть фаза «Выполнить сценарий» на моей цели, которая отображает руководство в формате PDF. Я хочу включить это руководство в свой архив Xcode продукта.

Как мне указать Xcode из сценария, какие файлы добавить в свой архив на этапе архивирования?

В настоящее время сценарий помещает PDF-файл в BUILT_PRODUCTS_DIR, но этого, похоже, недостаточно.

xsltproc -o >(fop -fo - -pdf "$BUILT_PRODUCTS_DIR/doc/$TARGET_NAME.pdf") \                                                                                                                                                       
    --stringparam use.extensions 0 \ 
    --stringparam fop1.extensions 1 \ 
    --stringparam draft.mode no \
    --stringparam admon.graphics 1 \ 
    --stringparam admon.graphics.extension .svg \
    /opt/local/share/xsl/docbook-xsl/fo/docbook.xsl \
    "$TARGET_NAME/manual.xml"
4
lhunath 25 Авг 2011 в 14:20

2 ответа

Лучший ответ

Вы можете добавить сценарий пост-сборки в действие «Архив», используя переменную среды ARCHIVE_PRODUCTS_PATH.

  1. Выберите меню «Продукт»> «Редактировать схему».
  2. Разверните действие «Архив»
  3. Добавьте сценарий запуска пост-действия:

    cp "/path/to/some/file" "${ARCHIVE_PRODUCTS_PATH}/somefile"
    

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

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

7
Cristy 3 Фев 2012 в 00:43

Я предполагаю, что вы имеете в виду, что хотите включить PDF-файл в пакет приложения. Сделайте следующее:

  1. Откройте проект Xcode и создайте пустой файл с именем вашего PDF-файла в группе ресурсов проекта.
  2. Щелкните значок проекта и просмотрите этапы сборки проекта. Проверьте этап копирования ресурсов пакета, чтобы убедиться, что ваш новый файл находится среди ресурсов, которые нужно скопировать.
  3. Настройте сценарий, который создает ваш PDF-файл, так, чтобы он заменял пустой файл. Ему просто нужно удалить существующий файл и добавить новый файл с тем же именем в то же место.

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

Если вместо этого вы имеете в виду, что хотите, чтобы PDF-файл был включен в архив, но отдельно от пакета приложения, я не уверен, что есть способ сделать это. Архив Xcode - это, по сути, просто заархивированное приложение и файл символов.

0
Caleb 1 Сен 2011 в 13:38