CocoaPods是什么?

当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,手动一个个去下载所需类库十分麻烦。另外一种常见情况是,你项目中用到的类库有更新,你必须得重新下载新版本,重新加入到项目中,十分麻烦。所以,你需要 CocoaPods。

CocoaPods应该是iOS最常用最有名的类库管理工具了,上述两个烦人的问题,通过cocoaPods,只需要一行命令就可以完全解决,当然前提是你必须正确设置它。重要的是,绝大部分有名的开源类库,都支持CocoaPods。所以,作为iOS程序员的我们,掌握CocoaPods的使用是必不可少的基本技能了。

如何下载和安装CocoaPods?

在安装CocoaPods之前,首先要在本地安装好Ruby环境

参考如何快速正确的安装 Ruby, Rails 运行环境

http://ruby-china.org/wiki/install_ruby_guide

下面提供一个快捷方法安装CocoaPods:

1.访问 https://github.com/CocoaPods/Specs,然后将Specs项目fork到自己的github账户上

2. 下载GitHub Desktop, 然后clone Specs项目。

3. 将clone的Specs项目的文件夹改名为master,然后拖到/Users/用户名/.cocoapods/repos目录下。

4. 运行pod setup

解释:pod setup的本质就是将https://github.com/CocoaPods/Specs上的Specs项目clone到/Users/用户名/.cocoapods/repos目录下。若此目录下已有Specs项目,则会将项目更新到最新的状态。由于Specs很大,容易导致pod setup失败。这时就需要我们手动安装Specs。若直接从github上下载zip文件,由于缺少git文件,会导致cocoa pods不使用。若用git clone,由于文件过大,容易导致失败。但是使用GitHub Desktop软件,则会提高clone的成功率,并且会给出clone的进度。

使用cocoapods:

利用CocoaPods,在项目中导入AFNetworking类库

1.AFNetworking类库在GitHub地址是:https://github.com/AFNetworking/AFNetworking

为了确定AFNetworking是否支持CocoaPods,可以用CocoaPods的搜索功能验证一下。在终端中输入:

$ pod search AFNetworking

过几秒钟之后,你会在终端中看到关于AFNetworking类库的一些信息。

2.使用Xcode 创建一个项目

打开终端,输入cd /Users/paladinfeng/Desktop/shareSDKDemo/demo

(注:cd后边有个空格,然后接你刚创建的项目的路径就可以了,别告诉我你不会直接拖进去)

创建这个PodFile后在终端中进入(cd命令)你项目所在目录,然后在当前目录下,利用vim创建Podfile,运行:

vim Podfile

3.写入以下内容并保存 小提示:(终端vim文件 按 i 可编辑 ,esc 退出编辑,:wq 可保存退出)

platform :ios, '8.0'

target “target名称” do

pod 'AFNetworking', '~> 3.1.0'

end

CocoaPods报错:The dependency `AFNetworking ` is not used in any concrete target

请点击进去参考:

报错误[!] Pods written in Swift can only be integrated as frameworks; add `use_frameworks!` to your Podfil请点进去参考:

可能是要添加的这个库 不支持swift导致

解决办法:在podfile里面添加 use_frameworks!

platform:ios,'8.0'

#use_frameworks!个别需要用到它,比如reactiveCocoa MyApp为你的项目的名字

defpods

pod'AFNetworking','~>2.6'

pod'ORStackView','~>3.0'

pod'SwiftyJSON','~>2.3'

use_frameworks! //在这里添加,设置支持swift,如果不引进swift相关的类则可以不用写

end

target'MyApp'do

pods

end

就是在加入你需要的那些库之后最后再加一句use_frameworks!

4.导入第三方库

$pod install

pod installpod update区别:

1.使用pod install来安装新的库,即使你的工程里面已经有了Podfile,并且已经执行过pod install命令了;所以即使你是添加或移除库,都应该使用pod install。

2.使用pod update [PODNAME] 只有在你需要更新库到更新的版本时候用。

ps

 当使用pod update遇到 ld: library not found for -ljcore-ios-1.1.1 可以这样解决

小技巧:

最近使用CocoaPods来添加第三方类库,无论是执行pod install还是pod update都卡在了Analyzing dependencies不动

原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:

pod install --verbose --no-repo-update

pod update --verbose --no-repo-update

至此,添加已经完成。可以看到项目目录里面多了4个文件,以后运行工程都使用.xcworkspace文件,而不再用.xcodeproj了。

查看 pod 版本

$ pod --version0.39.0

移除CocoaPods项目中已经配置的类库

1.打开终端,输入cd /Users/paladinfeng/Desktop/shareSDKDemo/demo

(注:cd后边有个空格,然后接你创建的项目的路径就可以了,别告诉我你不会直接拖进去)

创建这个PodFile后在终端中进入(cd命令)你项目所在目录,然后在当前目录下,利用vim创建Podfile,运行:

vim Podfile

