iOS:如何将自己的SDK用CocoaPods管理
条件:
需要在终端上将工程发布到cocoapods上,这样才能用cocoapods进行管理。
步骤:
首先,你得有一个pod的账号 在终端中输入pod 可以查看关于pod 的命令帮助,输入pod trunk me 可以查看自己的账号信息,如果没有的话先注册一个。输入pod trunk register然后根据提示注册一个即可。
然后,在有账号之后:
cd 到工程目录下,以工程名创建一个.podspec文件 例如:
cd Demo ---> pod spec create Demo
这样就会在工程中出现这样一个文件
接着vi Demo.podspec 进入文件中进行配置,下面这些具体的格式如何写,可以查看整File Pattern: http://guides.cocoapods.org/syntax/podspec.html#source_files
需要对 s.summary 写入对工程的总结
然后s.description 可以写工程的描述,也可以直接用#来注释掉。
s.homepage 写上之前在GitHub上创建的工程的网址,如:https://github.com/xiaowu2016/Demo
s.license我选择的是下面一个,并把上面的注释掉,将file => "FILE_LICENSE" 改成file => "LICENSE" 。
s.source 写上工程的地址,如:https://github.com/xiaowu2016/Demo.git
其他根据自己实际需求进行配置,如果工程中有依赖其他第三方库也要一并写上.有不明白的地方可以上GitHub上看看别人的.podspec文件对照进行配置。
例如如下配图设置:
这些名词解释如下:
对了,配置费ARC文件的情况,项目中由于历史原因,导致有一个私有的pods库中某几个文件是在非ARC时代写的,如果要进行修改工程量浩大,于是乎要对这几个文件单独处理,这几个文件不使用arc其他文件使用arc,网上查了一些资料,只需要对source_file进行修改并排除那几个不使用ARC的文件就可以了,大致修改如下:
配置完成之后保存并退出,然后在终端上输入
git add 'Demo.podspec' ( 也可以直接输 git add )
然后 git commit -m 'add Demo.podspec' 添加到git上
再用 git push同步到远程端
再创建LICENSE文件
vi LICENSE 直接去网上找一个复制过来,根据需要自己修改一下就能用。
保存并退出
git add 'LICENSE' (或者git add )
git commit -m 'add LICENSE'
git push
然后需要创建工程的tag
git tag '0.0.1'
git add *
git commit -m 'add tag'
git push origin 0.0.1
输完这些命令之后可以在GitHub的工程里看到创建的tag 如图
再输入pod spec lint 来检测一下是否有错误或警告,有则改之,每次本地的工程中有改动并上传到GitHub上之后需要改变tag 否则就会找不到你所改动的,在改变了tag 之后需要将.podspec文件中的s.version和s.source 的tag 改成同样的值。
当然出错时,最好需要只要知道错在哪儿,下面的操作可以帮助到你:
在检测你的podspec时候,如果直接用pod spec lint xxx.podspec的话,出现错误它只会直接一句红色的话the spec did not pass validation,due to 1.告诉你的有多少个error和warning,而不会具体的指出你的错误出在哪里,这时候你可以在这句指令后面加上参数--verbose 这样就会告诉你具体的错误信息。这样根据它提示你的错误信息去解决就可以了。
如果要查处具体错误,请使用 pod spec lint xxx.podspec --verbose
如果 pod spec lint 的时候遇到警告了,请使用 pod trunk push --verbose --allow-warnings
如果没有错误的话,也即当看到*** pass validation,说明验证通过了,就可以发布了,输入pod trunk push ,这样之后的工程再需要你封装的类库就可以直接在podfile中进行添加例如:pod search 'Demo' 然后pod install就可以帮你导入了,非常方便
下面是很有价值的干货:
original Link:http://www.jianshu.com/p/7dd9bfe8ee69
other Link_1: http://www.exiatian.com/cocoapods安装使用及配置私有库/
other_link_2: http://blog.csdn.net/stubbornness1219/article/details/50968000
other_link_3: http://www.cocoachina.com/ios/20160301/15459.html
other_link_4: http://www.cocoachina.com/ios/20150228/11206.html
iOS:如何将自己的SDK用CocoaPods管理的更多相关文章
- iOS 如何在一个已经存在多个project的workspace中引入cocoapods管理第三方类库
一种新的第三方库管理工具:Carthage 如何使用Carthage管理iOS依赖库 Podfile Syntax Reference v1.1.0.rc.3 https://guides.cocoa ...
- iOS 快捷下载和安装并使用CocoaPods
CocoaPods是什么? 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等.可能某个类库又用到其他类库,所以要使用它,手动一个个去下载所需类库十 ...
- iOS开发 使用Cocoapods管理第三方类库
每次上github看到一些优秀的代码,总能看到Podfile,也了解是个管理第三方类库的,今天抽时间学习了一下,挺简单的! 作用: 太多 还是复制一下把!!! CocoaPods是什么? ...
- 李洪强iOS经典面试题142-第三方框架及其管理
李洪强iOS经典面试题142-第三方框架及其管理 第三方框架及其管理 使用过CocoaPods吗?它是什么?CocoaPods的原理? CocoaPod是一个第三方库的管理工具,用来管理项目中的第 ...
- 使用CocoaPods管理第三方开源类库
iOS开发中经常会用到许多第三方开源类库,比如AFNetworking.FMDB.JSONKit等等,使用CocoaPods这个工具就能很方便得对工程中用到的类库进行管理,包括自动下载配置以及更新. ...
- cocoapods管理以及常遇到的问题
CocoaPods使用 安装成功啦,咱们来创建Podfile文件 //咱们先滚去项目的根目录,如果不会,你就先滚去看看shell命令教程吧 $ cd /Users/JamesGu/Desktop/Co ...
- 利用cocoapods管理开源项目,支持 pod install安装整个流程记录(github公有库)
利用cocoapods管理开源项目,支持 pod install安装整个流程记录(github公有库),完成预期的任务,大致有下面几步: 1.代码提交到github平台 2.创建.podspec 3. ...
- CocoaPods学习系列2——使自己的项目支持CocoaPods管理
该篇记录使自己的项目支持CocoaPods管理. 要达到这一目的,需要如下步骤: 1.将自己的项目提交到github,添加开源协议license 2.添加podspec文件 3.验证podspec,成 ...
- 利用CocoaPods管理本地工程和发布开源框架
发布自己三方框架 发布云端库 1.创建spec pod spec create xxx 2.编辑spec s.name:名称,pod search 搜索的关键词,注意这里一定要和.podspec的名称 ...
随机推荐
- ModelMap和ModelAndView的作用
首先介绍ModelMap和ModelAndView的作用 ModelMap ModelMap 对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的数据放到ModelMap对象中即 ...
- 八、job管理
查看用法: [root@super65 ~]# salt-run -d|grep jobs'jobs.active:' #查看当前执行的job Return a report on all activ ...
- Intel OIT demo
https://software.intel.com/en-us/blogs/2013/07/18/order-independent-transparency-approximation-with- ...
- java web基础1Tomcat服务器基本知识
一.Tomcat安装 (1)先安装JDK,并配置环境变量JAVA_HOME.Tomcat服务器的配置需要JDK的JAVA_HOME环境变量. 并在系统path变量添加%JAVA_HOME%/bin. ...
- adb & adb shell 相关命令
在Mac上配置adb命令 在Mac OS中使用adb命令时,应进行变量配置,步骤如下: 一.终端中输入 cd ~ 二.输入touch .bash_profile 回车 touch:如果没有,则创建文件 ...
- lua5.2版本在VS2010下的环境搭建
第一次使用脚本语言,第一次使用解释性语言 公司的现在维护的游戏开发的比较早,采用的lua还是比较早的版本,像NPC脚本系统就是使用lua+luabind结合的module模式,服务器端没涉及到,所以不 ...
- Nginx Location 语法,与简单配置[转]
一、介绍Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器 ...
- php7安装
# 配置参数 ./configure --prefix=/usr/local/php7 \ --with-config-file-path=/usr/local/php7/etc \ --with-m ...
- von Neumann architecture
COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION 3.1 COMPUTER COMPONEN ...
- Delphi 中的哈希表(二)—— TStringHash
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...