关于私有仓库
Overview
截止目前在我的有道云笔记里已经躺了好几篇文章没写完,目前写了一半或者刚开头的有App启动优化:二进制文件重排
、iOS逆向工程及防御
、iOS知识点梳理
。
时间还是不太够用啊,而且八月份已经过去,八月份的文章还没放到博客上。除去功能增加以外,还有就是自己有些懈怠了。
除了已经写个开头的文章,还有些东西需要整理,比如Swift、Runtime、算法之类的。这些东西也不能只仅限于会用,还要知其原理并将其整理出来写成文章,避免后期的遗忘。
希望今年将这些东西都整理完吧!
而这篇文章主要整理私有仓库的创建,便于后期查阅。
ps:截止这次更新,上面提到的几篇博客还没写完。
私有仓库相关
创建私有仓库
一般创建私有仓库会创建到公司搭建的gitlab上,因为目前只是做演示,所以本博客的私有仓库、私有组件都创建在GitHub上,以供后期下载。
在git中创建私有仓库
添加私有仓库到本地
在将私有仓库添加到本地之前,我们可以通过pod repo list
指令查看本地有哪些仓库,同时可以查看本地仓库存放地址。
1 | pod repo list |
查看本地仓库列表
使用
pod repo add ZVTestPrivateSpecs https://github.com/xnxy/ZVTestPrivateSpecs.git
指定将私有仓库添加到本地。
添加完成后可以使用
pod repo list
指令查看本地仓库列表,查看是否已经添加成功,同时也可以open
相应目录查看。
添加Podspec到私有仓库
创建私有组件
git中创建私有组件
编写组件内容,创建测试Demo等相关内容。
使用pod spec creat ZVTestPod
指令来创建podspec
文件,并编写相关内容。
编写完成后,将编写好的podspec
推送到git
,并打tag
。
然后使用pod lib lint
来验证podspec
文件,如果出现下方图片中的passed validation
则代表验证通过。
私有组件验证通过后,我们需要使用pod repo push ZVTestPrivateSpecs ZVTestPod.podspec
指定将私有组件的podspec
文件推送到私有仓库中。
推送成功后,我们可以在私有仓库中查看私有组件的位置,当然我们也可以在本地中查看
将私有仓库中的库集成到项目中
走到这一步,私有仓库、私有组件的的流程都已经介绍完了,如果想使用私有仓库中的私有组件时,直接集成项目即。跟集成开源框架类似。
其中Podfile
的编写如下:
1 | source 'https://github.com/xnxy/ZVTestPrivateSpecs.git' |
Swift和OC混编仓库
关于Swift和OC混编的仓库可以参考我再GitHub中创建的Demo
OC调用Swift方法
在Framework中OC调用Swift需要引入#import <**/**-Swift.h>
头文件
1 | // |
相应的在Build Settings
中可以查看相应头文件配置(Xcode会自动生成)。
Swift调用OC方法
在Framework中Swift调用OC需要先创建module.modulemap
文件将相应的头文件添加进去。
关于modulemap
文件,可以参看简书的的文章《Swift 关于 module.modulemap 使用》,介绍的很详细。
内容大致如下所示:
1 | //modele.modulemap文件内容 |
ZVFileTransferHeader.h
文件中存放Swift
需要调用的OC类。
同时需要在Build Settings
手动添加配置,入下图所示。
添加进配置中的目录为module.modulemap
所在的目录。
相应的在需要调用的类中引入BridgeFiles
,然后即可调用。
如下所示:
1 | // |
需要添加@objc
和public
,或者无法调用。