博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
通过 RunScript 给 iOS 项目自增版本号(Versioin 和 Build)
阅读量:6338 次
发布时间:2019-06-22

本文共 1300 字,大约阅读时间需要 4 分钟。

需求分析

  • 在打包应用之后,需要自增 Version 的最后一位Build 的值。
  • 只在 Archive(Release) 的时候触发该自增。

添加 RunScript

项目Target -> Build Phases -> 点击+号 -> New Run Script Phase

然后添加如下内容:

if [ $CONFIGURATION == Release ]; then    echo "当前为 Release Configuration,开始自增 Build"    plist=${INFOPLIST_FILE}    buildnum=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${plist}")    if [[ "${buildnum}" == "" ]]; then    	echo "Error:在Plist文件里没有 Build 值"    	exit 2    fi    buildnum=$(expr $buildnum + 1)    /usr/libexec/PlistBuddy -c "Set CFBundleVersion $buildnum" "${plist}"    echo "开始自增 Version 最后一位"    versionNum=$(/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" "${plist}")    thirdPartVersonNum=`echo $versionNum | awk -F "." '{print $3}'`    thirdPartVersonNum=$(($thirdPartVersonNum + 1))    newVersionStr=`echo $versionNum | awk -F "." '{print $1 "." $2 ".'$thirdPartVersonNum'" }'`    /usr/libexec/PlistBuddy -c "Set CFBundleShortVersionString $newVersionStr" "${plist}"else    echo $CONFIGURATION "当前不为 Release Configuration"fi复制代码

注意

因为我的版本号是xx.xx.xx这样的形式,所以我以 . 拆分版本号后,取出第三个值来增加,最后再拼接回来。

versionNum=$(/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" "${plist}")# 这里取出第三个值thirdPartVersonNum=`echo $versionNum | awk -F "." '{print $3}'`复制代码

转载于:https://juejin.im/post/5aa7f3e8518825555d46f05a

你可能感兴趣的文章
小公司职场不是“切糕”
查看>>
play工程部署到云服务器
查看>>
ListView 取消点击效果
查看>>
wampServer连接oracle
查看>>
CentOS 6.5下编译安装新版LNMP
查看>>
Android Picasso
查看>>
top命令
查看>>
javascript的作用域
查看>>
新形势下初创B2B行业网站如何经营
查看>>
初心大陆-----python宝典 第五章之列表
查看>>
java基础学习2
查看>>
sysbench使用笔记
查看>>
有关电子商务信息的介绍
查看>>
NFC·(近距离无线通讯技术)
查看>>
多线程基础(三)NSThread基础
查看>>
PHP的学习--Traits新特性
查看>>
ubuntu下,py2,py3共存,/usr/bin/python: No module named virtualenvwrapper错误解决方法
查看>>
Ext.form.field.Number numberfield
查看>>
Linux文件夹分析
查看>>
解决部分月份绩效无法显示的问题:timestamp\union al\autocommit等的用法
查看>>