project 'ProjectName.project'
source " https://github.com/CocoaPods/Specs.git "
source " https://gitlab.com/CocoaPods/Specs.git "
def ThirdPod
pod 'AFNetworking' //使用最新版本
pod 'AFNetworking', '~>0'//使用最新版本
pod 'AFNetworking', '~>0.1.2' //使用大于等于0.1.2但小于0.2的版本
pod 'AFNetworking', '~>0.1' //使用大于等于0.1但小于1.0的版本
pod 'AFNetworking', '2.0' //只使用2.0版本
pod 'AFNetworking', '= 2.0' //只使用2.0版本
pod 'AFNetworking', '>2.0' //使用高于2.0的版本
pod 'AFNetworking', '>= 2.0'//使用大于或等于2.0的版本
pod 'AFNetworking', '<2.0' //使用小于2.0的版本
pod 'AFNetworking', '<= 2.0'//使用小于或等于2.0的版本
sysource = " git@gitlab.xxxxx.com :ios-public/YYPrivateSpecs.git"
pod 'lottie-ios', '2.5.3', :source =>sysource
pod 'AFNetworking', :path =>'third-libs/AFNetworking/AFNetworking.podspec'
pod 'AFNetworking', :path =>'../AFNetworking'
pod 'AFNetworking', :git =>' https://gitee.com/whp/AFNetworking.git' , :tag =>'0.49'
pod 'AFNetworking', :git =>' https://gitee.com/whp/AFNetworking.git' , :branch =>'dev'
end
def BasePod
sysource = " git@gitlab.xxx.com :ios-public/XXPrivateSpecs.git"
pod 'HTTPNetwork', '1.2.2'
pod 'YYBasicKit', :git =>' git@gitlab-pri.uu.xxxx.com :ios-public/xxx-base/sybasickit.git' , :tag =>'1.1.0.73'
pod 'YYAthena', :git =>' git@gitlab-pri.sy.soyoung.com :soyoungios-public/soyoung-base/syathena.git' , :branch =>'dev_8.17.1_whp'
pod 'OOMDetector', '1.3.3', :configurations =>['Debug']
pod 'YYLeaksFinder', '1.0.3', :configurations =>['Debug', 'Release_eye']
pod 'YYAppUIKit', :path =>'../YYAppUIKit/YYAppUIKit.podspec'
pod 'YYGeneralKit', :path =>'../YYGeneralKit/YYGeneralKit.podspec'
pod 'YYAppKit', :podspec =>' http://gitlab.yy.com/ios-public/sykit/YYAppKit/raw/master/YYAppKit.podspec'
pod 'YYAppKit', :git =>' git@gitlab.yy.com :ios-public/sykit/YYAppKit.git', :commit =>'d057a15f17dfd4b459465e4b882129625c5cdadd'
end
target 'ProjectName' do
inhibit_all_warnings!
ThirdPod
BasePod
end
target 'ProjectName-dev' do
inhibit_all_warnings!
ThirdPod
BasePod
end
创建自己项目的Podspec描述文件下面我会通过一个名为HUPhotoBrowser的项目来讲解一下整个过程。
项目发布到github后,需要打上tag。之后我们在工程根目录中初始化一个Podspec文件:
pod spec create HUPhotoBrowser
该命令将在本目录产生一个名为HUPhotoBrowser.podspec文件。用编辑器打开该文件,里面已经有非常丰富的说明文档。下面介绍如何声明第三方库的代码目录和资源目录,还有该第三方库所依赖ios核心框架和第三方库。这是我的podspec文件:
编辑好podspec文件后就可以将该podspec文件保存到本机的~/.cocoapods/repos/master/Specs目录中仅供自己使用,也可以将其提交到CocoaPods/Specs代码库中。下面我们先将其保存到本机中:
下面可以看一下是否可以通过搜索找到该库:
同样在需要依赖于HUPhotoBrowser这个库的项目,可以将下列添加到项目的Podfile文件中
pod 'HUPhotoBrowser', '~0.0.2'
保存文件,并用pod install安装HUPhotoBrowser库。
通过以上步骤创建Pod库还只能供自己使用,下面会继续讲解如何将其提交到CocoaPods/Specs代码库中,让其他人也可以通过pod install安装我们的开源库。
CocoaPods Trunk发布自己的Pods
在cocoapods使用了trunk之后,CocoaPods 需要0.33以上版本,用 pod --version查看版本,如果版本低,需要更新。
注册Trunk
$ pod trunk register orta@cocoapods.org 'Orta Therox' --description='macbook air'
大家在注册时需要替换成自己的邮箱和用户名,一切顺利的话就会受到一份,点击中的链接后验证一下:
pod trunk me
至此我们整个制作自己的开源库的过程就完成了,以后有新版本只需要修改工程根目录下的podspec文件就行了,然后重新执行pod trunk push命令。
在终端输入主要命令 sudo gem install -n /usr/local/bin cocoapods 进行安装。
参考: CocoaPods安装方法
(1)在Xcode项目中生成Cocoapods配置文件
在终端定位到项目目录,输入 pod init 命令后就会在项目目录下生成cocoapods的配置文件 Podfile 实现集成工作。如图所示:
(1)将所需库添加至配置文件Podfle
备注 :SWRevealViewController是用O-C写的,故在swift项目中需进行桥接
(1)在主工程下新建一个Objective-C的桥接头文件(如命名为h.m)后会自动出现一个Ofo-demo-Bridging-Header.h文件,此时可把h.m已无用可删除。
(1)侧边栏组件: SWRevealViewController
(2)其它侧边栏组件:一般OC的比较稳定一点。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)