2

私は Cocoapods に恋をしたので、すべてのプロジェクトを Cocoapods に移行したいと考えています。それを行う前に、プロジェクトで外部の非ココアポッド フレームワークを処理する方法についていくつか質問があります。

1) Cocoapods を使用していて、AFNetworkingフレームワークのみを含めたとしましょう。ある時点で、いくつかの CoreGraphic アニメーションを使用する必要があり、使用する必要がありますQuartzCore。AFNetworking はこのフレームワークを使用していないため、QuartzCore は Pods プロジェクトに含まれていません。この状況を処理する最善の方法は何ですか?

「すべてのフレームワークを Pods プロジェクトに配置したので、「アプリ プロジェクト」にはアプリに必要なコードだけを配置した」と考えた方がよいでしょうか。はいの場合、どのように?Pods.xconfigこのコードに追加する

OTHER_LDFLAGS = -ObjC ... -framework QuartzCore

? それとも他の(より良い)方法がありますか?

それとも、「これは Pod ではないので、これまでどおり「アプリ プロジェクト」にフレームワークを追加する」と考えたほうがよいでしょうか。

2) Cocoapods のメイン リポジトリにないライブラリ (HD に保存) があり、Podspecファイルがありません。それをプロジェクトに含める最良の方法は何ですか?

  • そのライブラリのポッドスペックを作成し、:local属性を使用してリンクしますPodfile

  • いつものように、そのライブラリを「アプリプロジェクト」に追加します

もちろん、すべての方法で問題なく機能するので、「外部フレームワークを追加する方法」を尋ねているのではなく、それを行うための最良の方法は何かを尋ねています:)

4

1 に答える 1

4

フレームワーク

CocoaPods は、可能な限り、そのファイルを作業から分離しようとします。CocoaPods はいくつかのファイルを制御する必要があるため、これも必要です。たとえば、Pods.xcconfigは CocoaPods の制御下にあると想定され、インストールのたびに再作成されます。つまり、変更内容はすべて失われます。

したがって、フレームワークが必要な場合は、それをアプリ プロジェクトに追加する必要があります。原則として、一部のポッドにフレームワークが含まれている場合でも、依存関係を削除して更新される可能性があり、プロジェクトが壊れる可能性があるため、これを行う必要があります。

カスタム ライブラリ

ライブラリを再利用する予定がある場合は、どちらの方法でも機能podspecします。オプションを使用する必要がないように、カスタム リポジトリ (wiki を参照) を作成することもでき:localます。

于 2013-01-08T14:02:40.860 に答える