Android Studio(十二):打包多个发布渠道的apk文件

简介:

Android Studio相关博客:

Android Studio(二):快捷键设置、插件安装



  以前把apk文件上传到应用市场,都是直接打个包,让运营那边的人员去负责去传,也没想过做啥应用的信息统计相关的东东,现在可不行了,小经理告诉我,我们的应用需要做些统计相关的东西,方便日后分析我们的应用还有哪些不足,好吧,既然有需求了,那就只有去做了。

  之前就已经知道友盟统计了,今天仔细看了下相关的文档,又在度娘上发现了几个使用Android Studio打包多个平台apk文件的方法,这下可好,正好满足我的需求,遂赶紧尝试研究了下。


  网上已经有些个方法,有复杂的,也有简单的,这里,我直接介绍简单的东西,省的迷惑大家了:

1. 首先配置清单文件:AndroidMainFest.xml

 <meta-data
    android:name="UMENG_APPKEY"
    android:value="您申请的key值" />
<meta-data
    android:name="UMENG_CHANNEL"
    android:value="${UMENG_CHANNEL_VALUE}" />


2. 在工程的build.gradle文件中配置

android {
    signingConfigs {
        designerassist {
            keyAlias 'designerassist.keystore'
            keyPassword 'otb2015'
            storeFile file('E:/workspace/otb/designerhelper/designerassist.keystore')
            storePassword 'otb2015'
        }
    }
    compileSdkVersion 19
    buildToolsVersion '22.0.1'



    productFlavors {
        wandoujia {}
        baidu {}
        c360 {}
        uc {}
        qq {}
        xiaomi {}
        meizu {}
        c91 {}
        huawei {}
        lenovo {}
        wangyi {}
        yidong {}
        mgyapp {}
        anzhuoapk {}
        tianyi {}
        appchina {}
        nduoa {}
        umeng {}

        productFlavors.all { flavor ->
            flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
        }
    }
说明: 

    其中name的值对相对应各个productFlavors的选项值,这样就达到自动替换渠道值的目的了。
这样生成apk时,选择相应的Flavors来生成指定渠道的包就可以了,而且生成的apk会自动帮你加上相应渠道的后缀,非常方便和直观。大家可以自己反编译验证。

    你只需要按照上面的配置写就好了,当然,是根据你的需要选择不同的平台。


打包:

 首先,你需要先配置下gradle环境:

在系统变量里添加两个环境变量:
1.1 变量名为:GRADLE_HOME,变量值就为gradle的根目录;
所以变量值为:C:\Users\ningshuai\.gradle\wrapper\dists\gradle-2.2.1-all\c64ydeuardnfqctvr1gm30w53
1.2 在系统变量里PATH里面添加gradle的bin目录
值为:C:\Users\ningshuai\.gradle\wrapper\dists\gradle-2.2.1-all\c64ydeuardnfqctvr1gm30w53\gradle-2.2.1\bin

  

  配置完变量后,便可以打包了,打开命令行,切换到你的项目目录下,你会发现自己的目录中有graldew.bat这个文件:


接下来,你就可以直接输入命令:gradle assembleRelease,就可以一次性生成所有的渠道包了:


所有生成的apk在项目的build\outputs\apk下:



如果只是想生成单个渠道的包呢?可以用命令行单独生成,比如:
gradle assembleWandoujiaRelease

当然,除此之外,你还可以直接通过Android studio导出相应平台的apk文件:



好了,so easy。接下来只需要把相应的包发布到不同的应用平台即可,这样,你可以通过友盟查看到相关渠道的下载安装情况了。

相关文章
|
3月前
|
Java Android开发 C++
Android Studio JNI 使用模板:c/cpp源文件的集成编译,快速上手
本文提供了一个Android Studio中JNI使用的模板,包括创建C/C++源文件、编辑CMakeLists.txt、编写JNI接口代码、配置build.gradle以及编译生成.so库的详细步骤,以帮助开发者快速上手Android平台的JNI开发和编译过程。
255 1
|
1月前
|
Java Unix Linux
Android Studio中Terminal运行./gradlew clean build提示错误信息
遇到 `./gradlew clean build`命令执行出错时,首先应检查错误信息的具体内容,这通常会指向问题的根源。从权限、环境配置、依赖下载、版本兼容性到项目配置本身,逐一排查并应用相应的解决措施。记住,保持耐心,逐步解决问题,往往复杂问题都是由简单原因引起的。
249 2
|
2月前
|
XML IDE 开发工具
🔧Android Studio高级技巧大公开!效率翻倍,编码不再枯燥无味!🛠️
【9月更文挑战第11天】在软件开发领域,Android Studio凭借其强大的功能成为Android开发者的首选IDE。本文将揭示一些提升开发效率的高级技巧,包括自定义代码模板、重构工具、高级调试技巧及多模块架构。通过对比传统方法,这些技巧不仅能简化编码流程,还能显著提高生产力。例如,自定义模板可一键插入常用代码块;重构工具能智能分析并安全执行代码更改;高级调试技巧如条件断点有助于快速定位问题;多模块架构则提升了大型项目的可维护性和团队协作效率。掌握这些技巧,将使你的开发之旅更加高效与愉悦。
64 5
|
3月前
|
编解码 Android开发
【Android Studio】使用UI工具绘制,ConstraintLayout 限制性布局,快速上手
本文介绍了Android Studio中使用ConstraintLayout布局的方法,通过创建布局文件、设置控件约束等步骤,快速上手UI设计,并提供了一个TV Launcher界面布局的绘制示例。
58 1
|
6月前
|
Android开发 开发者
Android Split APK介绍
【2月更文挑战第5天】
|
数据安全/隐私保护 Android开发
Android bundetool 转换 .aab 为apk 步骤
Android bundetool 转换 .aab 为apk 步骤
567 0
Android bundetool 转换 .aab 为apk 步骤
|
SQL 人工智能 算法
Android性能优化之应用瘦身(APK瘦身)
Android性能优化之应用瘦身(APK瘦身)
|
5月前
|
Android开发
Android Gradle开发—脚本实现自动打包后复制一份APK文件,并修改APK名称,到指定目录作备份
Android Gradle开发—脚本实现自动打包后复制一份APK文件,并修改APK名称,到指定目录作备份
281 0
|
6月前
|
XML API Android开发
android S 上 安装apk出现android.os.FileUriExposedException
android S 上 安装apk出现android.os.FileUriExposedException
72 6
|
6月前
|
设计模式 缓存 Java
补齐Android技能树——从AGP构建过程到APK打包过程,安卓rxjava面试
补齐Android技能树——从AGP构建过程到APK打包过程,安卓rxjava面试
下一篇
无影云桌面