欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

cocoaPods安装爬坑总结

程序员文章站 2022-03-24 13:42:00
1、移除现有Ruby默认源 $ gem sources --remove https://rubygems.org/ 2、使用新的源 $ gem sources -a https://ruby.taobao.org/ 备注:现在貌似淘宝也不更新了,可以自行上网搜一个源站。 解释一下步骤1和步骤2的作 ......

1、移除现有ruby默认源
$ gem sources --remove https://rubygems.org/
 
2、使用新的源
$ gem sources -a https://ruby.taobao.org/
 
备注:现在貌似淘宝也不更新了,可以自行上网搜一个源站。
 
解释一下步骤1和步骤2的作用:
其实就是为了电脑在连不上外网情况下使用的镜像源站,不然的话,后续pod install会失败。
如果电脑能连接外网,没必要换源。
 
3、验证新源是否替换成功
$ gem sources -l
 
4、安装cocoapods
 $ sudo gem install cocoapods 
 
苹果系统升级 os x el capitan 后,上述命令改为:
$ sudo gem install -n /usr/local/bin cocoapods  
 
然后进行setup操作:
$ pod setup
 
5、更新gem
$ sudo gem update --system

 

6、新建工程,并在终端用cd指令到文件夹内
$ pod search protobuf
 
7、新建podfile文件
$ vim podfile
 
写入以下内容并保存,小提示:(终端vim文件 按 i 可编辑 ,esc 退出编辑,:wq  可保存退出)
# uncomment this line to define a global platform for your project
platform :ios, '9.0'
 
workspace 'webrtcdemo.xcworkspace'
project 'webrtcdemo.xcodeproj'
 
inhibit_all_warnings!
 
target 'webrtcdemo' do
    pod 'mbprogresshud', '1.1.0'
    pod 'zqalterfield'
    pod 'masonry', '1.1.0'
end
 
8、导入第三方库
$ pod install
 
9、打开xcworkspace文件,启动工程
$ open webrtcdemo.xcworkspace
 

 
以下是我用以前的安装流程安装时出现的一些错误,总结如下:
 
错误1:
error fetching :
bad response not found 404 ()
 
解决方案:把安装流程中的指令
$ gem sources -a http://ruby.taobao.org/
改为:
$ gem sources -a https://ruby.taobao.org/
 
错误2:
error:  while executing gem ... (errno::eperm)
operation not permitted - /usr/bin/pod
 
解决方案:苹果系统升级os x el capitan后会出现的插件错误,将安装流程4中的安装cocoapods的指令$ sudo gem install cocoapods,改为:
$ sudo gem install -n /usr/local/bin cocoapods
 
错误3:
[!] unable to satisfy the following requirements: - `avoscloud (~> 3.1.6.3)` required by `podfile`
specs satisfying the `avoscloud (~> 3.1.6.3)` dependency were found, but they required a higher minimum deployment target.
 
解决方案:安装流程:podfile文件中 platform:ios, ‘6.0’  后边的 6.0 是平台版本号 ,一定要加上
 
错误四:
pod setup非常慢:
解决方案:在github上找到specs后fork到自己的工程,然后使用工具github desktop工具把specs下载下来,更名成master,替换路径~/.cocoapods/repos目录下的master,就可以正常使用了。
 
错误五:
pod search失败:
解决方案:
 
错误六:
pod search后出现creating search index for spec repo 'master'.. done!的情况
解决方案:
 
错误七:
gem报错:
$ gem --version  
 
解决方案: 返回结果失败,那么可能的原因是电脑里面存在两个gem,删除只剩一个就好了,如下:
$ where gem
 
即可找到gem的地址,对应删除不必要的gem。
 
错误八:
podfile.lock里面的podfile checksum和别人的不一样:
checksum是通过sha-1算法算出来的。通过它可以确保多人协作的时候,大家使用的是相同版本的第三方库。
 
解决方案:如果你的checksum和别人的不一样,很可能是你pod版本的问题,那么对应做pod版本的升降级。
可参考我的repo,把脚本clone下来,然后改一下你要变成的版本执行一下即可。