Android Template - 项目模版

12 Jun 2016

为以后能够快速新建Android应用项目做准备。

最近,写了一个项目模版,可以稍微修改快速形成一个新的项目。
不管以后自己的小项目还是公司的,都可以使用它。
下面对这个项目做一个简单的介绍,以后根据经验的增长还会持续更新
项目地址: https://github.com/pulque/AndroidTemplate
也希望广大网友有好的意见或建议都可以通过邮件或分支告诉我。
邮箱地址:question@lizheblogs.com‍

我认为对于模版来说这样的项目已经可以了,有一般项目需要的库和工具,也不需要添加太多的控件,有项目需求可以自行添加。编译完成后APK的大小为544kb。

模版环境
Android Studio 2.1.2
compileSdkVersion 23
buildToolsVersion "23.0.3"
classpath 'com.android.tools.build:gradle:2.1.2'

添加的基本模块
MVP模式(Model-View-Presenter architecture)
Volley库(基于JSON的网络连接)
Crash捕获并发邮件
Picasso图片管理库
SubLog日志管理
DES加密字符串工具
SharedPreferences本地数据存储
Database(可选,我觉得一般的客户端都不需要存储复杂数据)
Flavors多渠道打包APK
BuildTypes自定义key打包和APK文件重命名

遇到的问题
1.设置代码混淆后不能正常编译,根据日志提示需要添加编译设置。
在proguard-rules.pro文件中:

	-dontwarn java.awt.**
	-dontwarn com.squareup.okhttp.**
	-dontwarn javax.security.sasl.**
	...

	-keepattributes Signature
	-keepattributes InnerClasses

	-dontnote android.net.http.SslCertificate
	-dontnote android.net.http.SslError
	...
代码混淆在app/build.gradle -> buildTypes -> minifyEnabled true

2.更新Volley困难 国内访问Volley有问题,自己在github上建了个仓库来保存,
有需要的可以下载: https://github.com/pulque/Volley

注意
Crash邮件发送和接收地址,需要根据自己项目实际需要自行设定。
修改包com.lizheblogs.android.template.util.email下
EmailSender
private String mailhost = "smtp.XXXXXX.com";
EmailUtils
private static final String EMAIL_ADDRESS = "crash@XXXXXX.com";
private static final String PWD = "password";
private static final String RECEIVE_CRASH = "receivecrash@XXXXXX.com";

参考:
https://github.com/googlesamples/android-architecture