2.看到以下内容并保存 小提示:(终端vim文件 按 i 可编辑 ,esc 退出编辑,:wq 可保存退出)

platform :ios, '8.0'

target “target名称” do

pod 'AFNetworking', '~> 3.1.0'(把这一行删掉)

end

3.$pod install

编译运行没有错误完成

转载于:https://www.cnblogs.com/ljcgood66/p/6391164.html

iOS 快捷下载和安装并使用CocoaPods相关推荐

  1. 如何使用电脑共享给苹果iOS设备下载和安装APP

    现在的iTunes已经不能管理应用程序了, 而iMazing不但能够给具有文件共享功能的APP传输文档,还可以给设备安装或者卸载APP,极大地方便了使用者对应用程序的管理. 一.应用程序的下载 借助i ...

  2. iOS软件源怎么找,怎么下载/签名安装?

    iOS软件源怎么找,怎么下载/签名安装? 大家都知道一般来说只有在苹果商店中才能下载安装使用App,因为苹果公司对App有一套严格的审核流程,通过签名机制来保证每一个安装到iOS设备上的App都是经过 ...

  3. 软件配置 | ios系统Clion下载、安装、配置环境

    软件配置 软件配置 | ios系统Clion下载.安装.配置环境 软件配置 下载.安装 g++ Clion 调试 参考链接 下载.安装 调试 本文总结ios系统下Clion下载.安装.配置环境过程和可 ...

  4. ios应用内下载并安装另一个应用

    ios黑科技之实现91助手的效果(app内下载并安装另一个app) 今天分享一个非常牛逼,非常装逼的黑科技--ios应用内下载并安装另一个应用,中间不需要经过appstore. 其实这个技术,就是我们 ...

  5. iOS应用发布流程(一)------相关app证书的申请、下载以及安装

    发布流程总结成三个步骤: iOS应用发布流程(一)------相关app证书的申请.下载以及安装 http://blog.csdn.net/ys371277787/article/details/50 ...

  6. Qt Creator下载和安装(详细教程)以及如何发布可执行程序

    简介 Qt是跨平台的图形开发库,目前由Digia全资子公司 Qt Company 独立运营,官方网址:  http://www.qt.io/  也可以访问Qt项目域名:http://qt-projec ...

  7. android 和ios 混合式开发环境安装

    android 和ios 混合式开发环境安装 1.安装nodejs 官网下载:https://nodejs.org/en/ 下载node-v8.10.0-x64.msi 安装 2.安装ionic和co ...

  8. iOS快捷指令:执行Python脚本(利用iSH Shell)

    文章目录 前言 核心逻辑 配置iSH 安装Python 创建Python脚本 配置启动文件 测试效果 快捷指令 前言 iOS快捷指令所能做的操作极为有限.假如快捷指令能运行Python程序,那么可操作 ...

  9. Python 库pyautogui 0.9.52的下载、安装和使用

    图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面.允许用户使用鼠标等输入设备操纵屏幕上的图标或菜单选项,以选择命 ...

最新文章

  1. CycliBarriar和CountdownLatch(计数器)
  2. fwm环境APP菜品数据加载失败的优化操作
  3. scala 时间格式转换(String、Long、Date)
  4. Android HttpClient GET或者POST请求基本使用方法
  5. java 同一个package import_【编程基础】Java 中的Package和Import
  6. Android中自定义xml文件给Spinner下拉框赋值并获取下拉选中的值
  7. day60 Pyhton 框架Django 03
  8. gateway sentinel 熔断 不起作用_Spring Cloud Alibaba集训营第五天(服务熔断和限流)
  9. 计算机三级网络技术打印,全国计算机等级考试三级网络技术历年真题(整理_打印版)...
  10. GitHub 发布了一款重量级产品,可直接运行代码
  11. 《02》let 和 const 命令
  12. 精心挑选的23款美轮美奂的 jQuery 图片特效插件
  13. Java String常用的数据类型转换
  14. PHP json_encode后的数据有的大括号于中括号
  15. maven常识(列表更新中)
  16. Spring MVC 接收json自动转换JSONObject
  17. js读取cookie,js添加cookie,js删除cookie
  18. docker安装部署和常用命令
  19. Chrome浏览器的自动保存密码提示功能禁用方法
  20. 诊断 Linux 服务器的性能

热门文章

  1. SDL2源代码分析2:窗口(SDL_Window)
  2. FFMPEG结构体分析:AVCodecContext
  3. Media Player Classic - HC 源代码分析 2:核心类 (CMainFrame)(1)
  4. linux实现标准设备输入输出,Linux的标准输入和输出
  5. android java代码打印系统日志_Java快速开发平台源码
  6. 使用proxy转发post请求_3分钟短文 | Linux 使用curl发起post请求的4个常用方式
  7. windows安装ODBC
  8. JMX监测JVM报错
  9. Eclipse设置内存大小
  10. php为什么要创建类,php – 是否有理由为单一功能创建类?