一、 选题的背景与意义
智能手机和移动网络的发展使人与人之间随时随地都能自由的沟通交流,从最初的书信交流到现在的动几下手指,便利的同时也让沟通的方式越来越丰富有趣。Android智能手机是当前市场上的热门产品。据统计,Android目前在全球智能手机市场的份额为25.5%,而去年同期Android市场份额只有3.5%,今年第三季度Android系统手机销量甚至占智能机市场销量的58%,已成为全球第二大手机操作系统。而且Android是个充满活力的新产品,随着版本的更新还在不断的进步中,完全可以相信今后Android会取得更好的发展。
开放的Android系统给了用户和开发者更多的创新空间,面对这样一个开放的系统,我们当然不会满足于传统的诸如打个电话发个短信的手机使用模式。近年来,社区类网站(SNS,Social Networking Service)作为人们发表日志、留言、上传照片和视频、玩游戏等的技术平台和沟通交流的工具大为流行,使得很多好友之间保持联系,并且趣味十足,甚至还可以借此认识更多陌生的朋友,拓展人际关系。但是当前的移动终端并没有很好的借鉴这点,移动端的社区应用基本只是传统互联网社区的简单移植或仅提供了接入功能。手机终端都有存储联系人信息的通信录,然而现有的通信录基本只是用于记录电话,或者以此为基础提供数据备份功能以防不测,完全忽视了通讯录所代表和隐藏的潜在的社会网络关系,并且这种关系具有很高的真实性、稳定性和可靠性。因此,完全可以将社区类网站的很多特色借鉴过来,将智能手机通讯录打造成一个多元化的沟通工具。
人们已经逐渐意识到了这种新形式的沟通方式所潜在的巨大市场,并且已经有公司推出了基于这类思想的产品如大家熟悉的小米公司的米聊和腾讯公司的微信。但是现在这类产品还是作为第三方的应用程序存在,在使用上仍然存在一定的不便。这个课题就是为了探索解决这些问题的方法,研究如何将一些优秀的便利的沟通方式融入到手机的通讯录中,以给用户更好的操作体验。
二、 研究的基本内容与拟解决的主要问题
本课题致力于研究并设计实现一个基于Android的以Hibernate + Spring为后台架构的且以SQLite为数据库的手机通讯录系统。主要实现一下几个功能:
1. 类似于传统手机通讯录的联系人的添加、修改、查找、删除功能。
2. 指定联系人后,录音并发送给该联系人的留言功能。
3. 通过通讯录访问联系人的微博以实现与联系人互动的功能。
4. 接收短信、电话、语音留言和微博留言的信息并提醒用户。
5. 保存用户自身的个人信息以用于与他人联系时显示身份。
其中通讯录中除须输入传统手机通讯录中需要的联系人和联系电话以外,还须保存对应联系人的微博地址以供登录联系人微博的功能使用。
图1 Android通讯录系统的功能模块图
拟解决的主要问题有:
1. Hibernate + Spring后台与Android前台界面的交互问题。操作手机通讯录所产生的数据与所需要的数据均通过Hibernate + Spring的后台框架操作SQLite来实现数据的增删改查功能。
2. 如何实现语音信息的保存并发送给目标联系人以实现语音留言的功能。语音信息须通过编码后经GRRS等网络传输的目标联系人的手机中再转换成语音信息以播放出来。
3. 如何构建数据库以实现对联系人进行快速方便的查找功能。若手机通讯录中存有大量的联系人时,较好的联系人查找策略可以极大的改善通讯录的使用体验。
三、 研究的方法与技术路线
该通讯录须运行在Android智能手机操作系统中,以Java为后台程序编程语言,使用Myeclipse为开发工具,以JDK1.6作为开发环境,以Hibernate + Spring为后台框架,使用SQLite作为数据库服务器。数据库除完成对联系人的、联系电话、微博地址等基本信息的增删改查功能外,还须对联系人间首发的短信及语音留言信息进行相应的增删改查。通过Android开发插件提供的组件(Android SDK)来完成手机通讯录的人机交互界面。
1. Android软件开发工具包(Android SDK):用于为Android的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。
2. Hibernate框架:Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用。Hibernate拥有Session、SessionFactory、Transaction、Query和Configuration这5个核心接口。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。
3. Spring框架:Spring是为了解决企业应用开发的复杂性而创建的一种框架,它使用基本的JavaBean来完成以前只可能由EJB完成的事情。Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。不仅如此,Spring还提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发。应用对象只需完成业务逻辑,而不用负责其它的系统级关注点,例如日志或事务支持。
4. SQLite,是一款轻型的数据库。SQLite的主要设计目标是嵌入式软件,因而占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,并且SQLite的处理速度很快。Android程序可以使用SQLite来存储结构化的数据。
四、 研究的总体安排与进度
2011年10月10日~2010年10月20日 课题的选定,完成资料搜集和需求分析,制定出需求分析报告。
2011年10月22日~2011年11月20日 查阅相关文献,完成任务书、开题报告及文献综述;
2011年11月20日~2011年11月31日 查阅相关资料,完成两篇外文翻译;
2011年11月31日~2011年12月31日 完成系统详细设计,数据库及系统各模块的详细设计。
2012年01月01日~2012年03月01日 项目实施阶段,系统框架搭建及代码实现。
2012年03月02日~2012年04月10日 对项目进行调试、运行,找出错误信息并完善系统。
2012年04月11日~2012年06月01日 准备毕业答辩:过程材料、毕业论文等文档的完善,通过答辩。
五、 主要参考文献
[1] 陈璟,陈平华,李文亮.Android内核分析[J].现代计算机(专业版),2009,(11).
[2] 陈莉君.Linux内核的分析及应用[J].西安邮电学报,2001,(1).
[3] 公磊,周聪. 基于Android的移动终端应用程序开发与研究[J]. 2008,(08).
[4] 刘德山, 杨彬彬.基于Hibernate框架的数据持久层架构设计及应用[J].微型机与应用,2011,(15).
[5] 云贵全.基于Struts、Spring、Hibernate架构[J].电脑知识与技术,2011,(18).
[6] 罗伟. 基于 Android平台的即时通讯系统的研究与实现[D].湖南师范, 2009 .
[7] 贾理华,乐燕芬,施伟斌.基于Android平台简易即时通讯的研究与设计[J].常州工学报,2010,(04).
[8] 赵亮,张维.基于Android技术的界面设计与研究[J].电脑知识与技术,2009,(29).
[9] 王丰,付明栋,冯海亮. 智能终端图形用户界面设计与实现[J].广播电视信息,2008,(08).
[10] Grant Allen,
上一篇:
android手机助手毕业论文
下一篇:
试论APP广告在手机中的应用