最も詳細なCocoaPods使用チュートリアル、および一般的なエラーメッセージ

5800 ワード

原文使用リンク---エラーリンク
Swiftにおけるネーミングスペースの存在により、CocoaPodsが第三者導入の第一選択となり、本稿ではCocoaPodsの統合、使用、よくあるエラー報告のまとめについて詳しく紹介する
CocoaPodsとは?
CocoaPodsはiOSエンジニアリングにサードパーティのライブラリに依存する管理ツールを提供しています.CocoaPodsにより、各サードパーティのライブラリのバージョンをより容易に管理でき、多くの構成を必要としません.デルのプロジェクトのサードパーティ製ライブラリを直感的、集中的、自動化して管理します.
サードパーティ製ライブラリを追加する場合は、関連する依存ライブラリの山をインポートし、更新するときも削除して再インポートして構成する必要があります.サードパーティ製ライブラリを更新する必要がある場合は、手動でライブラリを削除し、新しいライブラリをインポートして構成します.これらは面倒で意味のない仕事です.
CocoaPodsを使用してサードパーティのライブラリを管理し始めると、かなりの構成しか必要ありません.他のすべてはCocoaPodsに管理すればいいので、より安心して使用できます.
CocoaPodsのインストール
1.まずgemを最新バージョンに更新し、端末に$sudo gem update--systemと入力し、「$」をコピーしないように注意する.後で表示されます.
更新gem 2.持参したrubyミラーを削除し、端末入力:gem sources--removehttps://rubygems.org/. 3.淘宝のミラーを追加し、端末入力:gem sources-ahttps://gems.ruby-china.org/(元の淘宝鏡像https://ruby.taobao.org/もう使えません.4.gem sources-lで置換ミラーの使用が成功したことを確認できます.結果はhttps://gems.ruby-china.org/そうです.
ミラーを変更5.CocoaPodsをインストールし、端末入力:sudo gem install cocoapods.後で表示されます.
CocoaPods 6.をインストールし、CocoaPodsを構成し、端末入力:pod setup.
CocoaPodsを構成するには、待機プロセスが少し長い場合があります.成功すると、次のようになります.
ここにCocoaPodsが正常にインストールされました.
サードパーティ製ライブラリの検索
例えばMJExtensionを検索して、端末は入力します:pod search MJExtension、初めて彼を検索してインデックスを作る必要があって、しばらく待っていればいいです.
インデックス作成が完了すると、自動的に新しいページに入って検索結果を表示し、上下にスライドしてより多く表示し、終了するにはwqを押すといいです.後で検索するとインデックスを作成する必要はありません.
検索結果をサードパーティ製ライブラリからプロジェクトに導入
まずデスクトップにTestプロジェクトを新規作成し、MJExtensionを導入するプレゼンテーションを行います.最初のファイルディレクトリはこうでした
元のディレクトリ.png 1は、まず端末を開き、cdはTestパスの下にあります.
Test
2.Podfileファイルを生成して編集し、vim Podfileとしてコマンドします.インポートするサードパーティはここに記入します.入ったらIキーを押して編集状態に入り、書き終わったらescを押してshift+zz(またはshift+:,wq)を押すと保存終了します.下の動図には全部あります.Podfileのフォーマットは、「Test」がtargetの名前です.platform:ios,'8.0'target'Test'do pod'MJExtension','~>3.0.13'end 3.インストール、コマンド:pod install.
サードパーティのインストールに成功したら、プロジェクトに使用できます.現在のプロジェクトファイルはこうなりました
スクリーンショット2016-09-07 23.23.19.pngまではTest.xcodeprojをダブルクリックしてプロジェクトを開いていましたが、これからはTest.xcworkspaceをダブルクリックして開きます.開いた後、プロジェクトの中に赤い枠の部分が多くなっていることがわかり、MJExtensionが導入されていることがわかります.
複数のファイルはサードパーティを使用
MJExtensionのヘッダファイルを導入すると、#importまたは#importができますが、#import「MJExtension.h」を入力するとプロンプトが表示されません.強制入力もコンパイルできますが、不快な感じがします.この問題を解決する方法は、プロジェクトのBuild SettingsでSearchを検索し、User header search pathsに$(SRCROOT)を追加してrecursiveを選択することです.
ヘッダファイルが提示しない解決策
#import"MJExtension.h"を提示できるようになりました.それから私たちはプロジェクトの中でMJExtensionの方法を使うことができます.
MJExtensionを使用して新しいサードパーティを追加
使用中に他のサードパーティを追加したい場合は、Podfileに追加し、端末がpod installを実行すればいいです.
サードパーティの追加
CocoaPodsのサードパーティを更新します.
サードパーティ製ライブラリには、メンテナンスのアップグレードが行われています.プロジェクト内のサードパーティ製ライブラリのバージョンを更新するには、時間を隔てなければなりません.端末にコマンドpod updateを入力するだけでいいです.
pod installまたはpod updateが遅いという問題が発生した場合、上記の2つのコマンドを実行するとCocoaPodsのspecウェアハウスがアップグレードされ、パラメータを追加すると省略でき、速度が大幅に向上するためです.パラメータを追加するコマンドは、pod install--verbose--no-repo-update pod update--verbose--no-repo-updateです.
CocoaPodsのサードパーティの一部を削除します.
サードパーティ製ライブラリを削除する必要がある場合は、Podfileでライブラリに導入された文を削除し、pod updateまたはpod installを実行するだけです.
CocoaPodsをプロジェクトから削除
もしあなたが今後の使用中にCocoaPodsを使いたくないならどうしますか?簡単です.たくさん出てきたものを削除すればいいのですが、プロジェクトが正常に動作するためには、すでに使用している第三者たちを手動で導入する必要がありますよ.
CocoaPodsのプロジェクトからのアップグレードCocoaPodsの削除
CocoaPodsバージョンをアップグレードするコマンドは、CocoaPodsをインストールするコマンドと同様にsudo gem install cocoapodsです.古いバージョンでcocoapodsをアップグレードするときにOperation not permitted-/usr/bin/xcodeprojを提示したら、コマンドsudo gem install-n/usr/local/bin cocoapods--preに変更すればいいです.
CocoaPodsのアンインストール
CocoaPodsをアンインストールするコマンドはsudo gem uninstall cocoapodsです
CocoaPodsをアンインストールしてコマンドを実行した後、一番下にSuccessfully uninstalled cococoapodsという文字を印刷すると、アンインストールに成功したことを意味します.
CocoaPods Mac Appのインストールと使用
CocoaPodsデスクトップアプリケーション版ダウンロードアドレス:https://cocoapods.org/app アプリケーションを開くと、コマンドラインツールをインストールするかどうかを示すメッセージが表示されます.installを選択すると、コマンドラインでPodを使用することもできます.上記の手順を省いて、CocoaPodsを便利かつ迅速に使用できます.
コマンドラインツールをインストールするかどうかTestプロジェクトにサードパーティライブラリ1を追加する場合は、File-New Podfile from Xcode Projectを選択し、プロジェクトのProjectファイルを選択します.
項目2.自動生成されたPodfileを記入し、インストールします.
Podfileはそれから工事を開くことができます.コマンドラインよりずっと簡単ではありませんか.注意:Cocoapods.app削除してコマンドを実行するとエラーが発生する可能性があります:Unable to locate the CocoaPods.appアプリケーションbundle.Please ensure theアプリケーションis available and launch it at least once
よくあるエラーのまとめ
エラー1、
Podfileファイルに書かれているサードパーティ製のフレームワークが使用できず、見つからない場合はPodsフォルダを表示し、必要なサードパーティ製のフレームワークをダウンロードしたかどうか、なければpod update
エラー2、
Could not automatically select an Xcode project. Specify one in your Podfile like so:xcodeproj 'path/to/Project.xcodeproj'
Podfileファイルにプロジェクトディレクトリを指定すればいいxcodeproj'Demo/Demo.xcodeproj'
ただし、cocoapodsバージョン(1.0.0以降)では、次の警告が表示される場合があります.
[!] xcodeproj was renamed to project . Please use that from now on.
この場合はxcodeprojをプロジェクトに変更するだけです
project 'Demo/Demo.project'
エラー3、
The dependency AFNetworking (~> 3.0) is not used in any concrete target.
Podfileにtarget'プロジェクト名'do(target'Demo'doなど)を追加
エラー4、
[!] Invalid Podfile file: syntax error, unexpected end-of-input, expecting keyword_end.
Podfileの末尾にendを追加
エラー5、
Unable to find the Xcode project /Volumes/BIAO/iOS/code/MBWB.xcodeproj for the target Pods .
Podfileでプロジェクト'Demo/Demo.project'をプロジェクト'Demo.project'に変更
エラー6、
build diff:/../Podfile.lock: No such file or directory
プロジェクト設定のBuild PhasesでCheck Pods Manifest.lockおよびCopy Pods Resourcesを削除
もう一つの更新が遅い問題があります.pod installを実行してもpod updateを実行してもAnalyzing dependenciesに引っかかって動かないということです.
なぜなら、以上の2つのコマンドを実行するとCocoaPodsのspec倉庫がアップグレードされ、パラメータを1つ追加するとこのステップを省略することができ、速度が大幅に向上するからです.パラメータを追加するコマンドは次のとおりです.
pod install --verbose --no-repo-update
pod update --verbose --no-repo-update