Cocoapods应用(002-简单使用)
1>.Pod 安装:
--no-repo-update作用
$pod install --no-repo-update //不更新,若想更新只用pod install $pod update --no-repo-update
2>Pod repo 换源
Cocopods 如果输入 pod repo 会出现:
master - Type: git (master) - URL: https://github.com/CocoaPods/Specs.git - Path: /Users/MengYu/.cocoapods/repos/master
Pod source 换源:
$pod repo remove master //下⾯面这两个地址都可以进⾏行行托管 这步的操作是把托管的库全部下载下来 $pod repo add master http://git.oschina.net/akuandev/Specs.git $pod repo add master https://gitcafe.com/akuandev/Specs.git $pod repo update
可选源:https://git.coding.net/hging/Specs.git
3>设置Pod仓库:
$pod setup
5>Cocopods配置
配置Cocospods路径
: /usr/local/bin
Cocospods导入头文件无提示:
BuildSettings -> User Header Search Paths -> $(PODS_ROOT) -> recursive
[!] Could not automatically select an Xcode project. Specify one in your Podfile like so:
project 'path/to/Project.xcodeproj'
问题分析:没有指定工程目录
解决:在Podfile文件里指定下工程目录就行了
# Uncomment the next line to define a global platform for your project platform :ios, '9.0' project 'ShuTiao.xcodeproj' source 'https://github.com/CocoaPods/Specs.git' inhibit_all_warnings! target 'ShuTiao' do pod 'Masonry' pod 'AFNetworking' pod 'SDWebImage' pod 'SVProgressHUD' pod 'YYModel' pod 'IQKeyboardManager' pod 'SocketRocket' pod 'pop' pod 'TZImagePickerController' pod 'Qiniu' #弹幕 pod 'BarrageRenderer' pod 'SVGAPlayer' #腾讯云 # pod 'TXIMSDK_iOS' pod 'UMengAnalytics' # U-Share SDK UI模块(分享面板,建议添加) pod 'UMengUShare/UI' # 集成微信(精简版0.2M) pod 'UMengUShare/Social/ReducedWeChat' # 集成QQ(精简版0.5M) pod 'UMengUShare/Social/ReducedQQ' # 集成新浪微博(精简版1M) pod 'UMengUShare/Social/ReducedSina' # 基础宏定义byStevenHu pod 'HKMacros', :git => 'https://gitee.com/Steven_Hu/HKMacros.git' end
10.11.5-升级Cocopods问题:
$brew install ruby
Could not automatically select an Xcode project. Specify one in your Podfile like so
[!] Could not automatically select an Xcode project. Specify one in your Podfile like so: project 'path/to/Project.xcodeproj'
解决办法:
在Podfile文件中加上这一行即可
xcodeproj '项目名.xcodeproj'
4>Podfile使用与创建
使用时需要新建一个名为 Podfile 的文件,以如下格式,将依赖的库名字依次列在文件中即可:
source 'https://github.com/CocoaPods/Specs.git' platform :ios, '9.0' use_frameworks! target 'Cocopods' do pod 'AFNetworking', '~> 3.1.0' pod 'SDWebImage', '~> 3.8.1' end
5>创建第一个Cocoapods应用:
打开终端,cd 到 Demo 路径下:
$cd /Users/MengYu/Desktop/Demo
Podfile初始化:
$pod init $ls //Demo Demo.xcodeproj DemoTests Podfile
打开Podfile文件,并写入你要加载的依赖库,可以有pod search keyword 进行搜索:
$open ./Podfile # Uncomment the next line to define a global platform for your project # platform :ios, '9.0' target 'Demo' do # Uncomment the next line if you're using Swift or would like to use dynamic frameworks # use_frameworks! pod 'AFNetworking', '~> 3.2.0' //在此添加依赖库 # Pods for Demo target 'DemoTests' do inherit! :search_paths # Pods for testing end end
开始安装依赖库:
$pod install
安装成功~~
面试技巧:
1、请说明⼀一下Cocopods的作⽤和原理
答:CocoaPods是⼀一个第三⽅方库的管理理⼯工具,⽤用来管理理项⽬目中的第三⽅方框架。它的原理理就是将所 有的依赖库都放到⼀一个名为Pods的项⽬目中。Pods项⽬目会编译出⼀一个libPods.a的⽂文件,主项⽬目只 要依赖这个.a⽂文件即可。这样,依赖库源码管理理的⼯工作都从主项⽬目移到了了Pods项⽬目中。
2、在使⽤用cocoapods管理理第三⽅方框架时,如何修改版本?
答:打开Podfile⽂文件修改Podfile⽂文件中的第三⽅方框架的版本。
3、如何通过 CocoaPods 查找第三⽅方库?
答: pod search xxx(第三⽅方库)
4、请简单说明在安装cocoapods时,使⽤用pod install命令安装框架后的⼤大致过程
答: 1)分析依赖:该步骤会分析Podfile,查看不不同类库之间的依赖情况。如果有多个类库依赖于同⼀一个类库,但是依赖于不不同的版本,那么cocoaPods会⾃自动设置⼀一个兼容的版本。 2)下载依赖:根据分析依赖的结果,下载指定版本的类库到本地项⽬目中。 3)⽣生成Pods项⽬目:创建⼀一个Pods项⽬目专⻔门⽤用来编译和管理理第三⽅方框架,CocoaPods会将所需的框 架,库等内容添加到项⽬目中,并且进⾏行行相应的配置。 4)整合Pods项⽬目:将Pods和项⽬目整合到⼀一个⼯工作空间中,并且设置⽂文件链接.
参考:
https://cocoapods.org/