iOS 项目中的version和build 详解

Mora ·
更新时间:2024-09-20
· 938 次阅读

iOS 项目中的version和build

Version在plist文件中的key是“CFBundleShortVersionString”,标识应用程序的发布版本号,和AppStore上的版本号保持一致。该版本的版本号是三个分隔的整数组成的字符串。第一个整数代表重大修改的版本,如实现新的功能或重大变化的修订。第二个整数表示的修订,实现较突出的特点。第三个整数代表维护版本

Build在plist文件中的key是“CFBundleVersion”,标示(发布或者未发布)的内部版本号。这是一个单调增加的字符串,包括一个或者多个分割的整数。

以上两个版本号可以通过以下方式获得:

NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary]; // app版本 NSString *app_Version = [infoDictionary objectForKey:@"CFBundleShortVersionString"]; // app build版本 NSString *app_build = [infoDictionary objectForKey:@"CFBundleVersion"];

编写脚本使Archive后自动增长build版本号

如果我们想在Archive后build号自动增长,就可以使用到Xcode的run script来实现,步骤是

选中项目的target,点击“Build Phases“ 点击右下角的”Add Build Phrase“,选择”Add run script“,会产生一个新的Run Script项 拖拽新生成的Run Script项到最上面 点开该项,copy下面的shell代码进去,代码来自这里,如下图所示
if [ $CONFIGURATION == Release ]; then echo "Bumping build number..." plist=${PROJECT_DIR}/${INFOPLIST_FILE} #increment the build number (ie 115 to 116) buildnum=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${plist}") if [[ "${buildnum}" == "" ]]; then echo "No build number in $plist" exit 2 fi buildnum=$(expr $buildnum + 1) /usr/libexec/Plistbuddy -c "Set CFBundleVersion $buildnum" "${plist}" echo "Bumped build number to $buildnum" else echo $CONFIGURATION " build - Not bumping build number." fi

这段shell脚本的意思就是说,如果当前的配置是Release(Archive时该值为Release,直接在模拟器上运行是Debug),就设置build值为当前build值+1, 否则什么都不干。

这样在build的时候就会看到build号会自动加1的,想看build时输出的信息,可以通过”View -> Navigators -> Log”来查看最新的build时产生的log。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

您可能感兴趣的文章:新手推荐BIOS设置、硬盘分区、系统安装、备份全程图解!JS辨别访问浏览器判断是android还是ios系统iOS内存错误EXC_BAD_ACCESS的解决方法Nagios远程监控安装与配置详解图文iOS开发中WebView的基本使用方法简介js判断客户端是iOS还是Android等移动终端的方法IOS开发代码分享之设置UISearchBar的背景颜色IOS获取各种文件目录路径的方法iOS开发中实现显示gif图片的方法



version IOS build

需要 登录 后方可回复, 如果你还没有账号请 注册新账号