12

アプリケーションのバンドルを作成し、ファイルをバンドルに配置するのに問題があります。

たとえば、Facebookは、フレームワークを使用してiPhoneアプリケーションのバンドルを開発しました。同様に、多くのアプリケーションで再利用できるバンドルを作成したいと思います。

私の質問は次のとおりです。

  • あらゆる種類のアプリケーションのバンドルを作成するには、どのような手順に従う必要がありますか?
  • バンドルを作成する際に注意すべきことは何ですか?
4

2 に答える 2

13

まず、質問には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

(私はバッシュハッカーではないので、これはおそらく無数の方法で改善することができます。提案を歓迎します!)

これにより、フォルダー階層が取得され、MyAssets.bundleという名前の単一のディレクトリーにフラット化されます(階層は嫌いです)。バンドルをインポートするプロジェクトでは、このスクリプトを別のビルドフェーズからトリガーして、変更が自動的に追跡されるようにします。

フレームワークバンドルの作成方法を学びたい場合は、もう少し複雑です(特定の規則に従い、plistに情報を含める必要があります)が、iPhoneバンドルの場合、これで十分です。

于 2010-04-05T18:50:27.887 に答える
8

あなたもこれを行うことができます:

ファインダーでフォルダーを作成し、それにファイルを追加し、bundlename.bundleに名前を変更します

Xcodeにドラッグ-成功!

アクセスするには、PathToMainBundle +"/bundlename.bundle"の形式を使用します

ソース:https ://stackoverflow.com/a/5277452/736384

于 2012-12-20T12:01:39.470 に答える