有时候,我们会希望能把APK文件名上带上打包日期,打包时svn的版本号,应用版本号等.当然这些也可以手动添加,但是手动的话也未免太不优雅了,而且可能会出错. 利用Gradle,我们可以让打包出来的apk自动的带上一些列信息. 默认读者已经对gradle有一定的了解,有buildtypes,productFlavors的概念.不了解的可以看看上一篇或者去网上搜索来补充一下. Gradle是基于groovy的自动化构建工具,在build.gradle中我们可以用一些脚本,函数来控制编译的过程.本文所…
友盟有很多不错的功能,例如渠道统计等. 想要做渠道统计,有一个要求就是要在manifest文件中添加各个渠道的配置.只有一两个渠道还好说,但是渠道多了的话,手动修改然后打包简直是噩梦. 幸好现在Android的构建工具换成了gradle,通过gradle,简单配置后就可以实现自动打所有渠道包.原理是android gradle的productFlavors和variants,不懂的可以先搜索一下. 1,首先,按照umeng的要求,manifest文件中需要有 <meta-data android…
使用Android Studio打包的时候,我们有时候需要自定义apk的文件名,在此记录一下. 在app的build.gradle中,根节点下使用关键词def声明一个全局变量,用于获取打包的时间,格式可自定义,如下所示: 然后,在android节点中添加以下代码,注意:Gradle 3.0.0之前和3.0.0之后的做法是不一样的! 这样设置好了,打包出来的apk文件名就是:t8app_2.0.6_171_20180929162356_debug.apk  或 t8app_2.0.6_171_20…
first:     Intent跳转一般存用于Activity类,可是若要在非activity类里跳转的话,解决方法是在startActivity(intent)前加mContext即上下文,终于为:mContext.startActivity(intent);  换言之.以后在非activity类里调用activity的方法  一律这么做.若不行的话 能够这么做:(Activity)mContext. second:   gridview中textview内容不能居中的问题. gridvie…
http://devyang.me/blog/2014/11/11/li-yong-android-gradleshou-shen-apk/ apk瘦身一般有两条线, 去除无用的代码,例如引用一个比较大的lib,只使用了其中很少的功能.其他无用的代码可以想办法去掉 去除无用的资源文件,可能是第三方lib中的,也有可能是开发中引入了无用的资源 去除无用代码 当然是Proguard了! gradle plug 0.14.0, runProguard 更名为minifyEnabled 去除无用资源 A…
有时候会有这种情况,策划拿着应用过来提一个bug,但我们却不好确定策划的手机上装的应用相应的是那个代码版本号. 为了解决问题.我们希望能在应用上显示出当前应用所相应的代码版本号,即svn版本号. 构想了下,希望最后达到的效果有:   自己主动化,不须要每次编译版本号的时候有人为的步骤,比方编版本号的时候人为改动某个值或者点击某个脚本. 跨平台.对外公布的win32/iOS/Android版本号都能正确表现   全面性.不管用Windows上用vs开发/Mac OS上用XCode/Eclipse来…
Locale locale = getResources().getConfiguration().locale; String language = locale.getLanguage(); 以上代码能够获取到当前系统的语言码,中文的语言码为ch,英文的语言码为en,完整的语言码例如以下: bn_BD孟加拉语(孟加拉)  bo_CN 博多语(中国)  bo_IN 博多语(印度)  ce_PH 塞布安诺语(菲律宾)  de_LI 德语(列支敦士登)  fa_AF 波斯语(阿富汗)  fa_IR…
在实际项目中(特别是作为产品的项目),版本号是必不可少的一部分.版本号的规则也有许多种,在此不讨论具体的编码规范.对于迭代的产品,版本繁多,特别是有多个实施项目所使用产品的版本不同(基于定制需求)时,清楚的标识组件与代码的对应关系十分重要. 本文主要说明如何在 .Net 项目使用 SVN 作为版本控制工具时生成与代码对应的组件版本号. 我们知道,SVN 在 commit 时会生成一串数字作为序号,所以基本思路是把这个序号作为 . Net 项目编译后生成dll的文件版本号的最后一段.下面所列方法需…
在实际项目中(特别是作为产品的项目),版本号是必不可少的一部分.版本号的规则也有许多种,在此不讨论具体的编码规范.对于迭代的产品,版本繁多,特别是有多个实施项目所使用产品的版本不同(基于定制需求)时,清楚的标识组件与代码的对应关系十分重要. 本文主要说明如何在 .Net 项目使用 SVN 作为版本控制工具时生成与代码对应的组件版本号. 我们知道,SVN 在 commit 时会生成一串数字作为序号,所以基本思路是把这个序号作为 . Net 项目编译后生成dll的文件版本号的最后一段.下面所列方法需…
实际项目中,都会应用Android Gradle Plugin,根据实际中的项目模块的职责,可以具体应用如下四种插件类型. 1,apply plugin: 'com.android.application' 实际对应的原型是:com.android.build.gradle.AppExtension,表示此项目模块类型为Android App Module,对应构建生成的文件为.apk类型文件. 2,apply plugin: 'com.android.library' 实际对应的原型是:com…