使用Cocoapods制作自己的Pod库

作者: 程序员不务正业 | 来源:发表于2018-05-11 14:44 被阅读106次

    先学会制作静态库

    github的Demo

    关于制作cocoapods后导入没有文件夹结构问题,参考AFN文件依赖关系

    Demo中有一个autoFramework.sh的脚本
    可根据自己的需求#发布pod使用(默认)或者#打包成SDK

    部分路径需根据自己项目位置调整,入DEMOPATH等

    #!/bin/bash
    #该脚本仅适用于cocoapods生成的framework静态库
    frameworkName='iComeSDK'
    #修改
    oldversion='0.7.6.3'
    #修改
    version='0.7.6.4'
    message='0.7.6.4版本自动化发布pod与sdk同时生成'
    
    pod lib lint ${frameworkName}.podspec  --no-clean --verbose --allow-warnings 
    #代码提交到服务器
    git add .
    git commit -a -m${version}${message}
    git tag -a $version -m${message}
    git push origin ${version}
    git push -u origin master 
    #修改version
    sed -i '' "s/${oldversion}/${version}/g" ${frameworkName}.podspec
    
    
    #发布pod使用
    ##########################################################################
    pod spec lint --allow-warnings
    #发布到cocoapods库
    pod trunk push ${frameworkName}.podspec --allow-warnings
    
    #!!!!!The spec did not pass validation, due to 902 warnings!!!!!!!!!!! 警告忽略就是了
    ##########################################################################
    
    
    ################################私有库##########################################
    privateSpecs='修改为自己存放spec文件的仓库'
    cocoapodsSpecs='https://github.com/CocoaPods/Specs'
    #私有库校验
    pod spec lint --sources='${privateSpecs},${cocoapodsSpecs}' --no-clean --private --allow-warnings --verbose
    #发布私有pod
    pod repo push ${frameworkName}.podspec --sources='${privateSpecs},${cocoapodsSpecs}' --verbose --allow-warnings
    ##########################################################################
    
    
    #打包成SDK,拷贝到自己的demo目录,并且上传到github等操作
    ##########################################################################
    pod package ${frameworkName}.podspec --force
    sdkFilePath=$(cd `dirname $0`;pwd)
    SDK="${sdkFilePath}/iComeSDK-${version}/ios/iComeSDK.framework"
    #自己编写的sdk测试demo所在位置
    DEMOPATH="/Users/zhangrongwu/iComeProj/iComeDemo-SDK"
    cp -rf ${SDK} ${DEMOPATH}
    #到sdk使用目录下
    cd /Users/zhangrongwu/iComeProj/iComeDemo-SDK
    #上传文件,其中autoPush.sh文件是放在demo中的git上传文件脚本,可自己实现
    sh /Users/zhangrongwu/iComeProj/iComeDemo-SDK/autoPush.sh ${version} ${message}
    ##########################################################################
    

    cd 到目录下,终端执行 sh autoFramework.sh

    可以先使用 pod spec lint project.podspec —allow-warnings
    进行验证是否通过,再有发布前需要注册帐号

    pod trunk register XXXXXX@163.com “name”
    

    执行成功后


    545F7857-3DE9-4F91-B3E4-72632DCB1524.png

    注意一点,发布新的版本时需修改autoFramework.sh脚本文件中的oldversion和version,并且oldversion一定要对应project.podspec文件中的s.version ,如图


    841FB9A2-F365-4E49-B94C-CB253DECA5BA.png

    每次打包发布版本前修改oldversion和version就可以了

    嗯,就这样

    相关文章

      网友评论

        本文标题:使用Cocoapods制作自己的Pod库

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