自定义版本号

完全版本号的组成:

 

主版本号+次版本号+阶段版本号+阶段内意外版本号+日期版本号(6位) +_希腊字母版本号

如:1.0.1.0.111121_γ

 

版本号组成介绍:

主版本号:功能模块有大的变动,比如增加多个模块或者整体架构发生变化。
次版本号:和主版本相对而言,次版本号的升级对应的只是局部的变动。
但该局部的变动造成了程序和以前版本不能兼容,或者对该程序以前的协作关系产生了破坏,
或者是功能上有大的改进或增强。

 

阶段版本号:局部的变动,主要是局部函数的功能改进,或者bug的修正,或者功能的扩充。
阶段内意外发版版本号: 在阶段版本正在研发过程中的意外发版。
日期版本号:取软件发布当天的时间
希腊字母版本号:α(Alpha)             内网测试版
                 β(Beta)               外网测试版
                 γ(Release)            外网正式版
注:主版本号、次版本号个阶段版本号大家都比较容易理解。
    这里我主要举例说明介绍下阶段内意外发版版本号:
    eg: A公司针对某一款产品计划在11年11月1号和11年12月30号两天做发版更新。 
           11年11月1号的版本号为:1.0.1.0.111101_γ
          11年12月30号的版本号为:1.0.2.0.111230_γ
         突然,在11年11月1号到11年12月30号之间的某一天(我们假设为11年12月15日),
A公司的B领导在计划外决定要紧急发一次版处理一个紧急的小问题,
此时这个版并不属于11月1号的版本,也不属于12月30号的版本,
这个版其实是在11月1号版本的基础上的一个更小的版本  -> 阶段内意外发版版本。
         这时候,12月15号这天的版本号则为: 1.0.1.1.111215_γ,这时我们发现主版本号、
此版本号和阶段版本号同11月1日的版本号都相同,除了日期版本号不同以外
,只有阶段内意外发版版本号不同。  
另外说一点,如果11月1号代码没有做备份,直接在其基础上按照计划开发12月30号的版本
,那么12月15号这天的发版会很纠结,外网正式网的代码版本是11月1号发的
,代码已经加入了12月30号的东西,故而不能用来直接修改发版 -> 软件版本的控制很重要。
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,我可以为您介绍一些打包技巧来自定义Android应用程序的版本号和名称。 首先,您可以在项目的 build.gradle 文件中设置 versionCode 和 versionName 属性,以自定义应用程序的版本号和名称。versionCode 是一个整数,用于标识应用程序的版本,而 versionName 是一个字符串,用于显示应用程序的版本名称。 例如,在 build.gradle 文件中添加以下代码: ``` android { defaultConfig { versionCode 1 versionName "1.0" } } ``` 这将设置应用程序的版本号为 1 和版本名称为 "1.0"。 其次,如果您想要根据应用程序的不同渠道或变体来自定义应用程序的名称,您可以使用 Gradle 的 productFlavors 来实现。您可以为每个渠道或变体设置不同的应用程序名称和版本号。 例如,在 build.gradle 文件中添加以下代码: ``` android { defaultConfig { versionCode 1 versionName "1.0" } productFlavors { flavor1 { applicationId "com.example.flavor1" versionCode 1 versionName "1.0-flavor1" } flavor2 { applicationId "com.example.flavor2" versionCode 1 versionName "1.0-flavor2" } } } ``` 这将创建两个不同的变体,flavor1 和 flavor2,每个变体都有不同的应用程序 ID、版本号和名称。 最后,如果您想要自定义打包后的 APK 文件的名称,您可以使用 Gradle 的 buildTypes 和 flavorDimensions 属性来实现。您可以为每个构建类型和变体设置不同的 APK 文件名称。 例如,在 build.gradle 文件中添加以下代码: ``` android { defaultConfig { versionCode 1 versionName "1.0" } buildTypes { release { ... archivesBaseName = "MyApp-Release" } debug { ... archivesBaseName = "MyApp-Debug" } } flavorDimensions "version" productFlavors { flavor1 { applicationId "com.example.flavor1" versionCode 1 versionName "1.0-flavor1" dimension "version" } flavor2 { applicationId "com.example.flavor2" versionCode 1 versionName "1.0-flavor2" dimension "version" } } } ``` 这将为 release 和 debug 两个构建类型分别设置不同的 APK 文件名称,以及为 flavor1 和 flavor2 两个变体设置不同的应用程序 ID、版本号和名称。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安得权

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值