2

同じクラスを使用する iphone アプリケーションはほとんどありません。これらのアプリケーションは正常に動作しますが、アプリケーションで何かを変更したい場合に問題に直面します。すべてのアプリケーションに新しい機能を 1 つ追加するとします。このために、すべてのプロジェクトで同じ変更を行う必要があります。そこで、アプリケーションのすべての共通リソースを含むマスター アプリケーションを作成したいと考えています。各アプリケーションは、マスター アプリからリソースを取得し、余分なものがある場合はさらに追加します。ここでワークスペースの概念を使用できますか? ワークスペースやワークスペースでの依存関係の管理についてはよくわかりません。誰でもこの問題で私を助けることができますか? お願いします。前もって感謝します。

4

1 に答える 1

2

ワークスペースは、グループ化された 1 つまたは複数のプロジェクトです。あなたが説明した種類の問題を解決する 1 つの方法は、プロジェクト間で共有するすべてのコードを保持するフレームワークまたはライブラリ プロジェクトを作成することです。その後、さまざまなアプリを構築するプロジェクトに、このフレームワークまたはライブラリを含めることができます。すべてを 1 つのワークスペースにまとめた方が簡単な場合もあれば、アプリの複雑さやワーク スタイルによってはそうでない場合もあります。オプションは次のようになります。

すべてを一緒にワークスペース

  • 共有図書館Aプロジェクト

  • 共有フレームワーク B プロジェクト

  • アプリ C プロジェクト

  • アプリ D プロジェクト

  • ...

    また

アプリ C ワークスペース

  • 共有図書館Aプロジェクト
  • 共有フレームワーク B プロジェクト
  • アプリ C プロジェクト

アプリ D ワークスペース

  • 共有図書館Aプロジェクト
  • 共有フレームワーク B プロジェクト
  • アプリ D プロジェクト

すべてをまとめることの主な欠点は、非常に多くのプロジェクトが発生する可能性があり、一度に関心のあるプロジェクトはごくわずかであることです。この場合、Xcode ツールバーの左上にあるプロジェクトを選択して、ビルドする特定のアプリを選択します。

アプリを個別のワークスペースに分割することの主な欠点は、プロジェクトを一度に 1 つのワークスペースでしか開くことができないことです。そのため、アプリ C とアプリ D を同時に変更する場合、共有ライブラリ A と共有フレームワーク B は一度に 1 つしか開くことができないため、両方のワークスペースを同時に開くとエラーが発生します。

物事を論理的に関連するプロジェクトに分割すると、多くの柔軟性が得られます。一方で、個別のプロジェクトごとに最上位の構成変更を行わなければならないという代償を払います。xcconfig ファイルを使用して、すべてのプロジェクトに共通の構成パラメーターを 1 か所に保存することで、これを回避できます。Rob Napier のUsing Xcconfigに関するブログで、これを行う方法が説明されています。

于 2012-07-24T10:29:23.157 に答える