2017-03-23 8 views
0

iOSアプリに追加された静的ライブラリのシンボルに、同じアプリで追加されたフレームワークからアクセスすることは可能ですか?iOSアプリに埋め込まれたスタティックライブラリに、同じアプリ内のフレームワークから埋め込むことができます

私は、顧客が購入する第三者静的ライブラリに依存しているiosフレームワークを構築しようとしています。そのため、顧客は静的ライブラリをアプリに追加します。

しかし、私のフレームワークは、アプリケーションに追加された静的ライブラリからシンボルを読み取る必要があります。

すべての参考になるでしょう。

- おかげで、 サイードユスフ

答えて

1

あなたはそれを行うためにその静的ライブラリに対してあなたのフレームワークをリンクする必要があります。それ以外の場合は、その静的ライブラリのシンボルにアクセスすることはできません。それらはお客様のアプリケーションに組み込まれているためです。

+0

私は、ユーザーが自分のアプリにそれを持っている場合、重複するシンボルをリンクすると思います。 – Tj3n

+0

お客様は、その静的ライブラリをアプリケーションにリンクする必要はありません。 U'sufのフレームワークにリンクする必要があるのは、必要なシンボルがすでに含まれているからです。 – batu

0

依存マネージャーとして「Cocoapods」を使用すると、あなたが望むあなたを取得します:

たとえば

- Alamofireネットワーキングフレームワーク使用していますフレームワーク:あなたのフレームワークプロジェクト作成

  • 使用Cocoapodsを

    1. をあなたのポッドファイルに 'pod' Alamofire '、'〜> 4.0 ''を追加してください。
    2. フレームワークをビルドし、このフレームワークを使用する予定のプロジェクトに追加します。あなたのアプリプロジェクトで
    3. もそれだあなたのpodfile

    に ' '「ポッド' Alamofireを追加〜> 4.0'。ところで

    - アプリのプロジェクトはそのpodfileに依存フレームワークを追加しない場合、あなたはそのようになりますアプリをビルド時にリンカエラーが表示されます:

    「dyldの:ライブラリではありません読み込まれた:@ rpath/Alamofire.framework/Alamofire から参照:/private/var/containers/Bundle/Application/8B381B5F-6B86-4CDD-8A49-E0CBF9C04786/test.app/Frameworks/MyFramework.framework/MyFramework 理由:image見つからない」

    希望があります。

  • +0

    サードパーティのフレームワークが手動でインストールされている場合は、ほかに何か方法がありますか? – Tj3n

    +0

    もしそれが手動でインストールされていれば、私は良い解決策を考えることができません(しかし、それは私だけです。 – Kobi