4

プラグイン (ここではロード可能なバンドル) に依存して動作するプログラムを開発したいと考えています。複数のプラグインが同じAFNetworkingリソースを使用してネットワーク リクエストを行うように求められます。AFNetworkingしかし、どこに置くべきか、CustomPluginProtocolヘッダーがわかりません。

これが私のプログラム構造が今のところどのように見えるかです:

MyApp.xcodeproj
  - AFNetworking
    - Header.h
  - Plugins
    - Plugin1.xcodeproj
      - PrincipalClass.m
    - Plugin2.xcodeproj
      - PrincipalClass.m
  - Classes
    - CustomPluginProtocol.h
    - MainClass.m

もちろん、すべてのprincipalClassfromPluginNは に準拠していCustomPluginProtocolます。

  • バンドルごとにヘッダーをコピーする必要がありますか?
  • プラグインのメイン プログラムAFNetworkingヘッダーだけを含めることはできますか? もしそうなら(そしてそれが今のところ私がしていることです)、私は完成していません。どうすれば入手できますか?

編集

わかりましたので、私の質問が明確ではなかったかもしれません。

プラグインでメイン アプリケーションのソースを使用するようにしCommonClass.mますCommonClass.h。プラグインはバンドルに必要CommonClass.hですか? そうでない場合、プラグイン スコープにいるときに補完を有効にするにはどうすればよいですか?

4

1 に答える 1

0

次の 2 つのオプションがあります。

1)ヘッダーを含むフレームワークを作成します<Your Framework>/Headers/

2) ヘッダーを開発者に渡すだけ

オプション 1 の方が理解しやすく、すべてを追跡しやすいため、私はオプション 1 を好みますが、Photoshop などのアプリは常にオプション 2 を使用するため、完全に実行可能です。オプション 1 では、開発者は作成したフレームワークを Xcode プロジェクトに追加し、#include <FrameworkName/HeaderName.h>. オプション 2 では、ヘッダーのフォルダーを提供し、ユーザーにとって便利な場所に置き、それをヘッダー検索パスに追加し、#include "FolderName/HeaderName.h".

于 2012-07-08T15:11:44.563 に答える