iOS之开发配置iOS Developer

iOS--本地私有库和远程私有库(三) --- ⅰ

2017-06-22  本文已影响24人  这个汤圆没有馅

(三)敲重点!!远程私有库来了!

ⅰ.远程私有库演示(本篇)

ⅱ.远程私有库升级+优化

铺垫一:Category文件夹,含有UIView+Category.h 和 UIView+Category.m,也就是需要集成的代码。

铺垫二:在码云上创建两个项目,一个存放自己的私有索引库集TangyuanSpecs,对应地址1;一个管理某个部分的框架代码TangyuanBase,对应地址2。这里要注意的是,创建TangyuanBase时不要初始化READEME文件,下面创lib的时候会包含,不然提交的时候会报冲突。

大概的思路

在cocoapods下,可以看到一开始只有master一个索引库

1

我们把自己的私有库集添加进来,然后会发现repo下多了一个索引库

pod repo add TangyuanSpecs 地址1

2

创建一个TangyuanBaseLib空文件夹,在里面创建TangyuanBase的lib

创建lib文件

创建完后可以看到下图👇的文件目录,TangyuanBase里包含了spec文件、example测试工程及上面提到的READEME文件

TangyuanBase文件目录

找到Classes下的ReplaceMe文件,删掉,并把Category文件拖进来,如下图👇

这里的Classes修改同时example工程里的podfile也会更新,别忘了pod insatll

打开example工程,可以看到Category已经被集成过来了。

example工程

找到example工程里的podsepc文件进行修改

s.name        = "名字" (ps:一般不用改)

s.version      = “0.1.0"    ( ps:版本号这个比较重要,打标签的时候要注意,这里默认是0.1.0)

s.summary      = “TangyuanLib."    (ps:描述可以随便写)

s.description  = "detail description,must be longer than s.summary”  (ps:详细描述,字数一定要超过summary)

s.homepage    = “xxxxxx"  (ps: TangyuanBase码云上的主页地址)

s.source      = { :git => "https://xxxxxx.git", :tag => "#{s.version}" }  ( ps: 码云上的地址,也就是地址2)

好了,修改完后,现在要把TangyuanBase整个文件夹都上传到码云上

pod lib lint  (ps:先验证lib文件,通过后再git上传) 

git add .

git commit -m 'x'

git remote add origin 地址2

git push -u origin master 

打标签,一定要和spec里的version保持一致

git tag '0.1.0'

git push --tags

接下来,就要把spec文件上传到自己的私有库集

pod spec lint --allow-warnings

pod repo push TangyuanSpec(私有库集名) TangyuanBase.podspec(要上传的spec) 

上传到私有库集

然后我们可以看到cocoapods/repo/TangyuanSpecs下已经有0.1.0版本的TangyuanBase的spec文件

pod search,完美🤗

新建一个工程,pod init,编写podfile文件,默认的pod是从master索引库里找,我们这边是私有索引库,所以在上面要加上这个库的source地址

接着pod install,如果报了错误 [!] An unexpected version directory `Assets` was encountered for the `/Users/tangyuan/.cocoapods/repos/oschina-tangyuanliu-tangyuanbase/TangyuanBase` Pod in the `TangyuanBase` repository.    那就把地址直接跟在pod后面

接着就能在工程里看到Category里的代码已经集成过来了

这个时候如果你要集成其他的一些公有库,如AFNetworking等,在Podfile文件还得加一句master的source地址,不然在私有库里找AFNetworking是找不到的

        远程私有库的创建使用过程大致上就这些,由于涉及到的名词比较多,文章里我直接用具体的文件名字代替,大家一一对应上即可。

文采不够,全靠图来凑🙈

上一篇 下一篇

猜你喜欢

热点阅读