2017-08-24 16 views
2

私は知っている、多くの同じ質問がありますが、私は私の要件の答えを得ていない。 初めてフレームワークを作成しています。私はRaywenderlichの例を使ってテストフレームワークを作成しました。しかし、私の要件は少し異なります。私は非常に多くの異なるフレームワークを使用し、私のプロジェクトではSQLCipherも使用しました。今、このプロジェクトをフレームワークに変換したいと思います。私はすべてのステップを踏んだが、ビルドしようとすると問題が発生する。競合を避けるために私のフレームワークに追加しなかったので、SQLCypherにエラーが発生しました。最後に、SQLCypherライブラリを追加してエラーなしでビルドを作成しましたが、今ではそのフレームワークを使用してtestProjectでテストするときにリンカーエラーが発生します。私は第三者のための例を見つけませんでした。この問題を解決するために私を助けてください。他のフレームワークとライブラリ依存関係を持つフレームワークの作成方法は?

答えて

1

私は同じ問題がありました。

1つの解決策は、他のフレームワークまたはlibsのすべてのメソッド名を変更することですが、一部のlibはオープンソースではありません。

もう一つの解決策は、ココアポッドを使用することです。しかし、あなたのフレームワークを使用したいユーザ は、同じバージョンの3rdライブラリに応じて、iOS 8.0以上に応じて、cocoapodsを使用して強制されます。私はこの制限とは関係がありません。

フレームワークに3番目のライブラリを依存させないのが最善の方法と思われます。

+0

問題が解決しました。ここで、すべての依存関係を追加する必要があります。だから、私は私のフレームワークで使用したサードパーティを追加し、フレームワークを作成したすべてのフレームワークを追加しました。それは正常に動作していると私はまた、競合を確認します。今、それは起こらないでしょう。 – chaaruu

+0

@chaaruuあなたはこのシーンをテストしましたか?あなたのフレームワークAはフレームワークBに依存し、プロジェクトPはAとBに依存します。ビルドしようとするとシンボル重複エラーが発生します。 – liftlift

+0

はい、私はテストしました。それ以来、私は続けました。 Appleがこの問題を1人の上級者として解決する数ヶ月前に:) – chaaruu

関連する問題