友盟打包

xiaoxiao2021-02-28  78

name.png

1、在清单文件 AndroidManifest.xml 中添加如下带

在 AndroidManifest.xml 文件 中 application 内 添加:

<meta-data android:name="UMENG_CHANNEL" android:value="${UMENG_CHANNEL_VALUE}" />

这个是在使用友盟统计时的一个代码示例,meta-data 中的 name 是可以更改的,根据实际需求如自己修。

Android Studio打包的时候,我们想自定义自己的文件名,则可以使用

applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile if (outputFile != null && outputFile.name.endsWith('.apk')) { // apk_渠道名-版本号-版本名称-编译时间.apk def fileName = "apk_${variant.productFlavors[0].name}-${defaultConfig.versionCode}-${defaultConfig.versionName}-${releaseTime() }.apk" output.outputFile = new File(outputFile.parent, fileName) } } }

其中releaseTime()如下:

def releaseTime() { return new Date().format("yyyyMMdd", TimeZone.getTimeZone("UTC")) }

Sync Now之后,正常打包,打出来的文件名就会是我们想要的了apk_渠道名-版本号-版本名称-编译时间.apk

apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "24.0.0" defaultConfig { applicationId "app." minSdkVersion 16 targetSdkVersion 22 versionCode 10 // 9 versionName "1.2.4" } sourceSets { main { jniLibs.srcDirs = ['src/main/jniLibs'] } } buildTypes { release { // 混淆 minifyEnabled true // Zipalign优化 zipAlignEnabled true // 移除无用的resource文件 shrinkResources true // 前一部分代表系统默认的android程序的混淆文件,该文件已经包含了基本的混淆声明,后一个文件是自己的定义混淆文件 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile if (outputFile != null && outputFile.name.endsWith('.apk')) { // apk_渠道名-版本号-版本名称-编译时间.apk def fileName = "apk_${variant.productFlavors[0].name}-${defaultConfig.versionCode}-${defaultConfig.versionName}-${releaseTime() }.apk" output.outputFile = new File(outputFile.parent, fileName) } } } } } productFlavors { qihu360 {} // 360手机助手 yingyongbao {} // 腾讯应用宝 wandoujia {} // 豌豆荚 // baidu {} // 百度手机助手 // miui {} // 小米 // flyme {} // 魅族 // lenovo {} // 联想-乐商店 // oppo {} // Oppo-可可软件商店 // huawei {} // 华为 // vivo {} // vivo // hiapk {} // 安卓市场 // sj91 {} // 91手机助手 // sogou {} // 搜狗手机市场 // sohu {} // 搜狐应用中心 // taobao {} // 淘宝手机助手 // gfan {} // 机锋 // appchina {} // 应用汇 // mumayi {} // 木蚂蚁 // wangyi163 {} // 网易应用 // nduoa {} // N多市场 // mm10086 {} // MM商城-中国移动 // wostore {} // WO商店 // youyi {} // 优异 // uc {} // UC+开发平台 // anzhi {} // 安智市场 // google {} // google play // amazon {} // 亚马逊 } productFlavors.all { flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name] } } def releaseTime() { return new Date().format("yyyyMMdd", TimeZone.getTimeZone("UTC")) }
转载请注明原文地址: https://www.6miu.com/read-40838.html

最新回复(0)