为了提供pod install
的速度,常规操做都会切换到国内的镜像git
$ cd ~/.cocoapods/repos $ pod repo remove master $ git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git master 复制代码
官方难道看不到吗?速度这是刚需😂github
从1.7.2
开始,已经彻底切到CDN
上了。(我对CDN不熟,总之就是提速了,比以前快了,不用换镜像了) 1.8
以上甚至把CDN
做为默认源bash
使用,在Podfile
最上面添加便可markdown
source 'https://cdn.cocoapods.org/' 复制代码
实际体验,确实快了很多网络
install! 'cocoapods', :generate_multiple_pod_projects => true target 'MyApp' do use_frameworks! pod 'Moya', :project_name => 'Networking' pod 'Alamofire', :project_name => 'Networking' pod 'Result', :project_name => 'Networking' target 'MyAppTests' do inherit! :search_paths pod 'OCMock', :project_name => 'Testing' end end 复制代码
官方教程写得很详细了, 我只取了目前对我有用的两点oop
install! 'cocoapods', :generate_multiple_pod_projects => true
改变了库的依赖方式,以前是以Targets
方式依赖post
使用了这个功能后,所有改变成项目的形式依赖了 spa
听说这样作能够提升解析速度,这位老哥分享的3d
project_name
这个是为了加强第一个出的新功能,改变依赖的同时,分组。使某些相同功能的库能分在同一个项目下面。code
pod 'Moya', :project_name => 'Networking' pod 'Alamofire', :project_name => 'Networking' pod 'Result', :project_name => 'Networking' 复制代码
内部依赖库不能分组?
若是某一个库内部依赖了其余库,是不能分组到目的项目中的。不过问题也不是很大,若是真的较真,非要把它分出来。能够把内部依赖库再pod
指向一下。
以YYWebImage
为例子,内部依赖了YYCache
、YYImage
pod 'YYWebImage', :project_name => 'Image' 复制代码
若是只设置了YYWebImage
到Image
项目中去,那么YYCache
、YYImage
就会跑到外面去,不够完美😂,能够把内部依赖也指向一下
pod 'YYWebImage', :project_name => 'Image' pod 'YYCache', :project_name => 'Image' pod 'YYImage', :project_name => 'Image' 复制代码
这样全部的都放在一个项目中了🎉
2019.11.19 更新
:好像部分老哥也没有体验到快了,那么速度是否真的比镜像快,可能要打上问好❓ 不过惟一的好处就是官方支持,不会担忧哪天不维护了。
而后我看到部分老哥评论说失败的状况,我从新写了个demo
试了下,确实会出现莫名的失败
好比我安装到Masonry
时就失败了,😂,不知道是否是网络问题。而后再次pod install
又好了。
[!] Error installing Masonry [!] /usr/bin/git clone https://github.com/cloudkite/Masonry.git /var/folders/n6/_ynn7k9j6y383r7q5wnkjgl80000gn/T/d20191119-8908-dfsdoo --template= --single-branch --depth 1 --branch v1.1.0 Cloning into '/var/folders/n6/_ynn7k9j6y383r7q5wnkjgl80000gn/T/d20191119-8908-dfsdoo'... fatal: unable to access 'https://github.com/cloudkite/Masonry.git/': Operation timed out after 300012 milliseconds with 0 out of 0 bytes received 复制代码