ReadHub是一个开源的新闻阅读软件,下载apk的时候发现只有2M,但是用到的技术比较全面了。
1.先来看看分包:

自定义Application、启动页和主活动单独拿出来;base包放baseAty、baseFragment等;bean包放数据模型类,命名为xxxMo;ui包中按视图分类,每个页面为一个包,包含本页面的活动和自定义veiw,以及widget中放公共的自定义view。constant表示常量包;utils包放工具类,里面内容不错,因为项目依赖AndroidUtilCode,这个库里面的工具类非常全。其他还有针对框架的一些包。
命名习惯:Xml文件中id全小写,下划线分割单词。

java文件中组件命名与xml保持一致

2.再来看一下混淆文件:

可以看到,开启了打包优化,无用资源删除以及混淆。
混淆文件中包括两部分,公共部分和框架混淆部分,来看公共部分:
# 不做预校验,preverify是proguard的四个步骤之一,Android不需要preverify,去掉这一步能够加快混淆速度。
-dontpreverify
# 保留An

本文是ReadHub开源应用的源码阅读笔记。应用虽小但技术全面,包括分包策略、命名规范、混淆配置、Base类设计及启动页实现。分包结构清晰,如base、bean、ui等。混淆文件注重优化,保留关键类。BaseActivity负责布局、Butterknife绑定和初始化。SplashActivity采用自定义风格,无顶部栏和状态栏,用Handler实现延迟跳转。
最低0.47元/天 解锁文章
4834

被折叠的 条评论
为什么被折叠?



