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。接下来只需要把相应的包发布到不同的应用平台即可,这样,你可以通过友盟查看到相关渠道的下载安装情况了。

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

  1. Android Studio(十):添加assets目录

    Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...

  2. Android Studio + gradle多渠道打包

    通过工具栏的Build->Build Apk 好像只能打包第一个Module(eclipse里面是Project的概念),怎么多渠道打包呢?目前好像只能一个一个的打 首先在清单文件里设置个变量: ...

  3. Android Studio 3.6 正式版终于发布了

    Google 下载地址 百度云 下载地址 密码:epl9 如题,Android Studio 3.6 正式版终于发布了,值得兴奋呀,毕竟 3.5 大版本更新也已经差不多半年了,撒花撒花!这次更新又更新 ...

  4. Android Studio将项目打包成apk

    Android Studio将项目打包成apk 第一种方法:适合自己调试用. (1)直接在项目中生成: (2)位置是在你的项目中 第二种方法:适合发布应用. (1)找到Generate Signed ...

  5. Android 项目利用 Android Studio 和 Gradle 打包多版本APK

    在项目开发过程中,经常会有需要打包不同版本的 APK 的需求. 比如 debug版,release版,dev版等等. 有时候不同的版本中使用到的不同的服务端api域名也不相同. 比如 debug_ap ...

  6. 利用 Android Studio 和 Gradle 打包多版本APK

    在项目开发过程中,经常会有需要打包不同版本的 APK 的需求. 比如 debug版,release版,dev版等等. 有时候不同的版本中使用到的不同的服务端api域名也不相同. 比如 debug_ap ...

  7. Android studio 将 Module 打包成 Jar 包

    整理记录 AndroidStudio 把一个 module 项目打包成 jar 包. 一.默认自动生成的 jar 包 众所周知 android studio 会在library所依赖的 app运行 或 ...

  8. Android Studio获取调试版SHA1和发布版SHA1的方法

    前言: 当我们在集成高德地图定位功能到项目中的时候,需要用到发布版和调试版的安全码SHA1,所以今天我就来总结一下分别在Windows和Mac下是怎么来获取SHA1的,希望对大家有所帮助. 首先,统一 ...

  9. Android入门(十二)SQLite事务、升级数据库

    原文链接:http://www.orlion.ga/610/ 一.事务 SQLite支持事务,看一下Android如何使用事务:比如 Book表中的数据都已经很老了,现在准备全部废弃掉替换成新数据,可 ...

随机推荐

  1. Codeforces 1150E(树、线段树)

    要点 括号序列平衡度即树深度的性质 相当于中序遍历,则两点间最浅的地方即是LCA的性质 线段树维护\(d(a) + d(c) - 2*d(lca(a,c))\),一层层剥,思考维护这个量需要什么,结果 ...

  2. 属性中id和name的区别

    id 在HTML中的作用:      1.用id选择相应的style sheet(风格).       2. <A ..> 链接的目的地      3.脚本语言用它找目的地(找该id的标签 ...

  3. DMSkin https://github.com/944095635/DMSkin

    与源码无关内容 1.如果你有XAML相关的外包需求,可以通过QQ或微信与我取得联系.(QQ:"944095635" 微信号:"qq944095635") 2.我 ...

  4. 【JZOJ5088】【GDOI2017第四轮模拟day2】最小边权和 排序+动态规划

    题面 有一张n个点m条边的有向图,每条边有一个互不相同的边权w,有q个询问,要求你从点a经过不超过c条边到点b,要求经过的边权递增并和尽量小,求出最小的边权和,如果没有合法方案则输出-1. 对于100 ...

  5. !important覆写css行内样式

    <div class="block"> <span style="font-weight: bold; color: red;">Hel ...

  6. Bundler和Minifier Visual Studio扩展

    原文地址:https://marketplace.visualstudio.com/items?itemName=MadsKristensen.BundlerMinifier 特征 将CSS,Java ...

  7. mysql更改密码

    mysql command line client输入密码以后闪退问题的解决: 网上搜到的解决办法(my.ini文件之类的修改对我都没有起到作用).. 所以觉得是自己密码的问题,因为许久不用这个软件了 ...

  8. 阿里云MVP:开发者的超能力,用技术创造更好世界

    阿里云MVP:开发者的超能力,用技术创造更好世界 2019年3月,第8期阿里云MVP(最有价值专家)完成终审,截至目前,全球已有27个国家和地区.近500位云计算专家和优秀开发者成为阿里云MVP.阿里 ...

  9. [C#] 使用WebSocket进行通讯

    客户端 客户端很简单 string url = "ws://localhost:24900/" + "test.ashx"; try { System.Net. ...

  10. 破解fireworks_cs6、phoneshop_cs6、dreamweaver_cs6

    我的Adobe密码是绿尘枫加**0,首字母大写,在我的百度云盘有这三款软件的补丁,这三款软件安装和破解的方式都一样.先下载正常安装好正版软件>正常试用一遍之后,fireworks的补丁装错了文件 ...