問題タブ [xcode9.2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - カスタム CocoaPod フレームワークと他の CocoaPod
いろいろ書かれていますが、いまだによくわかりません。
だからここで私がやっていること:私はあちこちのチュートリアルから借用したコードでCocoapodテストフレームワークを作成しました。レポ
ポッドファイル
フレームワークでは http 呼び出しが必要だったので、フレームワーク ワークスペースで Alamofire と SwitfyJSON ポッドを使用しました。ビルド プロセスが成功すると、次の 3 つのフレームワーク ファイルが得られます。
- CocoaPodTestFramework.framework
- Alamofire.framework
- SwiftyJSON.framework
今、それをアプリで使用したいときに、フレームワークをテストするためのテストアプリをいくつか作成しました。
- Swift: アプリは cocoapod (ワークスペースではない通常の Xcode プロジェクト) を使用していません。3 つのフレームワークすべてをリンクするだけで機能します。
- Objective-C アプリの場合、同じことを行ったところ、うまくいきました。
- Cocoapods を使用する別の Swift アプリで、Podfile に以下を追加しました
サンプルアプリの Podfile
ここで問題が発生します。アプリをビルドしようとするたびに
no such module 'Alamofire'
、参照フレームワークとアプリで取得しますno such module 'CocoaPodTestFramework'
それ以来、さまざまな投稿/フォーラム/問題を読んでいましたが、修正方法を理解できず、アプリ Podfile にも追加しようpod 'Alamofire'
とpod 'SwiftyJSON'
しましたが、それでも同じエラーが発生しました。また、フレームワークの .podspec (s.frameworks) ファイルに「Alamofire」と「SwiftyJSON」を追加しようとしましたが、エラーが発生しました。
それで、これに対する回避策があるかどうか、またはまったく不可能かどうかを知りたいですか?
サンプルアプリのサブモジュールとしてフレームワークプロジェクトを使用する場所を読んでください。これで問題は解決しますか?はいの場合、コードを共有したくない場合、.frameworkファイルのみを共有するコードを送信せずに、他の誰かがこのポッドを使用するにはどうすればよいですか? (基本的には、共有できないソースですが、他のポッドを使用する必要があるSDKが必要です:P、その方法を検索するgithub部分もスキップしたいと思います)
誰でも私を助けてくれますか?