Прежде всего, поскольку ваш вопрос помечен тегом iPhone, вы можете только включать код в свои пакеты на iPhone. Поэтому в основном вы можете использовать только пакеты для упаковки изображений, звуковых файлов и других статических данных.
Когда вы создаете новый проект в XCode, есть возможность сделать целевой пакет пакетом (в разделе Framework & Library), но пакет ресурсов - это просто каталог с суффиксом .bundle. Я создаю мой с помощью этого маленького скрипта:
#!/bin/bash
echo "Building assets bundle."
if [ -d ./MyAssets.bundle ]; then
rm ./MyAssets.bundle/*
else
mkdir ./MyAssets.bundle
fi
find ./assets -type f -print0 | xargs -0 -J% cp % ./MyAssets.bundle
(я не bash-хакер, так что, вероятно, это можно улучшить бесчисленными способами. Предложения приветствуются!)
Это берет иерархию папок и объединяет ее (я ненавижу иерархии) в один каталог с именем MyAssets.bundle. Я запускаю этот сценарий из отдельной фазы сборки в проектах, которые импортируют пакет, чтобы изменения автоматически отслеживались.
Если вы хотите научиться создавать пакеты фреймворков, это немного сложнее (вы должны следовать определенным соглашениям и включать информацию в списки), но для пакетов iPhone это почти все, что вам нужно знать и делать .