[cocoapods速成] cocoapods的基本用法和自制 podspec
1 安装方法
主要命令: sudo gem install cocoapods
------------------------------------------------------------------------------------------------------------------------------
按照下面的顺序在终端中敲入依次敲入命令:
$ gem sources --remove https://rubygems.org//
等有反应之后再敲入以下命令
$ gem sources -a http://ruby.taobao.org/
为了验证你的Ruby镜像是并且仅是taobao,可以用以下命令查看:
$ gem sources -l
只有在终端中出现下面文字才表明你上面的命令是成功的
:*** CURRENT SOURCES ***http://ruby.taobao.org/上面所有的命令完成之时,终端上是这个的样子:这时候,你再次在终端中运行
:
$ sudo gem install cocoapods
至于为啥不直接运行最后一条命令,当然是由于墙的原因了
———————————————————————————————————————
2 使用 cocoapods
主要命令:`$ pod install.
场景1:利用CocoaPods,在项目中导入AFNetworking类库AFNetworking类库在GitHub地址是:https://github.com/AFNetworking/AFNetworking为了确定AFNetworking是否支持CocoaPods,可以用CocoaPods的搜索功能验证一下。
在终端中输入:
$ pod search AFNetworking
过几秒钟之后,你会在终端中看到关于AFNetworking类库的一些信息。比如:这说明,AFNetworking是支持CocoaPods,所以我们可以利用CocoaPods将AFNetworking导入你的项目中。
首先,我们需要在我们的项目中加入CocoaPods的支持。你可以跟随小编的步骤,先利用Xcode创建一个名字CocoaPodsDemo的项目,用于以下的教程。创建好之后,
在继续下一步之前,小编先截图,看看项目没有支持CocoaPods时的项目Xcode目录结构:上图等一下要跟项目支持CocoaPods之后的项目Xcode目录结构做对比。你看到这里也许会问,CocoaPods为什么能下载AFNetworking呢,而不是下载其他类库呢?这个问题的答案是,有个文件来控制CocoaPods该下载什么。这个文件就叫做“Podfile”(注意,一定得是这个文件名,而且没有后缀)。你创建一个Podfile文件,然后在里面添加你需要下载的类库,也就是告诉CocoaPods,“某某和某某和某某某,快到碗里来!”。每个项目只需要一个Podfile文件。好吧,废话少说,我们先创建这个神奇的PodFile。在终端中进入(cd命令)你项目所在目录,然后在当前目录下,利用vim创建Podfile,
运行:
$ vim Podfile
然后在Podfile文件中输入以下文字:
platform :ios, '7.0' pod "AFNetworking", "~> 2.0"
注意,这段文字不是小编凭空生成的,可以在AFNetworking的github页面找到。这两句文字的意思是,当前AFNetworking支持的iOS最高版本是iOS 7.0, 要下载的AFNetworking版本是2.0。然后保存退出。vim环境下,保存退出命令是:
:wq
这时候,你会发现你的项目目录中,出现一个名字为Podfile的文件,而且文件内容就是你刚刚输入的内容。注意,Podfile文件应该和你的工程文件.xcodeproj在同一个目录下。这时候,你就可以利用CocoPods下载AFNetworking类库了。还是在终端中的当前项目目录下,运行以下命令:
$ pod install
———————————————————————————————————————
3 自制 pods源(制作自己的podspec文件)
主要命令:
pod spec create https://github.com/iiiyu/XCAsyncTestCase
栗子: XCAsyncTestCase首先,去把它fork到自己的项目里面去。(什么不会fork?去面壁去)然后,把fork到自己帐号下的项目clone出来 cd进去1pod spec create https://github.com/iiiyu/XCAsyncTestCase这个很正常,很多项目都没有tag。反正在自己的下面。可以瞎搞。给项目加入一个tag。以便pod能自动识别。1234567
git tag -a 0.0.1 -m "Tag release 0.0.1”
git push —tagsrm -rf XCAsyncTestCase.podspec
pod spec create https://github.com/iiiyu/XCAsyncTestCaseOK。
然后用你自己喜欢的编辑器打开。1mate XCAsyncTestCase.podspec接着其实不用怎么改里面的内容我把注释删掉 作者改成原来的作者。然后需要的源码位置改成正确的当然 最重要的是s.source_files这个。你要把你要包含的文件路径找对了。 然后用通配符匹配好了。就OK了。当然其他项,你看看注释啥的 选择性的填一些。在这里是一个五分钟的hello world。不深入讨论接着 把修改好的文件push到github上去12345
git add XCAsyncTestCase.podspecgit commit -am "add XCAsyncTestCase.podspec file" git push
最后,在你项目的Podfile里面加入这个第三方库的地址。http://cocoapods.org/
pod 'XCAsyncTestCase', :git => 'https://github.com/iiiyu/XCAsyncTestCase.git'
就可以畅快的使用pod install了
参考来源:
http://code4app.com/article/cocoapods-install-usage
http://iiiyu.com/2013/12/19/learning-ios-notes-thirty-one/
http://cocoapods.org/
[cocoapods速成] cocoapods的基本用法和自制 podspec的更多相关文章
- [cocoapods]安装cocoapods
如果你的电脑已经安装过cocoapods了,但是不知道怎么用,请直接跳转到第8步 在安装之前,我们先来了解什么是cocoapods 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONK ...
- 【CocoaPods】配置CocoaPods后 - CocoaPods使用
配置CocoaPods后 - CocoaPods使用 极速化 CocoaPods : 1 .使用淘宝 Ruby Gems 源(Cocoapods 使用 ruby 开发) gem sources -l ...
- CocoaPods: 制作cocoapods国内镜像
制作cocoapods国内镜像∞ March 15, 2014 Tags:cocoapods 国内访问cocoapods spec repo速度非常慢,网络不好的话做一次pod update要等半个小 ...
- 关于CocoaPods update/CocoaPods install 慢、没反应、卡住的解决方案(Pods升级步骤)
pod管理第三方库带来的便利大家有目共睹,但是--,估计有很多人会遇到这样一种尴尬情况: Pod install 或 Pod update 执行之后,就不动了,一直一个界面简直要崩溃... 网上有很 ...
- 【CocoaPods】CocoaPods基本安装教程
CocoaPods是什么,有什么用,怎么来等等我就不说了.反正就是一个管理第三方开源框架的~ 1. 配置前 - 本地安装好Ruby环境 2. 安装命令 -> sudo gem install c ...
- [CocoaPods]使用CocoaPods进行测试
测试规格 从CocoaPods 1.3.0开始,pod现在可以提供测试规范(或简称测试规范).测试规范可用于描述给定pod的测试源. 这是一个示例CoconutLib.podspec,一个定义测试规范 ...
- [CocoaPods]使用CocoaPods
将Pod添加到Xcode项目中 在你开始之前 检查Specs存储库或cocoapods.org以确保您要使用的库可用. 在您的计算机上安装CocoaPods. 安装 创建Podfile,并添加依赖项: ...
- iOS -- CocoaPods
CocoaPods 是什么? CocoaPods 是一个负责管理 iOS 项目中第三方开源库的工具.CocoaPods 的项目源码在 GitHub( https://github.com/CocoaP ...
- 最新的 cocoaPods 安装方法
经过努力终于发现了最新的 解决cocoaPods安装的办法: taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务 第一步:安装rvm, 不管需不需要升级ruby,rvm可以 ...
随机推荐
- span元素之间的间距
去除inline-block元素间间距的N种方法- zhangxinxu http://www.zhangxinxu.com/wordpress/2012/04/inline-block-space- ...
- linux —— 启动引导程序 lilo 与 grub
目录:1.启动引导程序概要 2.lilo 的安装与配置 3.grub的安装与配置 4.两种引导程序的切换 5.附:编译内核时的lilo 设置 1.启动引导程序概要 2.lilo 的安装与配置 3.g ...
- cocos2d-x3.0 ListView
.h #include "cocos2d.h" #include "cocos-ext.h" #include "ui/CocosGUI.h" ...
- [ACM] HDU 5025 Saving Tang Monk (状态压缩,BFS)
Saving Tang Monk Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) ...
- Apache开启Gzip压缩设置(转)
第一步: 查看一下/etc/httpd/conf/httpd.conf中下面两个模块是否开启: LoadModule deflate_module modules/mod_deflate.so Loa ...
- Android开发:最详细的 NavigationDrawer 开发实践总结
最详细的 NavigationDrawer 开发实践总结 继前面写的两篇文章之后(有问题欢迎反馈哦): Android开发:Translucent System Bar 的最佳实践 Android开发 ...
- MD5加密 Java源代码
package lwp; /** * * @author 梁WP */ public class MD5_Encoding { // RFC1321中定义的标准4*4矩阵的常量定义. static f ...
- Python_oldboy_自动化运维之路(一)
python简介: Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有 ...
- 11.3 morning
noip模拟题day1 总览(Overview) 题目名称 取模 等比数列 回文串 程序名 mod sequence palindromes 输入文件名 mod.in sequence.in pa ...
- 表达式:使用API创建表达式树(3)
一.DebugInfoExpression:发出或清除调试信息的序列点. 这允许调试器在调试时突出显示正确的源代码. static void Main(string[] args) { var asm ...