摘 要
随着移动互联网的高速发展,Android操作系统在移动设备中地位已经被牢牢稳固。然而大量的Android设备高速普及过程中,与其配套的Android应用的开发速度和项目质量极为令人担忧。本课题的研究目的是通过114生活助手系统的开发,寻找Android应用快速迭代开发和高质量保证的开发方式。
在课题的研究过程中,通过对114生活助手系统的开发。实现了手机端的交通信息查询,建立了简易的在线交易市场,并实现了一套基于位置的周边信息查询系统。在开发的过程当中寻找和发现实现Android应用快速开发和高质量保证的技术和方法。在整个的课题研究过程中,尝试采用了众多最新的开源框架技术。这些技术包括EventBus、AndroidAnnotation、Robobinding、picasso、bolts、gson。并且采用了Android官方以及Android社区中普遍认同的最佳实践模式。这些模式包括大量使用Fragment实现解耦、使用Genymotion进行项目调试、等等。
在课题研究的最后阶段,发现采用这些最新的开源框架技术和这些新颖的实践模式,大大加快了过去原有的Android开发速度。同时保证了项目的质量。在各个模块之间的耦合也比按照原有开发模式有了巨大的提升。
关键词:生活助手;android;依赖注入
ABSTRACT
With the high-speed development of mobile Internet, the Android operating system status in the mobile devices has been firmly.A large number of Android devices appear. However, Android application development speed and quality is very bad.It make us very worry.For example,in the application market, the application like LifeAssistant always are bad.They are bad performance,ugly design,information wrong.this research purpose is to find the way to make the Android application development more efficient.
In the research progress , we find the way to Improve the quality and speed for the android application development by develop the 114 life assistant.In the project,i try to use some newest open source project.like EventBus、AndroidAnnotation、Robobinding、picasso、bolts、gson.And i have try to use the best practise which has been proposed in the Android official and Android community.these best practise include use fragment to decouping and use Genymotion to debug.
In the end of the research,it is be proved that use these open source project and best practise will greatly improve the develpoment of the android application.And make the application high quality.
Key words:LifeAssistant; Android ;DependencyInjection
目录
第一章 绪论 2
1.1 安卓应用开发的目前现状 2
1.2 本课题的研究目的和意义 5
1.3 本课题的研究方式和手段 5
第二章 相关技术介绍 7
2.1 开发技术的选择 7
2.2 相关开源框架的使用 7
2.2.1 EventBus 的使用 7
2.2.2 AndroidAnnotation 的使用 8
2.2.3 Bolts 的使用 9
2.2.4 Android 开发最实践 11
第三章 需求分析与交互设计 14
3.1 城市选择功能 14
3.2 查询医疗信息功能 14
3.3 查询交通信息功能 15
3.4 查询酒店信息功能 15
3.5 用户身份验证功能 16
3.6 查询餐饮信息功能 16
3.7 在线市场交易功能 17
3.8 查询家政服务功能 18
第四章 架构设计与实现 19
4.1 整体架构设计 19
4.2 模块之间的通信方式 21
4.2.1 Activity 之间的通信 21
4.2.2 Fragment 之间的通信 22
4.2.3 其他模块之间的通信 22
4.3 业务模块的划分 22
4.4 服务端的实现方式 23
4.5 数据持续化的实现方式 24
第五章 各个功能模块的具体实现 26
5.1 功能导航页面的实现 26
5.2 周边信息查询的实现 28
5.3 交通信息查询的实现 31
5.4 自由交易市场的实现 35
5.5 选择城市和GPS 定位的实现 38
5.6 日期选择的实现 41
5.7 用户身份验证的实现 42
5.8公告信息的实现 44
第六章 测试 46
6.1 测试方法 46
6.2 测试用例 46
结论 50
参考文献 52