Bundle version VS Bundle versions string
2015-10-29 09:37
489 查看
今天上传新版本,在修改Bundle version和Bundle versions string的时候突然想到:一直以来都没有深究过这两个字段的真正含义,只是保持它们一样。那么它们真正的用途到底是什么呢?今天来探究一下。
Bundle Version不需要是一个纯粹的版本号,它可以是1234,也可以是1.2.3(Build 12345AB)
必须与用于iTunes Connect的版本号保持一致。
Bundle Version String不能超过三个部分。例如:2.0.1是可以的,但是2.0.0.1是不可以的。
当Bundle Version String缺省时,Bundle Version替代Bundle Version String的功能,同时也继承他的限制(比如格式,位数等),展示在AppStore中。
1. Info.plist 中设置Bundle Version String;
2. Info.plist中Bundle version设置为数字 比如1,如果设置为其它,则可能会编译错误;
3. 添加脚本
1. TARGETS -> Build Phases
2. 点击左上角的‘+’,在弹出的选择框中点击New Run Script Phase,如下图:
3. 在Run script中添加以下脚本:
如图:
OK,这样设置以后,每次编译,Build version都会自增1.
区别
Bundle Version (CFBundleVersion)
Bundle Version是应用程序的内部版本号。Bundle Version不需要是一个纯粹的版本号,它可以是1234,也可以是1.2.3(Build 12345AB)
Bundle Version String (CFBundleShortVersionString)
Bundle versions string 是应用程序公开可见的版本号。例如,你每次迭代一个内部测试版本时,都会生成一个版本号,这个版本号可能是2.0.0.12345b7,但是你不想让其公开可见,所以你设置应用程序的短版本号为2.0。必须与用于iTunes Connect的版本号保持一致。
Bundle Version String不能超过三个部分。例如:2.0.1是可以的,但是2.0.0.1是不可以的。
当Bundle Version String缺省时,Bundle Version替代Bundle Version String的功能,同时也继承他的限制(比如格式,位数等),展示在AppStore中。
Xcode 设置自增编译版本号
步骤:1. Info.plist 中设置Bundle Version String;
2. Info.plist中Bundle version设置为数字 比如1,如果设置为其它,则可能会编译错误;
3. 添加脚本
1. TARGETS -> Build Phases
2. 点击左上角的‘+’,在弹出的选择框中点击New Run Script Phase,如下图:
3. 在Run script中添加以下脚本:
version=`/usr/libexec/PlistBuddy -c "Print CFBundleVersion" $PRODUCT_SETTINGS_PATH` version=`expr $version + 1` /usr/libexec/PlistBuddy -c "Set :CFBundleVersion $version" $PRODUCT_SETTINGS_PATH #/usr/libexec/PlistBuddy -c "Set :CFBundleShortVersionString $version" $PRODUCT_SETTINGS_PATH 这行代码会让version也自增,一般不需要
如图:
OK,这样设置以后,每次编译,Build version都会自增1.
相关文章推荐
- js判断游览器类型及版本号的代码
- android实用工具类分享(获取内存/检查网络/屏幕高度/手机分辨率)
- 使用Appcan客户端自动更新PHP版本号(全)
- xcode 4 制作静态库图文详解
- 解决 Xcode 6-Beta2 智能提示bug
- XCode编译速度慢的处理方法
- mac git xcrun error active developer path 错误
- Xcode使用教程详细讲解(全)
- Cocos2d开发1:Xcode与TexturePacker的集成
- windows下objective-c的cocoa框架编程,可以有图形界面哟
- Xcode5.0.2 资源更新问题
- 在Linux系统的服务器上隐藏PHP版本号的方法
- Xcode7升级到Xcode8之后遇到文件冲突
- 查询linux发行版本号方法总结
- 查询linux发行版本号方法总结
- Mac OS X上搭建本地SVN服务器
- Doxygen资料整理
- xcode 调试技巧
- xcode 每次 全部 重新 编译 的问题
- Xcode快捷键大全