0

リソースに .bundle を持つ Cocoa アプリがあります。アプリとバンドルの両方に同じプライベート フレームワークがあります。それぞれに独自のコピーが含まれています。

すべてが Xcode ワークスペースでセットアップされます。このワークスペースには、Framework、Bundle、および Cocoa App の 3 つのプロジェクトがあります。フレームワークはビルドされたディレクトリから参照され、「ファイルのコピー (フレームワークへ)」フェーズで各ターゲットのビルド フェーズにコピーされます。

バンドルをコンパイルして製品を検査すると、フレームワークが表示されます。コンパイルされたアプリを調べると、フレームワークとバンドルが表示されます。

実行すると、個別にコンパイルされたバンドルとアプリが期待どおりに機能するため、プライベート フレームワークを追加する私の方法は機能します。

問題は、アプリ内にあるバンドルにあります。フレームワークは含まれていません。そして、このため、実行できません。

ここに画像の説明を入力

ここで何が起こるか知っている人はいますか?そして、それを修正する方法は?

現在、バンドルを個別にコンパイルし、アプリ内のものを手動で置き換えています。

4

1 に答える 1

0

多くの場合、質問を投稿してから数分後に答えを見つけました。

次の 2 つの簡単な手順で問題を解決できます。

  1. .bundle の Resources Destination を使用して、新しい「ファイルのコピー」ビルド フェーズを追加します。
  2. 「バンドル リソースのコピー」フェーズから .bundle を削除します。

これがバグなのか、それともこの動作の背後に理由があるのか​​はまだわかりません。

于 2013-10-08T11:52:12.223 に答える