Android系统架构中常用模块清单

来源:互联网 发布:wap论坛源码 编辑:程序博客网 时间:2024/05/01 05:38

  最近要对公司的项目重新架构,查阅了一些网上的资料,感觉这篇文章总结的很到位,贴出来供大家学习;同时也加入了一些自己的理解和自己在工作中用到的知识点;可以说是一篇转载+原创的博文;站在前人的基础上总结的;后续还会不断去更新维护;希望大家多多支持;

 目前Android开发已经成熟到了极致,拥有大量的成熟开源框架和第三方库以及AndroidStudio等优秀的工具,可以说开发非常的方便。那么拿到一个项目后,到底该考虑哪些模块呢?下面列出了一个Android互联网app大多需要涵盖的模块,其中有些事功能上的,有些是控件上的,以供参考;

启动页面
功能引导(类似于viewpager)
登陆与注册
忘记密码/修改密码
主界面
侧边栏(SlideingMenu, DrawerLayout)
Material Design 定制theme到AndroidManifest的application theme中
ORM框架(无需再用contentprovider或者sqlitedatebasehelper之类的古董工具了)
规划各种业务Bean文件(配合ORM框架)
Http请求框架(volley,推荐使用okHttp,RxJava+Rxandroid+retrofit等)
JSON解析和构建框架(Gson,fastJson,不要用jackson因为比较大,除非需要用嵌套的需求)
设计一个好的请求基类(BaseRequest、BaseResponse)
JWT
BaseActivity和BaseFragment(把公用的代码写在里面,比如检测网络、弹出alertdialog等等)
定制一个Application类代替默认的(很多第三方框架需要把一些代码写到定制的Application类里面)
消息推送(比如友盟)
用户反馈(比如友盟)
数据统计(比如友盟)
更新(比如友盟)
数据备份和恢复
点赞、评论、收藏模块
About界面(版权申明+常用软件设置+版本更新+国际化等)
在线crash log上报(比如腾讯的bugly)
快速开发框架(这里推荐使用butterknife和eventbus)
内存泄漏检测工具(leakcanary)
图片加载库(Glide)
加密解密(RSA,MD5,DES)
带有删除的EditText
定制下拉加载的控件
listview/recyclerview的基础adapter
定制搜索框
工具类(比如sharepreference,File,ScreenDesity,Sql,字符串处理,dpsp互转等等)
底部加载更多
自定义alertdialog等对话框(可以写在BaseActivity中)
通用的popupwindow
快速返回顶部按钮
Toolbar代替actionbar
各种新式的Material design兼容控件
界面滑动冲突的问题(横竖冲突、同向冲突)
离线登录功能
bitmap缓存策略
最后项目要发布了,那么久需要混淆和打包了,前者关于混淆网上有很多相关的文章,这里需要注意的是很多你所使用的第三方库都需要在混淆的时候给剔除,因为他们是基于反射机制的。这点需要你在使用每个第三方库的时候多看他们的说明书多加小心。其次,混淆后一定要打个包重新回归测试一下,以免出现因混淆而导致的问题。
关于Android studio 打包可以参考http://www.cnblogs.com/soaringEveryday/p/4599770.html


1 0
原创粉丝点击