iOS Pod Spec 发布流程

作者: 咖啡奶茶都要 | 来源:发表于2020-10-29 21:37 被阅读0次

    第一步:封装功能生成 .framework

    1.打开Xcode,新建工程。

    不要选择“Application”,选择“Framework & Library”。选择第一个,然后Next。

    2.更改参数

    在TARGETS下选中工程,在Build Settings下更改几个参数。

    Dead Code Stripping —> NO

    Mach-O Type —> Static Library

    3.增加armv7s

    在Architectures下增加armv7s,并选中。将Build Active Architecture Only 设置为NO。

    4.设置Headers

    将你要公开的头文件拖至Public下,要隐藏的放在Private或者Project下,当然,隐藏的头文件就无法再被引用。

    5.打包Framework

    1.选中模拟器,编译程序

    2.选中测试机,编译程序

    3.在finder中找到framework文件

    4.通过终端命令将两个framework合为一个模拟器和真机都可使用的framework。

    打开控制台输入 lipo -create iphoneos下framework的路径 simulator下framework的路径 -output 新的路径,这样就完成了模拟器和真机版本的合并,新路径下的framework就是你合并后的文件,将这个文件名字改成和你未合并之前的Test一样的名字,放到framework文件夹下,替换掉原来的framework文件

    第二步:创建一个公有 Pod 库

    1.注册 COCOAPODS 用户

    $ pod trunk register {YOURMAIL} '{YOURNAME}' --verbose

    2.去邮箱点击验证链接

    此时您的邮箱中应该有一封主题是 [CocoaPods] Confirm your session. 的邮件,点击邮件中的链接进行验证。

    3.验证是否注册成功

    $ pod trunk me

    Name: YOURNAME

    Email: YOURMAIL

    Since: May 23rd, 2018 03:02

    Pods:

    PodName

    Sessions:

    June 20th, 08:17 - October 26th, 08:39. IP: xxx.xxx.xxx.xx

    4.创建一个 Git 仓库

    仓库主页

    进入您创建的仓库后,地址栏中的地址:

    https://github.com/{YOURGITHUBNAME}/{YOURPODNAME}

    git 地址

    点击 Clone or download 按钮,就可以看到了。选择 HTTPS 地址:

    https://github.com/{YOURGITHUBNAME}/{YOURPODNAME}.git

    5.创建 Pod 库

    在终端中执行: pod lib create {YOURPODNAME},接下来按照提示,根据自己的情况进行选择就可以了。

    必须要修改的:

    s.summary: pod 摘要

    s.description: pod 描述

    s.homepage: pod 在 github 中的地址

    s.author: 作者姓名及邮箱

    s.source: pod 的 git 地址

    6.验证 YOURPODNAME.podspec

    $ pod lib lint

    7.提交代码

    $ git add .

    $ git commit -m "创建 pod 库"

    $ git push

    8.创建并提交 tag

    $ git tag -a 0.1.0 -m '创建 pod 库'

    $ git push origin --tags

    9.提交 pod

    $ pod trunk push

    恭喜您,您已经成功的将您创建的 pod 库推送到了官方 pod 库!

    坑点 & 解决方案

    1. 解决pod lib lint/repo push不支持i386编译&只能真机运行的库

    1.pod lib lint 命令添加 --skip-import-validation 参数,lint 将跳过验证 pod 是否可以导入。

    2.pod trunk push 命令添加 --skip-import-validation 参数,push 将跳过验证 pod 是否可以导入。

    2.本库若依赖三方库和文件

    spec添加如下:

    文件例:

    spec.source_files = 'Reachability.{h,m}'

    framework例:

    spec.framework = 'SystemConfiguration'

    pod依赖例:

    spec.dependency 'SomeOtherPod'

    相关文章

      网友评论

        本文标题:iOS Pod Spec 发布流程

        本文链接:https://www.haomeiwen.com/subject/loblvktx.html