cocopod相关–让代码主持cocopod

by admin on 2019年10月4日

一、首先你要在Cocopods有一个自己的账号。执行命令:pod trunk register 123630@qq.com 'Pluto Y' --description='Mg明明就是你'只要运行上面命令则会像Cocoapods方面注册一个账号,在自己邮箱进行确认之后即可正式注册成功。其语法为pod
trunk register 邮箱 ‘昵称’
–description=’设备信息’,其中的昵称和–description是可有可无的。通过pod
trunk me来查看是否”注册”成功。
如果成功的话,并且多台设备登陆的情况,具体如下图: Pluto Y是账户的名称

图片 1结果.png

二、好了,有了账号之后,当然是着手开始做了。创建项目:在给git
添加tag的方法:git tag '0.1'``git push --tags``git push origin master在项目根目录创建MGIndexView.podspec文件,这里的文件名就是你要发布到cocoapods上的名字,供他人搜索、安装。创建命令如下:

  1. 创建Podspec描述文件pod spec create MGIndexView图片 2EAD53B7D-D0B2-4B6A-ADAC-291ED1201893.png

pod spec lint PodName.podspec

图片 3验证有效性成功截图

pod trunk push PodName.podspec --allow-warnings命令行看到类似如下输出,说明已经成功了。现在可以去建个demo,使用cocoapods安装自己的库测试一下了。

图片 4图片 5命令行看到类似如下输出,说明已经成功了

  • ### ❎错误描述1:warning: Could not find remote branch v0.1 to clone.fatal: Remote branch v0.1 not found in upstream origin

  • ### ✅原因:没有给git 添加tag,或者添加的tag和PodName.podspec的写的不一致

  • ### ❎错误描述2:ERROR | [iOS] The source_files pattern did not match any file.

  • ### ✅原因:resource__file写的不对。

    • OC:s.source_files = ‘Classes/*.{h,m}’
    • Swift:”Classes/*.swift”
    • 以该例子为例:”MGIndexView/*.swift”
  • 1.开源库发布之后,需要打上tag

  • 2.进入到项目根目录下,创建podspec文件(PodName框架的名称)pod spec create PodName
  • 3.编辑podspec文件中的相关信息,有两个比较重要的地方s.source和s.source_files,可以验证是否有误:pod spec lint PodName.podspec
  • 4.注册pod
    trunk$ pod trunk register 123630@qq.com 'Orta Therox' --description='Mg明明就是你'
  • 5.发布到pod
    trunkpod trunk push [NAME.podspec]该命令在包含有.podspec文件的目录下执行
  • 6.更新pod库pod setup如果pod trunk push成功后无法pod
    search到自己的库,可执行该命令。

图片 6可拖拽的View.gif

参考博客:

手把手教你cocopod

1 提交自己的代码到github并打上tag

公司好几个项目都有用到一个同样模块的代码,为了方便批量修改和方便集成,将代码部署到了cocopod上面,以下为步骤及踩过的坑;
部署到cocopod上面的代码可以满足:
以下所有操作均在翻墙环境下。

2 创建.podspec文件,建议从github上别的代码下copy,修改为自己所用

1,纯代码写的
2,内含xib搭建的UI
3,依赖第三方框架
4,内含图片等资源
5,至于storyboard有待验证。

3 用pod spec lint
SelectedPicker.podspec来验证podspec是否正确,此时不能用模拟器

以下为大致步骤:

遇到的问题:

4 用pod trunk push 【specname.podspec】推podspec文件到cocoapods服务器

[1] - 将想要托管的代码封装出来,并且保证封装出来的代码编译通过。

[2]- 在GitHub上建立代码仓,如下图:

可能我们已经发布代码到cocopods了,但是执行pod search
<项目名>就是搜索不到。这时候可以参考下边这篇博客:

5 用pod search来验证是否成功

图片 7

1 添加tag git tag v1.1

建立Github仓库.png

2 删除tag git tag -d v1.1

[3]- 将上述建立的GitHub仓库CLONE到本地(客户端或者Git指令都行)

[4]- cd 到上述目录下,使用下列指令创建 .podspec文件
pod spec create xxxx(你的代码库名)

[5]- 使用xcode打开上述创建的xxxx.podspec文件,修改相关信息。
'[坑]':建议用xcode,我最开始用系统自带文本编辑器,老是报错。改成xcode之后编辑就好了。
s.name         = '代码库名'
s.summary      = '描述'
s.version      = '版本号,和提交代码realse版本保持一致'
s.license      = { :type => 'MIT', :file => 'LICENSE' }
s.authors      = { '你的名字' => '你的邮箱' }

s.homepage     = 'https://github.com/xxx/xxx.git'
s.platform     = :ios
s.ios.deployment_target = '8.0'
s.source       = { :git => 'https://github.com/xxx/xxx.git', :tag => s.version }

s.requires_arc = true
s.source_files = 'xxx/**/*.{h,m}'  这里**代表的是所有子文件夹,意思是xxx文件夹下所有子文件夹中的.h和.m文件
s.resources    = 'xxx/**/*.{png,xib,bundle}'意思是xxx文件夹下所有子文件夹中的.png和.xib、bundle文件

s.requires_arc = true
s.frameworks = 'UIKit','Photos','CoreLocation' 导入的系统库

s.dependency 'YYKit' 依赖的第三方库,如有多个,则写多行
s.dependency 'SDWebImage'

[6]- 所有文件导入好之后目录如下:

3 删除远程仓库的tag git push origin :refs/tags/1.1

图片 8

4 推本地tag到远程 git push –tags

文件目录.png

[7]- 提交代码,打上TAG,注意:TAG要和上述.podspec中的s.version保持一致,包括以后每次修改代码,重新发布托管,都要修改.podspec中的s.version。

[8]- 使用命令 : pod spec lint xxxx.podspec --allow-warnings
检测.podspec文件是否有错误,如果报错,按照提示更改错误即可。
若.podspec无错误,则代码将被编译
编译完成之后,看到下图信息:

图片 9

编译完成.png

如果是第一次提交。需要执行下列指令:
pod trunk register 这里写邮箱 '这里写名字' --description=' 这里写描述'
之后会收到一封邮件,按邮件内容链接点击即可。

[9]- 提交到CocoaPods
pod trunk push xxxx.podspec  --allow-warnings
提交成功,见图:

图片 10

提交成功.png

此时,便可以建立一个测试Demo,使用pod update方式导入你的代码库了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图