下拉svn库(自定义库或者第三方库)到工程中:
2、 终端中,cd到项目总目录(注意:包含PodTest文件夹、PodTest.xcodeproj、PodTestTest的那个总目录)
3 、 建立Podfile(配置文件)
接着上一步,终端输入
编辑:
platform :ios, '8.0'
#use_frameworks!个别需要用到它,比如reactiveCocoa
target 'TestPodDemo' do
pod 'AFNetworking', '~> 2.6'
end
d control + c 保存退出
库托管到svn:
1、用终端命令cd到本地项目目录并执行如下命令:
这时候本地就生成一个iOS_Category.podspec文件
2、用编辑器打开.podspec文件 (我自己用Sublime Text)
配置文件如下(包含解释):
Pod::Spec.new do |s|
s.version = "1.0.1"
s.summary = "活体检测和OCR"
s.description = <<-DESC
通过依图sdk,调用活体检测和OCR识别身份证
DESC
s.license = "MIT"
s.author = { "liyaoyao903" => "535814116@qq.com" }
s.platform = :ios, "8.0"
#类文件和md文件
s.source_files = "JYLivenessDetector/*.{h,m,md}"
#头文件
s.public_header_files = [
"JYLivenessDetector/*.{h}",
"JYLivenessDetector/liveness/.*{h}",
"JYLivenessDetector/ocr/*.{h}”]
#资源文件
s.resources = [
"JYLivenessDetector/LivenessDetectorLib/Resources/**/*.{*}",
"JYLivenessDetector/LivenessDetectorLib/Base.lproj/*",
"JYLivenessDetector/LivenessDetectorLib/DataPlist/**/*.{plist}",
"JYLivenessDetector/LivenessDetectorLib/LivenessDetectionCombineSDK/oliveapp_combine_model_2.bundle"
]
#库添加
s.frameworks = "AVFoundation","AssetsLibrary"
s.requires_arc = true
s.compiler_flags = "-lc++"
s.vendored_libraries = ["JYLivenessDetector/LivenessDetectorLib/LivenessDetectionCombineSDK/*.{a}"]
# s.vendored_frameworks = ["JYLocationManager/AMapFoundationKit.framework","JYLocationManager/AMapLocationKit.framework"]
#下拉这个库的时候有“liveness”这个文件夹,里面的文件是JYLivenessDetector/liveness/*.{h,m}
s.subspec 'Liveness' do |ss|
ss.source_files = "JYLivenessDetector/liveness/*.{h,m}"
end
#下拉这个库的时候有“OCR”这个文件夹,里面的文件是JYLivenessDetector/ocr/*.{h,m}
s.subspec 'OCR' do |ss|
ss.source_files = "JYLivenessDetector/ocr/*.{h,m}"
end
#下拉这个库的时候有“LivenessDetectorLib”这个文件夹,里面的文件如下
s.subspec 'LivenessDetectorLib' do |ss|
ss.source_files = [
"JYLivenessDetector/LivenessDetectorLib/UIComponents/**/*.{h,m}",
"JYLivenessDetector/LivenessDetectorLib/ViewController/**/*.{h,m}"
]
#从 ss.source_files 中把“GifView”文件夹下的类排除掉
non_arc_files = "JYLivenessDetector/LivenessDetectorLib/UIComponents/GifView/*.{h,m}"
ss.exclude_files = non_arc_files
#创建“GifView”这个文件夹,同时设置非arc类
ss.subspec 'GifView' do |sss|
sss.requires_arc = false
sss.source_files = non_arc_files
end
#创建“LivenessDetectionCombineSDK”这个文件夹,内部的文件是sdk的头文件
ss.subspec 'LivenessDetectionCombineSDK' do |sss|
sss.source_files = sdk_h_header_files = "JYLivenessDetector/LivenessDetectorLib/LivenessDetectionCombineSDK/Headers/*.{h}"
end
end
end
3、执行如下命令 查看是否编译通过
pod lib lint FJObject.podspec
如果有警告可以忽略 并使用如下命令执行
pod lib lint FJObject.podspec —allow-warnings
4、编译通过时提交代码。
库托管到github:
1、将自己的SDK工程拷到之前clone到本地的存储库中。
2、创建pod 账号
发布到cocoapods上你需要有一个pod 的账号,如果没有账号的话需要先注册一下:
可以使用pod trunk me 来查看自己的账号信息,
3、cd 到项目根目录,然后创建podspec文件
pod spec create SingleSign-Cornerradius-lineBorder
4、编辑podspec文件
因为新建的podspec是一个包含所有需要填写信息的文件,其中有很多东西是不需要填就可以的,可以直接copy别人的podspec文件,然后将需要改动的地方作出相应的改动即可。
Pod::Spec.new do |s|
s.name = "SingleSign-Cornerradius-lineBorder" #存储库名称
s.version = "1.0.0" #版本号,与tag值一致
s.summary = "a repository demo" #简介
s.description = "a repository demo" #描述
s.license = { :type => "MIT", :file => "LICENSE" } #开源协议
s.author = { "n1sunjianfei" => "jianfeisun_v@163.com" } #作者
s.platform = :ios, "8.0" #支持的平台和版本号
s.source_files = "SingleSign-Cornerradius-lineBorder/*.{h,m}" #需要托管的源代码路径
s.requires_arc = true #是否支持ARC
#s.dependency "Masonry", "~> 1.0.0" #所依赖的第三方库,没有就不用写
end
5、执行如下命令 查看是否编译通过
pod lib lint FJObject.podspec
如果有警告可以忽略 并使用如下命令执行
pod lib lint FJObject.podspec —allow-warnings
6、构建新 release 版本
注意: 这里的Tag verson 一定要和上面设置的s.version以及 s.source 中的 tag保持一致.
点击Public release 即可完成
7、上传代码
pod trunk push FJObject.podspe
等待一会会看到如下图所示
可以使用下面代码查找:
参考文档:
- 从零开始创建CocoaPods私有库
为什么要创建CocoaPods私有库? 避免重复的造轮子 节约时间,方便管理自己的代码 精益求精 创建CocoaPods私有库 1.创建私有仓库工程 执行命令pod lib create SmartB ...
- 创建/发布cocoapods公共库
对于大多数iOS开发者而言,cocoapods都是一个非常便捷的第三方库引导工具,该工具可以帮助我们快速导入所需第三方库,并且进行相关配置. 本文即为描述如何发布一个第三方库,提供给所有的开发者使用. ...
- iOS:最详细的创建CocoaPods私有库教程
一.感慨 说实话,创建这个CocoaPods私有库,我愣是搞了两个星期,创建的过程中,自己的感情波动是这样的:激情四射---->有点困惑----->极度困惑----->有点失望--- ...
- iOS之创建CocoaPods公有库教程
简介 在开发过程中,经常会使用到第三框架,我们通过一个pod install命令,很方便的就将第三方框架加到我们自己的项目中. 如果我们也想将自己写的组件或库开源出去,让别人也可以通过pod inst ...
- 制作CocoaPods公有库和私有库
认识公有库和私有库 公有库:开源自己封装的库供别人使用,且往cocoaPods的官方Repo仓库(即CocoaPods Master Repo)中新增自己库的索引,该库索引是以*.podspec.js ...
- 工程移除CocoaPods依赖库
http://zanderzhang.gitcafe.io/2015/09/26/工程移除CocoaPods依赖库/ 点这里--->CocoaPods安装和使用教程 当我们工程安装很多第三方开源 ...
- eclipse下使用maven配置库托管jar包
1.项目是通过maven配置库托管jar包 首先要保证maven配置库中有相应的jar包才能通过这个方法来添加jar包.maven的有点就是把要用到的jar包统一放在一个配置库中,在某个项目需要用到这 ...
- git 本地提交代码到 github 远程库,没有弹框 github login
git 本地提交代码到 github 远程库,没有弹框 github login: 原因: win10 有个凭据管理器,给保存了历史登陆用户名密码,导致无法切换用户. 解决办法: 删除历史登陆用户 ...
- iOS - 解决 Cocoapods 第三方库下载不下来
Cocoapods 第三方库下载不下来问题:一些第三方的库由于网的原因下载不下里 (解决思路:(原理) cocoapods 下载的时候 会先从缓存中拿 缓存中没有再去下载 所以可以把下载不下来的放到缓 ...
随机推荐
- Paper/ Overview | CNN(未完待续)
目录 I. 基础知识 II. 早期尝试 1. Neocognitron, 1980 2. LeCun, 1989 A. 概况 B. Feature maps & Weight sharing ...
- 06-jQuery的文档操作
之前js中咱们学习了js的DOM操作,也就是所谓的增删改查DOM操作.通过js的DOM的操作,大家也能发现,大量的繁琐代码实现我们想要的效果.那么jQuery的文档操作的API提供了便利的方法供我们操 ...
- [UWP] 用 AudioGraph 来增强 UWP 的音频处理能力——AudioFrameInputNode
上一篇心得记录中提到了 AudioGraph, 描述了一下 什么是 AudioGraph 以及其中涉及到的各种类型的 节点(Node). 这一篇就其中比较有意思的 AudioFrameInputNod ...
- 读入挂(IO)
快如闪电,清华杜瑜皓的读入挂,一模一样代码,加了这个之后... 细思极恐,and 整整行!!! namespace IO{ #define BUF_SIZE 100000 #define OUT_SI ...
- Java 虚拟机的内存结构
Java虚拟机运行时数据区 整个程序执行过程中,JVM会用一段空间来存储程序执行期间需要用到的数据和相关信息,这段空间一般被称作为Runtime Data Area(运行时数据区),也就是我们常说的J ...
- spring cloud(断路器——初学四)
在分布式架构中,当某个服务单元发生故障后,能通过断路器的故障监控,向调用方返回一个错误响应,而不是长时间的等待. Netflix Hystrix 在Spring Cloud中使用了Hystrix 来实 ...
- xlwt set style making error: More than 4094 XFs (styles)
使用Xlwt,当内容过多时,会报错:More than 4094 XFs (styles) 解决方法: wb = xlwt.Workbook(style_compression=2) 使用style_ ...
- 移动端 h5开发相关内容总结(三)
之前写过两篇开发中遇到的问题和解决方案.当时是CSS 和 JavaScript 分开写的.现在写这篇文章的时候感觉很多内容都是有内在联系的,所以不好分开. 给大家分享一下这半年来的感受吧: 知道和理解 ...
- 关于 Nginx 配置 WebSocket 400 问题
今天把项目升级了 asp.net core 到 2.1 的版本,使用了 signalr 的功能,由于阿里云不支持 websocket 协议,所以使用了 nginx 代理方式来解决,后续就报了一个登陆 ...
- 如何把开源项目发布到Jcenter
转载自:https://www.jianshu.com/p/f66972f0607a 首先我们应该注册一个JFrog Bintray的账号 Jfrog Bintray官网 这里我们可以注意到那个绿色的 ...