これは単なる情報的な質問です。私はiOSでフレームワークを作るためのいくつかの方法を検討しています。Objective Cフレームワーク/静的ライブラリは第三者フレームワークで構成できます
私は スウィフトピュア枠組みを作った: - そこ私はあなたが.xocdeprojectに含ま.frameworkを使用するようにアプリケーションプロジェクトにxcodeprojectを含める必要が、ことを知りました。だから私はこれが第三者にコードを渡すための安全な方法ではないと思っていましたし、自分のフレームワークにサードパーティのフレームワークを含める方法も見つけられませんでした。
目的静的ライブラリ: - このタイプライブラリで 、システムは安全で、実装部品を知らない人つもり使用はしかし、判明した.Aファイルを生成している私は、第三を含める場合エンドユーザーに、それをコンパイルするアプリケーションを終了するための第三者プロジェクトを含めるように依頼しなければなりません。エンドユーザーには、私が望んでいないすべての依存関係を表示します。
私の問題は、すべてのサードパーティのフレームワークで構成されるフレームワークを作りたいと思っていますが、それらからのコードは必要に応じてエンドユーザが使用することができますが、エンドユーザは隠してしまいます。私の枠組みのリストには載っていません。
出口がありますか?
私は多くのリンクを経て、多くは、一人が、すべてのヘッダファイルとフレームワークを取得するように要求されたこの記事では、この疑問にも
同様
Adding FacebookSDK.framework into my own Static library
を持っていることを見出しましたファイルを作成し、それを静的ライブラリに追加してフレームワーク自体を追加するようにビルドしました。
フレームワークのエンドユーザーはどのように彼はこれらのフレームワークの.hのせずに自分のコードをコンパイルします、サードパーティ製のフレームワークのオブジェクトを使用することができますか? – Xvolks
@Xvolks。これらのサードパーティフレームワークの.hファイルをフレームワーク/静的ライブラリに含める方法はありますか? – Saty
あなたがしたいことはベストプラクティスではありません。あなたのフレームワークをFacebookSDKバージョン1とリンクさせ、ユーザーが自分のアプリケーションをあなたのフレームワークとFacebookSDKバージョン2にリンクしているとします。結果のアプリケーションには、各オブジェクトの2つの異なるバージョンがあります。実行時に使用されるバージョンは未定義です。ランダムなクラッシュや奇妙な動作が発生します。 – Xvolks