第一章 重构
libs工具包结构:
-
activity activity基类封装
-
net 网络底层封装
-
cache 数据缓存,图片缓存
-
ui 自定义控件
-
activity (activity下面可以按照模块进行划分)
-
adapter 所有适配器
-
entity 所有实体类
-
db sqlite逻辑封装类
-
engine 业务相关类
-
ui 自定义控件
-
utils 公用的方法
-
interfaces 接口
-
listener listener接口,以on开头
-
加了符号Annotation的实体属性,使用崩溃;
-
当有泛型属性,使用崩溃。
混淆文件添加如下内容解决:
-keepattributes Signature //避免混淆泛型
-keepattributes *Annotation* //不混淆注解
实体生成器
类型安全转换函数:
package com.youngheart.utils;
public class Utils {
/**
*
* @Title: convertToInt
* @Description: 对象转化为整数数字类型
* @param value
* @param defaultValue
* @return integer
* @throws
*/
public final static int convertToInt(Object value, int defaultValue) {
if (value == null || "".equals(value.toString().trim())) {
return defaultValue;
}
try {
return Integer.valueOf(value.toString());
} catch (Exception e) {
try {
return Double.valueOf(value.toString()).intValue();
} catch (Exception e1) {
return defaultValue;
}
}
}
}
作者在github有放出代码:
https://github.com/icodeu/AppProgrammingSource/blob/master/1.6%20%E7%B1%BB%E5%9E%8B%E5%AE%89%E5%85%A8%E8%BD%AC%E6%8D%A2%E5%87%BD%E6%95%B0/YoungHeart/src/com/youngheart/utils/Utils.java