2

XcodeでwwwリソースをPhoneGapベースのiPhoneアプリにコピーすることができません。Gitサブモジュールの使用を検討しましたが、アプリはさまざまなプラットフォーム(iPhone、Androidなど)で動作する必要があり、ブランドも異なる(画像、css、一部のファイルへの小さな変更)必要があるため、完全な問題は解決しません。

私は、外部コアwwwフォルダーを作成し、さまざまなプロジェクトのすべてのファイルにシンボリックリンクを作成するソリューションで終了しました。プラットフォーム上またはブランディング要件のためにファイルに特別な注意が必要な場合は、シンボリックリンクのそのインスタンスを実際のファイルに置き換えるだけで済みます。

これはすべて魅力のように機能しますが、何らかの理由でXcodeforはシンボリックリンクされたリソースを電話にコピーしません。誰かがこれを機能させる方法を知っていますか?または確かな代替手段。これを修正するのに1日かかるとしても。

ありがとう。

4

2 に答える 2

8

このソリューションは、ビルド時にシンボリックリンクを取り込むために完全に機能しました。この方法を使用すると、すべてのプラットフォーム用のPhonegapソリューションを構築し、コードの重複を最小限に抑えてブランドを変えることができます。

つまり、phonegap wwwのすべてのコンテンツを含む共通ディレクトリを作成し、これをさまざまなプロジェクト(プラットフォームの違いまたはブランドの違い)からシンボリックリンクします。Xcodeでビルドするには、プロジェクトの実行スクリプトに次を追加します。

rsync -pvtrlL --cvs-exclude \
    $PROJECT_DIR/../Resources* \
    $BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH

注:BlackBerry用にビルドする場合は、シンボリックリンクも逆参照する必要があります。

于 2012-06-01T15:28:10.423 に答える
2

シンボリックリンクを使用する必要はないはずだと言いたいだけです。フォルダをxcodeにドロップするだけで、ファイルをコピーしないでください。

私の場合、共有フォルダーは「モバイル」と呼ばれていたため、次の実行スクリプトを作成する必要がありました。

mv $BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/mobile $BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/www

これは単にディレクトリの名前を変更するだけなので、Cordovaは探しているものを見つけることができます。

于 2013-01-09T01:34:30.070 に答える