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

最新文章

  1. R in Action 读书笔记(4)
  2. Framework/base 下添加自定义模块的步骤
  3. Android之TextView密码输入变星号时间
  4. phpmailer发送邮件 SMTP Error: Could not authenticate 错误
  5. Linux命令-date
  6. UVa 270 &amp; POJ 1118 - Lining Up
  7. 点评阿里JAVA手册之编程规约(命名风格、常量定义、代码风格、控制语句、注释规约)
  8. 8.8.1 Super关键字
  9. java第十周学习总结
  10. PTA博客制作的模版
  11. 使用SpringSecurity体验OAuth2 (入门2)
  12. Qt applendPlainText()/append() 多添加一个换行解决方法
  13. Django之Django终端打印SQL语句
  14. openstack之Neutron网络模式vlan,gre,vxlan详解
  15. C++学习基础十六-- 函数学习笔记
  16. thinkphp 点击某个class提交post值,返回回来用一个弹窗插件,提示返回来要说的话
  17. iPhone XS 能否经受的起寒冬的考验
  18. oracle 常用(二)
  19. C语言指针入门
  20. Jmeter—实现识别验证码登录

热门文章

  1. Java中用JXL导出Excel代码详解
  2. css不定高图文垂直居中的三种方法
  3. tcpdump概述
  4. 洛谷P2196 挖地雷 [2017年4月计划 动态规划13]
  5. CSS制作的32种图形效果[梯形|三角|椭圆|平行四边形|菱形|四分之一圆|旗帜]
  6. hdu 3791 二叉搜索树(数据结构)
  7. js计算精度问题(浮点数误差,大数计算出错)
  8. CSS3--关于z-index不生效问题
  9. 【OI】拓扑排序
  10. Directx教程(27) 简单的光照模型(6)