美文网首页CocoaPods
ios 让项目支持cocoapod

ios 让项目支持cocoapod

作者: L小杰 | 来源:发表于2017-04-11 14:26 被阅读49次

    一、让自己的开源项目支持CocoaPods
    XJActionSheet 是我仿写的类微信底部弹出框,以它为例子!

    1. 在github上创建一个XJActionSheet,重要:记得选择开源协议 (MIT)(没有选的话,后面上传的pods会有警告)。
    2. 将XJActionSheet clone到自己的工作目录
    3. 在当前文件路径打开终端
    4. 创建一个podspec文件,命令:
      pod spec create XJActionSheet
    5. 编辑 podspec文件,这里是用vim打开的,命令:
      vim XJActionSheet.podspec
    6. 创建之后会自动生成一个模板,里面会有详细的注释,我们只需要按需要修改这个文件即可,下边这个是测试的时候我编辑的 (如果需要更更多的配置 可以参考别的开源项目的podspec文件):
    Pod::Spec.new do |s|
    s.name         = 'XJActionSheet'#名称
    s.version      = '0.0.1'  #版本号
    s.summary      = '仿微信底部alert' #简短介绍,下面是详细介绍
    #s.description      = <<-DESC
                           Testing Private Podspec.
    
                           * Markdown format.
                           * Don't worry about the indent, we strip it!
                           DESC
    s.homepage     = 'https://github.com/CoderXJLee/XJActionSheet'#主页,这里要填写可以访问到的地址,不然验证不通过
      # s.screenshots     = "www.example.com/screenshots_1", "www.example.com/screenshots_2"           #截图
    s.license      = 'MIT'  #开源协议
    s.authors      = {'lxj' => '452521617@qq.com'}#作者信息
    s.platform     = :ios, '8.0'#支持的平台及版本
    s.source       = {:git => 'https://github.com/CoderXJLee/XJActionSheet.git', :tag => s.version}#项目地址,这里不支持ssh的地址,验证不通过,只支持HTTP和HTTPS,最好使用HTTPS
      # s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>'                       #多媒体介绍地址
    #s.public_header_files = 'Pod/Classes/**/*.h'   #公开头文件地址
    s.source_files = 'XJActionSheetDemo/XJActionSheet/XJActionSheet.{h,m}'#代码源文件地址,**/*表示Classes目录及其子目录下所有文件,如果有多个目录下则用逗号分开,如果需要在项目中分组显示,这里也要做相应的设置
    #s.resource     = 'MJRefresh/MJRefresh.bundle'  #资源文件地址     
    s.requires_arc = true  #是否使用ARC,如果指定具体文件,则具体的问题使用ARC
      s.frameworks = 'UIKit'            #所需的framework,多个用逗号隔开
     # s.dependency 'AFNetworking', '~> 2.3'   #依赖关系,该项目所依赖的其他库,如果有多个需要填写多个s.dependency        
    end
    

    我也不是特别懂,具体复杂的,可以参考常用框架的podspec文件

    1. 创建tag,并推送到github,依次执行以下命令:
    $ git add .
    $ git commit -m "0.0.1"
    $ git tag 0.0.1
    $ git push --tags
    $ git push origin master
    
    1. 验证podspec文件
      pod spec lint XJActionSheet.podspec
      如果验证不通过,会有详细的ERROR和WARING提示,根据提示依次解决,然后回到第7步重新来一遍。
      注意:在重新开始之前,我们要删除远程库的tag和本地的tag,命令如下:
    $ git tag -d 0.0.1                   //删除本地tag
    $ git push origin :refs/tags/0.0.1  // 删除远程库tag
    

    如果只是报出警告可以执行 pod spec lint XJActionSheet.podspec --allow-warnings来忽略警告

    1. 验证通过后,提交到CocoaPods。命令:pod trunk push XJActionSheet.podspec
      如果是第一次提交,需要先执行这个命令:pod trunk register 这里写邮箱 '这里起个名字' --description=' 这里写描述
      例子pod trunk register 452521617@qq.com 'lxj' --description='MacBook pro
      执行完成之后,会给你的邮箱里发一封邮件,去邮箱点击链接之后,再重新执行第9步即可!

    执行pod search 查看是否添加成功,如果搜不到,可以清除缓存rm ~/Library/Caches/CocoaPods/search_index.json

    相关文章

      网友评论

        本文标题:ios 让项目支持cocoapod

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