成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Jenkins中怎么打包android應(yīng)用

Jenkins中怎么打包android應(yīng)用,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

10年積累的網(wǎng)站設(shè)計制作、成都網(wǎng)站制作經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有平遙免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

1.生成的apk名加上當前時間 + 修改apk的發(fā)布路徑

在build.gradle配置文件下的android配置段下的buildTypes下找到你的編譯配置項一般就是release

在release段下面加上如下代碼

applicationVariants.all { variant ->
  if (variant.buildType.name.equals('release')) { //如果是release版本
   variant.outputs.each { output -> def outputFile = output.outputFile
   if (outputFile != null && outputFile.name.endsWith('.apk')) { //查找所有的apk
    def fileName = "${releaseTime()}_XXXXPorject_${defaultConfig.versionName}.apk" //重新定義apk的名稱
    output.outputFile = new File(outputFile.parent, fileName) //outputFile.parent參數(shù)可以改成你你想要的發(fā)布路徑
   }
  }
 }
}

然后在build.gradle配置文件的末尾加上一個方法用來獲取當前時間

def releaseTime() {
  // return new Date().format("yyyyMMdd", TimeZone.getTimeZone("UTC")) //年月日
  return new Date().format("yyyyMMdd HH-mm-ss", TimeZone.getTimeZone("GMT+8:00")) //年月日時分秒
}

2.實現(xiàn)自動化簽名 別忘了jks文件也要放項目里

build.gradle的android段添加如下配置段 定義簽名key

 signingConfigs {//簽名的配置
  release {
   storeFile file("簽名.jks")
   storePassword '密碼'
   keyAlias '別名'
   keyPassword '密碼'
  }
}

在android配置段下的buildTypes段的release段下添加一行 表示調(diào)用上面的簽名配置

注意修改apk的名字后在android studio是無法開啟調(diào)試模式,提示找不到apk

signingConfig signingConfigs.release

效果圖

第一個是debug版本

第二個是沒簽名的release版本

第三個是簽名后還改了名字的release版本

如果想編譯某個版本的話 需要修改下執(zhí)行g(shù)radle的命令行參數(shù)

Jenkins中怎么打包android應(yīng)用

參考例子

apply plugin: 'com.android.application'

android {
  compileSdkVersion 25
  buildToolsVersion '24.0.3'
  defaultConfig {
    applicationId "com.coderstory.Purify"
    minSdkVersion 19
    targetSdkVersion 25
    versionCode 90
    versionName "1.5.0"
    resConfigs "cn"
  }
  repositories {
    mavenCentral()
  }

  signingConfigs {//簽名的配置
    release {
      storeFile file("mykey.jks")
      storePassword 'a1234'
      keyAlias 'coolapk'
      keyPassword 'b1234'
    }
  }


  buildTypes {
    release {
      shrinkResources true
      minifyEnabled true
      signingConfig signingConfigs.release
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
      applicationVariants.all { variant ->
        if (variant.buildType.name.equals('release')) { //如果是release版本
          variant.outputs.each { output -> def outputFile = output.outputFile
            if (outputFile != null && outputFile.name.endsWith('.apk')) { //查找所有的apk
              def fileName = "MIUI Purify_${releaseTime()}_${defaultConfig.versionName}.apk" //重新定義apk的名稱
              output.outputFile = new File(outputFile.parent, fileName) //outputFile.parent參數(shù)可以改成你你想要的發(fā)布路徑
            }
          }
        }
      }
    }



  }
  productFlavors {
  }
   lintOptions {
    abortOnError false
  }


}

dependencies {
  provided fileTree(include: ['*.jar'], dir: 'libs')
  compile project(':library')
  compile project(':pull')
  compile 'com.android.support:support-v4:25.0.1'
  compile 'com.android.support:appcompat-v7:25.0.1'
  compile 'com.android.support:design:25.0.1'
  testCompile 'junit:junit:4.12'
  provided 'de.robv.android.xposed:api:82'
}

def releaseTime() {
 // return new Date().format("yyyyMMdd", TimeZone.getTimeZone("UTC")) //年月日
  return new Date().format("yyyyMMdd HH-mm-ss", TimeZone.getTimeZone("GMT+8:00")) //年月日時分秒
}

看完上述內(nèi)容,你們掌握Jenkins中怎么打包android應(yīng)用的方法了嗎?如果還想學到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

文章標題:Jenkins中怎么打包android應(yīng)用
轉(zhuǎn)載注明:http://jinyejixie.com/article12/pdccdc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、服務(wù)器托管手機網(wǎng)站建設(shè)、虛擬主機網(wǎng)站導航、網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
遵义县| 合水县| 墨竹工卡县| 涞源县| 阳曲县| 白沙| 青海省| 霍城县| 六枝特区| 白玉县| 五大连池市| 永新县| 肃南| 广汉市| 武义县| 荣昌县| 泽州县| 广昌县| 渭南市| 那曲县| 石家庄市| 江陵县| 长垣县| 比如县| 南充市| 岑溪市| 枝江市| 宜黄县| 普兰店市| 克东县| 康平县| 乳源| 皋兰县| 增城市| 祁阳县| 隆回县| 抚远县| 大渡口区| 社旗县| 荃湾区| 新安县|