把自己的sdk通过cocoapods管理踩坑

写好的sdk打包成.a或者.framework之后,就可以拖进项目中使用了,但是这样每次都手动替换确实有点麻烦,于是就踏上了cocopods管理sdk的道路。

1、需要有github账号,新建一个**repository,拉到本地
001.png

由于公司电脑sourTree配置有问题,github的账号代码提交不了,这里用的是命令行进行提交和推拉的
git clone https://github.com/JZWDream/WDNetworkManager.git

2.查看有没有pod账号

pod trunk me

如果没有需要新一个 建议邮箱和姓名填github的邮箱和姓名

pod trunk register 邮箱 姓名

3.新建WDNetworkManager.podspec,新建WDNetworkManager文件夹,里面是pod管理的文件

pod spec create WDNetworkManager

002.png

编辑.podspec,也可以参考大佬们的第三库.podspec,直接拿来借鉴学习了


s.name = "WDNetworkManager"
s.version = "0.0.1"
s.summary = "WDNetworkManager."
s.description = <<-DESC
网络请求,YTKNetwork的简单封装
DESC

s.homepage = "https://github.com/JZWDream/WDNetworkManager"
s.license = { :type => "MIT", :file => "LICENSE" }
s.author = { "JZWDream" => "[email protected]" }
s.platform = :ios, "8.0"
s.source = { :git => "https://github.com/JZWDream/WDNetworkManager.git", :tag => "#{s.version}" }
s.source_files = "WDNetworkManager"

s.framework = "Foundation"
s.dependency "YTKNetwork"

end

4.校验本地podspec是否合法

pod lib lint WDNetworkManager.podspec

003.png

5.提交代码,打tag,注意:tag要和podspec里的version要保持一致


004.png

6.提交pod到specs仓库

pod trunk push WDNetworkManager.podspec

7.提交成功了之后pod search

如果搜索不到,请按下面步骤操作

  • 更新本地pod库

    pod repo update

  • 删除本地search_index.json 文件

    rm ~/Library/Caches/CocoaPods/search_index.json

  • 执行pod search 就OK了

  • 补充

    • 如果想要删除之前测试的库(针对代码洁癖者),可以按下面操作完成,如果是正式的给别人用的,强烈不建议这么搞。
    • 删除pod库某个版本
      pod trunk delete <*名称*> <*版本号*>
    • 删除pod库所有版本
      pod trunk deprecate <*名称*>
    • 删除github项目
    • 这时更新pod repo 再搜索就搜不到了。但是如果pod trunk me显示的的pods还在,这是因为本地的pod缓存
    • 删除本地的pod repo缓存
      方法一:直接删除本地缓存文件
      1576419605593.jpg

      方法二:通过pod命令行删除
      pod cache clean <*库名称*>
      记得更新pod repo update

如有疑问或者建议,欢迎在评论区留言

你可能感兴趣的:(把自己的sdk通过cocoapods管理踩坑)