成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

android studio 打包自動生成版本號與日期,apk輸入路徑詳解

瀏覽:182日期:2022-09-25 15:45:00

一. 打開項目選擇如圖示1 (build.gradle 項目位置)

android studio 打包自動生成版本號與日期,apk輸入路徑詳解

二. 1. build.gradle 文件添加內容如下。gradle是【com.android.tools.build:gradle:3.0.0 以下版本】

android{ defaultConfig {...} 自動追加版本號和版本名稱 android.applicationVariants.all { variant->variant.outputs.each { output-> output.outputFile = new File(output.outputFile.parent,'app_device_v'+defaultConfig.versionName+'_'+new Date().format('yyyy-MM-dd')+'_'+buildType.name+'.apk') } }}

output.outputFile.parent 可以指定輸出到指定文件夾

2. build.gradle 文件添加內容如下。 gradle是【com.android.tools.build:gradle:3.0.0及其以上版本】

android{ defaultConfig {...} //release版本輸出包名自動追加版本號和版本名稱 applicationVariants.all { variant -> variant.outputs.all {//只處理生產版本if (buildType.name == ’release’) { def createTime = new Date().format('YYYY-MM-dd', TimeZone.getTimeZone('GMT+08:00')) // app包名稱 outputFileName = 'app_v' + defaultConfig.versionName + '_' + createTime + '_' + buildType.name + '.apk' ////指定release輸出到指定文件夾 variant.getPackageApplication().outputDirectory = new File(config.appReleaseDir + '/${createTime}')} } }}

三. 打包查看結果:圖示3(直接點擊assembleRelease即可)

android studio 打包自動生成版本號與日期,apk輸入路徑詳解

補充知識:Android編譯gradle 動態修改版本號

在構建代碼的時候不想每次都修改版本號,需能夠增加一個功能在特定的條件下動態的修改版本號

在manifest里面加入占位符號

<manifest xmlns:android='http://schemas.android.com/apk/res/android' android:versionCode='${versioncode}' android:versionName='${versionname}'>

修改build.gradle

import com.google.gson.Gsonclass Version { int versionCode String versionName}def versionJsonFile = file(’./version.json’)//這個文件最好放一個所有項目人員都能夠訪問的地方 def versionJsonObject = new Gson().fromJson(versionJsonFile.text, Version.class) android.applicationVariants.all { variant -> println('variants name : ' + variant.name) //只有滿足特定條件的情況下才會版本自增一,這個可以看看各個項目的特定配置 if (variant.name.toLowerCase().contains('ceshirelease') ) {println('variants name : versionCode ' + versionJsonObject.versionCode + 'versionname: ' + versionJsonObject.versionName)versionJsonObject.versionCode = versionJsonObject.versionCode + 1int lastIndexPoint = versionJsonObject.versionName.lastIndexOf('.')String newStr = versionJsonObject.versionName.substring(0, lastIndexPoint)println('newStr' + newStr)versionJsonObject.versionName = newStr + '.' + versionJsonObject.versionCodeprintln('versonJsonStr.versionName ' + versionJsonObject.versionName) } //這句是核心,可以調整版本號和版本明,修改了這個會影響到BuildConfig.class里面的屬性 variant.mergedFlavor.versionCode = versionJsonObject.versionCode variant.mergedFlavor.versionName = versionJsonObject.versionName //如果沒有加下面這句,當應用安裝后會出現應用信息沒有版本號的問題,這個必須有 variant.mergedFlavor.manifestPlaceholders.put('versioncode', versionJsonObject.versionCode) variant.mergedFlavor.manifestPlaceholders.put('versionname', versionJsonObject.versionName) } //為了記住最新的版本號,是需要進行文件的回寫的,什么時候回寫會好一點 //個人認為只有當打包apk的動作執行成功后 回寫文件記錄的版本號最優 afterEvaluate { project -> gradle.taskGraph.afterTask {task, taskState -> //這里如果assembleceshirelease 就具體的打包的變種項目,各個應用肯定不一樣,需要調整下 if (task.name.toLowerCase().contains('assembleceshirelease') && taskState.getFailure() == null) { println('try assemble ceshi release' ) //回寫文件操作 versionJsonFile.withPrintWriter { out ->out.println(new Gson().toJson(versionJsonObject)) } } } }

給apk重新命名也是同樣的道理

variant.getOutputs().all {File file = it.outputFile;println(' file property file.canRead() ' + file.canRead() + ' file.canWrite ' + file.canWrite())String pathString = file.getPath();println(' path String : ' + pathString + ' File.pathSeparator: ' + File.separator) //指定最終輸出的文件的目錄和名字pathString = file.getParent() + File.separator + 'test.apk';println(' path pathString : ' + pathString)file.renameTo(pathString) }

以上這篇android studio 打包自動生成版本號與日期,apk輸入路徑詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Android
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
亚洲天堂成人网| 亚洲私人黄色宅男| 国产精品美女久久久久久久| 久久99精品国产| 久久香蕉精品| 亚洲综合一区在线| 亚洲精品社区| 亚洲精品成a人| 99国产精品视频免费观看一公开 | 视频一区二区三区在线| 99精品福利视频| 亚洲三级电影全部在线观看高清| aaa欧美日韩| 精品国产a毛片| 成人午夜在线免费| 欧美一级夜夜爽| 国产精品影视网| 日韩一区二区影院| 成人免费视频免费观看| 日韩免费高清电影| 成人一级片在线观看| 精品美女一区二区三区| www.亚洲国产| 久久嫩草精品久久久久| 99国产一区二区三精品乱码| 日韩免费成人网| 91在线精品一区二区三区| 精品国产一区二区三区av性色| av在线播放一区二区三区| 精品久久久久久久久久久院品网| av激情综合网| 亚洲国产成人私人影院tom| 国产综合第一页| 中文字幕综合网| 国产三级精品在线不卡| 午夜私人影院久久久久| 色偷偷久久一区二区三区| 视频一区二区国产| 在线视频欧美精品| 国产一区亚洲一区| 欧美大片在线观看一区| 不卡一卡二卡三乱码免费网站| www精品美女久久久tv| 欧美三区在线| 亚洲男人天堂av| 久久久久久国产精品一区| 久久99精品国产91久久来源| 日韩欧美一区中文| 国产精品分类| 亚洲国产精品久久一线不卡| 在线免费观看日本一区| 国产精品一区久久久久| 久久这里只有精品首页| 激情一区二区三区| 性感美女久久精品| 777久久久精品| 91免费看片在线观看| 亚洲欧美电影院| 色综合久久久久网| 国产一区二区日韩精品| 欧美xxxxxxxx| 亚洲国产片色| 免费观看在线综合色| 日韩精品中文字幕在线不卡尤物 | 亚洲制服丝袜av| 精品视频一区二区三区免费| 成年人国产精品| 亚洲精品美国一| 欧美日韩一区中文字幕| 欧美1区2区3区| 亚洲福利一区二区三区| 7777精品伊人久久久大香线蕉 | 国产激情一区二区三区四区 | 一本色道久久加勒比精品| 国产成人啪午夜精品网站男同| 久久久99久久精品欧美| 亚洲精品极品| 国模少妇一区二区三区| 国产拍揄自揄精品视频麻豆| 亚洲欧美日本国产专区一区| 狠狠色丁香婷婷综合| 国产日韩影视精品| 美玉足脚交一区二区三区图片| 国产福利一区二区| 亚洲视频免费看| 7878成人国产在线观看| 日韩图片一区| 成熟亚洲日本毛茸茸凸凹| 亚洲欧美日韩综合aⅴ视频| 欧美日韩不卡在线| 黑人一区二区| 韩国精品一区二区| 国产精品国产三级国产aⅴ中文| 欧美中文字幕一区二区三区 | 国产一区二区三区四区五区美女 | 激情亚洲综合在线| 国产精品色婷婷| 欧美午夜在线观看| 午夜精品剧场| 精品一区二区久久| 亚洲免费av高清| 日韩一二三四区| 国产九九精品| 91麻豆国产精品久久| 日本不卡免费在线视频| 国产精品日日摸夜夜摸av| 欧美三级视频在线观看| 影院欧美亚洲| 丰满少妇在线播放bd日韩电影| 成人免费小视频| 日韩一区二区三区免费观看| 国产精品推荐精品| 99视频在线精品| 久久国产免费看| 1024国产精品| 精品国精品国产尤物美女| 色菇凉天天综合网| 亚洲网址在线| 成人免费的视频| 日韩黄色免费电影| 国产精品国产三级国产专播品爱网| 日韩一级在线观看| 色视频成人在线观看免| 亚洲高清在线播放| 91色porny| 国产剧情在线观看一区二区| 午夜视频在线观看一区| 亚洲免费看黄网站| 国产日韩av一区| 日韩一级在线观看| 欧美日韩在线播放三区四区| 性欧美暴力猛交另类hd| 国产一区观看| 99国产精品久久久久| 久久精品二区亚洲w码| 亚洲综合一二三区| 日本一区二区综合亚洲| 日韩一区二区三区四区| 欧美三片在线视频观看| 亚洲一区三区视频在线观看| 欧美日韩免费观看一区| 成人黄页毛片网站| 激情五月婷婷综合| 蜜桃传媒麻豆第一区在线观看| 亚洲欧美日韩在线不卡| 欧美国产日韩a欧美在线观看| 欧美一区中文字幕| 欧美亚洲综合网| 久久久成人网| 国产精品久久久一区二区三区| 国产精品大片免费观看| av电影一区二区| 国产成人精品亚洲午夜麻豆| 久久精品国产一区二区| 亚洲va欧美va天堂v国产综合| 亚洲日本丝袜连裤袜办公室| 国产女同性恋一区二区| 欧美精品一区二区不卡| 91精品国产91久久久久久一区二区 | 99国产精品久久久久久久久久久 | 亚洲福利一区二区| 亚洲蜜臀av乱码久久精品| 国产欧美精品一区| 国产亚洲欧美激情| 精品欧美一区二区在线观看| 欧美精品 国产精品| 欧洲精品一区二区| 一本久久精品一区二区| 午夜宅男久久久| 日韩亚洲精品在线| 伊人精品成人久久综合软件| 欧美午夜精品久久久久免费视| 99re热视频精品| 99久久久国产精品| 不卡的av电影在线观看| 成人av在线播放网址| 成人性视频免费网站| 成人免费视频视频在线观看免费 | 亚洲一区二区三区四区五区中文| 亚洲天堂福利av| 亚洲黄色录像片| 伊人开心综合网| 一区二区三区成人| 一区二区三区欧美在线观看| 一区二区三区小说| 一区二区三区四区在线播放| 亚洲一区二区精品久久av| 亚洲成人精品一区二区| 日韩精品一二三四| 日本不卡视频在线观看| 激情综合色综合久久综合| 国产精品中文欧美| 成人免费视频网站在线观看| 成人国产亚洲欧美成人综合网| 日韩美女精品在线| 亚洲免费av观看| 性做久久久久久免费观看 | 国内精品在线播放| 欧美三级蜜桃2在线观看| 色老汉一区二区三区|