文章目录
前言
最近笔者在仿写天气预报App时用到了api调用数据,一般的基本数据类型我们用Xcode中自带的框架就可以转换得到。但是在和风天气api中的图标的格式为svg格式。
似乎iOS13之后Xcode中可以直接使用svg格式的图片,但笔者没有查到对应的资料。笔者就调用了第三方库来使用svg格式的图片,这花了读者一天的时间才安装完成集成第三方库的Cocoapods并对其进行使用,特此写博客记录,如有不足请不吝指出
一、Cocoapods的作用
简单来说,Cocoapods是一种可以定期更新项目中的第三方库,能让用户更加方便使用第三方库的工具。
二、安装Cocoapods
在安装前笔者需要多嘴一句,因为我们的Cocoapods是拿Ruby语言编写的,所以我们下载Cocoapods前需要下载相关的关于Ruby语言的软件
网络上有许多安装Cocoapods的教程,大多是几年前的方法了,有些方法可能并不适配现在Mac,这里给出笔者参考的博客,跟着这篇博客走大概率能成功Cocoapods安装教程
这里需要注意安装Cocoapods时用到的rvm,ruby,RubyGems都最好升级到最新版,随着Mac的更新,CocoaPods要求的ruby等的版本越来越高,举个栗子 :
ERROR: Error installing cocoapods:
The last version of activesupport (>= 5.0, < 8) to support your Ruby & RubyGems was 6.1.7.4. Try installing it with `gem install activesupport -v 6.1.7.4` and then running the current command again
activesupport requires Ruby version >= 2.7.0. The current ruby version is 2.6.10.210.
这是读者安装时碰到的一个错误,这个错误提示表明当前安装的 Ruby 版本不满足 CocoaPods 的要求。CocoaPods 需要的最低 Ruby 版本为 2.7.0,而我当时的 Ruby 版本是 2.6.10.210。
实际上我们通过终端能下载的Ruby版本并不多:
因此笔者建议将Cocoapods所有需要附带安装的软件都从一开始就装到最新版
三、使用Cocoapods
安装完成Cocoapods,我们该如何调用其中的第三方库呢?在刚开始使用时笔者也碰到了很多问题,在这里总结一下笔者的使用方法
- 找到需要使用第三方库的工程文件夹
这里有一点需要注意,文件夹的名字就是我们工程的名字,在后面会用到
- 在终端定位我们的工程位置
这里的方法就是在终端中输入cd + 空格,然后将我们的工程文件夹拖入终端中,这样就成功让终端索引到了我们的工程
cd 工程名
- 在工程文件夹中创建podfile文件
在终端中输入下面的命令
touch podfile
可以看到我们的工程中生成了一个podfile文件
- 打开podfile文件并对其进行编辑
这里以安装AFNetworking第三方库为例作展示
platform:ios,'9.0'
target '工程名' do
pod 'AFNetworking' #这里也可以是其他的第三方库
end
- 在终端中安装我们的第三方库
在终端中输入命令pod install
安装完成后可以看到我们的工程中出现了AFNetworking的库
- 打开原工程文件进行编译操作
打开原工程进行编译操作
这一点一定需要记住,在安装成功我们的第三方库后一定需要打开文件进行编译运行操作(command + r 或 command + b都可以),然后会看到报错:
这是一定的,然后我们关闭文件
- 打开新创建的.xcworkspace进行后续的工作
我们对.xcworkspace进行编译操作发现其是可以编译成功的,然后我们再去点击我们的原工程文件,会出现这样的提示:
也就是说这两个文件我们只能打开一个,但是原工程文件是无法与我们安装的第三方库进行链接的,所以我们的工作台就变为了新创建的.xcworkspace文件,同样的,我们的代码以后都需要写在.xcworkspace文件中才能编译运行
第六与第七步是操作的重中之重,之前笔者就在这几步上困扰了很久,第六第七步的操作原理笔者也不甚理解,但大概应该是让我们的工程与第三方库进行链接的操作
总结
至此Cocoapods的安装以及使用大概也讲的七七八八了,本博客仅供交流学习,如有不足或错误请不吝指出