国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android Studio多渠道打包、自定義打包APK名稱

2019-12-12 01:21:01
字體:
供稿:網(wǎng)友

現(xiàn)在為了推廣產(chǎn)品,會(huì)在多個(gè)渠道應(yīng)用市場發(fā)布應(yīng)用,為了統(tǒng)計(jì)不同渠道的數(shù)據(jù),需要在應(yīng)用中表明渠道,如果一個(gè)一個(gè)去修改打包效率會(huì)很低。AS為我們提供了簡便的方法,可以多渠道打包,一次打包所有的渠道包。

1. AS 2.x多渠道打包

(1) AndroidManifest中增加節(jié)點(diǎn)

<!-- 多渠道打包 -->   ...    <meta-data      android:name="UMENG_CHANNEL"      android:value="${UMENG_CHANNEL_VALUE}" />   ...

(2) 項(xiàng)目app module的build.gradle的android中

android {   ....    //多渠道打包    productFlavors {      yingyongbao {}      huawei {}      baidu {}           xiaomi {}      qh360 {}         }    productFlavors.all {      flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]    }   ....}

2. AS 2.x自定義打包APK名稱

android {   ....   //自定義打包時(shí)apk名稱   applicationVariants.all { variant ->     variant.outputs.each { output ->     def fileName = "${variant.versionName}_${variant.productFlavors[0].name}_release.apk"     def outFile = output.outputFile     if (outFile != null && outFile.name.endsWith('.apk')) {       output.outputFile = newFile(outFile.parent, fileName)     }     }   ....}

最后打包之后apk放在項(xiàng)目 app/build/outputs/apk 文件夾下,apk名稱:版本名_渠道名.apk

3. AS 3.x多渠道打包

(1) AndroidManifest中增加節(jié)點(diǎn)(和2.x一樣,沒有變化)

<!-- 多渠道打包 -->   ...    <meta-data      android:name="UMENG_CHANNEL"      android:value="${UMENG_CHANNEL_VALUE}" />   ...

(2) 項(xiàng)目app module的build.gradle的android中

多版本打包

android {   ....    //多渠道打包    flavorDimensions "tier","minApi"    productFlavors {      yingyongbao {        dimension "tier"      }      huawei {        dimension "tier"      }      baidu {        dimension "tier"      }           xiaomi {        dimension "minApi"      }      qh360 {        dimension "minApi"      }         }    productFlavors.all {      flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]    }   ....}

單版本打包

android {  ...  defaultConfig {    ...   flavorDimensions "code"  }  productFlavors {     yingyongbao {}     huawei {}     baidu {}          xiaomi {}     qh360 {}       }  productFlavors.all {     flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]  }  ...}

AS 3.0后grade添加了flavorDimensions屬性,用來控制多個(gè)版本的代碼和資源,缺失會(huì)報(bào)錯(cuò)

4. AS 3.x自定義打包APK名稱

android {   ....   //自定義打包時(shí)apk名稱   applicationVariants.all { variant ->     variant.outputs.all { output ->// each 改為 all     def fileName = "${variant.versionName}_${variant.productFlavors[0].name}_release.apk"     def outFile = output.outputFile     if (outFile != null && outFile.name.endsWith('.apk')) {       outputFileName = fileName // output.outputFile 改為 outputFileName      }     }   ....}

APK名稱:版本名_渠道名.apk

以上就是AS 2.x和AS 3.x多渠道打包、自定義打包APK名稱對(duì)比區(qū)別,大家可根據(jù)自己的AS版本來選用相應(yīng)的方法,希望對(duì)大家有所幫助!如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)武林網(wǎng)網(wǎng)站的支持!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 丰台区| 馆陶县| 隆林| 蓬安县| 璧山县| 旅游| 龙川县| 巫溪县| 稻城县| 方城县| 宁都县| 盐山县| 韶山市| 大邑县| 犍为县| 务川| 镇巴县| 海城市| 鄂尔多斯市| 门源| 乐东| 墨江| 双城市| 龙游县| 靖远县| 惠州市| 肇州县| 玉龙| 博野县| 钟山县| 彭泽县| 赤壁市| 赤峰市| 青海省| 安阳市| 广水市| 松溪县| 桦川县| 静宁县| 武冈市| 噶尔县|