2013-08-16 4 views
3

У меня есть файл, который я создаю в папке ${SRCROOT} моего проекта iOS при запуске. Я хочу скопировать этот файл, чтобы при создании моего приложения он был встроен в пакет.Скопируйте динамически созданный файл в встроенный пакет приложений

E.g.

  • Когда приложение построено создать файл xyz.txt
  • Я хочу этот файл должен быть скопирован в приложение как обычный ресурс Э.Г. MyApp.app/xyz.txt

Вот что я пробовал:

Я создал Build Phase ->Run Script со следующим:

ф «$ {SRCROOT} /xyz.txt $ {DSTROOT} /xyz.txt

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

Как скопировать созданный файл xyz.txt в основной пакет приложений в качестве фазы сборки?

+0

Вы не можете сделать это с помощью «Копировать Bundle ресурсов» на вкладке Построить фазы XCode? –

+0

Звучит не так, потому что это не локальный ресурс, пока процесс сборки не завершится и файл не будет создан – Justin

+0

@MarcusAdams Justin прав, файл не существует на диске до сгенерированного. Этот вопрос является упрощенным примером. – danielbeard

ответ

0

От Xcode 7.3, кажется, что $ {BUILT_PRODUCTS_DIR} указывает на другое место и вы не можете получить путь к файлу с помощью NSBundle.pathForResource()

По крайней мере, когда вы пытаетесь скопировать plist o r некоторый файл в тестовый комплект.

Это то, что работает для меня (в Run Script):

cp "${SRCROOT}/App/Resources/Custom.plist" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MyPlist.plist" 
Смежные вопросы