基于Android的个人助手系统设计与实现.docx

上传人:b****5 文档编号:6242030 上传时间:2023-01-04 格式:DOCX 页数:50 大小:5.78MB
下载 相关 举报
基于Android的个人助手系统设计与实现.docx_第1页
第1页 / 共50页
基于Android的个人助手系统设计与实现.docx_第2页
第2页 / 共50页
基于Android的个人助手系统设计与实现.docx_第3页
第3页 / 共50页
基于Android的个人助手系统设计与实现.docx_第4页
第4页 / 共50页
基于Android的个人助手系统设计与实现.docx_第5页
第5页 / 共50页
点击查看更多>>
下载资源
资源描述

基于Android的个人助手系统设计与实现.docx

《基于Android的个人助手系统设计与实现.docx》由会员分享,可在线阅读,更多相关《基于Android的个人助手系统设计与实现.docx(50页珍藏版)》请在冰豆网上搜索。

基于Android的个人助手系统设计与实现.docx

基于Android的个人助手系统设计与实现

基于Android的个人助手系统设计与实现

摘要:

随着智能手机的兴起,Android逐渐成为了市场占有量最大的移动平台操作系统,越来越受到大众的欢迎,所以在此平台上开发方便用户使用的个人助手系统是非常必要的。

本设计针对智能手机用户日常使用的实际情况,对用户手机的日常功能需求进行调查,确定了所包含的功能和框架。

本设计采用软件工程中结构化思想,采用标准的软件设计流程,从可行性研究、需求分析、系统设计以及系统实现和测试等步骤来开发个人助手系统,采用Android开发平台,实现了天气预报、手机号助手、电视节目预告、翻译助手四个模块。

除此之外,为了方便用户使用,还设计了收藏夹和单词本,其中收藏夹收藏天气预报信息、手机号信息以及电视节目预告信息,而单词本则存放单词。

关键词:

Android操作系统,个人助手,智能手机,AndroidSDK

Designandrealizationofpersonalassistantsystem

usingAndroid

Abstract:

Withtheriseofsmartphones,Androidisgraduallybecomingthelargestmarketshareofmobileplatformoperatingsystem,andwelcomedbythegeneralpublic.Therefore,itisnecessarytodevelopsomesoftwaresystemstomeetthedailyuseoftheuserfriendly,andtocontributetosuchanewplatform.

Accordingtotheactualsituationofthedailyuseofthesmartphoneusers,thisdesigncontainsthefunctionandframeworkofthissoftwaresystembythedemandforeverydayuse.Usingstructuredsysteminsoftwareengineering,itemploysastandardsoftwaredesignprocessfromfeasibilitystudies,requirementsanalysis,systemdesigntoimplementandtestfordevelopingthepersonalassistantsystem.Thissoftwaresystemimplementstheweatherforecast,mobilephonenumberassistant,noticeoftelevisionprogramsandtranslationassistantontheAndroidoperatingsystem.Inaddition,theusercanusethedesignedfavoritesandwordlistwhichcancollecttheinformationoftheweatherforecast,mobilephoneandnoticeoftelevisionprogramsandrecordthewordfortheuseoftheuserfriendly.

Keywords:

Androidoperatingsystem,personalassistant,smartphones,AndroidSDK

2.1.1开发工具4

2.1.2开发环境5

2.2.1利用SOAP技术与网络接口交互6

2.3.1sqlite3数据库的使用相关类库介绍6

2.3.2Android界面Activity介绍7

3.1.1经济可行性9

3.1.2技术可行性9

3.1.3操作可行性9

3.2.1实用性原则10

3.2.2可扩展性与可维护性原则10

3.2.3安全可靠性原则10

3.2.4用户界面美观原则10

3.2.5准确性与原则性原则10

3.2.6易用性原则10

4.3.1E-R图13

4.3.2数据库的设计16

5.1.1天气预报的数据获取实现19

5.1.2天气预报的查询界面实现21

5.1.3天气预报中城市的收藏管理实现23

5.2.1手机号信息查询的实现26

5.2.2手机号收藏的实现27

5.2.1电视节目查询的实现30

5.2.2电视节目收藏管理的实现32

5.2.1翻译信息查询的实现33

5.2.2单词本的实现36

6.1.1测试准备39

6.1.2测试数据设计39

6.1.3测试过程40

前言

随着移动平台的崛起,越来越多的传统PC软件被移植到移动平台,比如ipad,iphone,Android等智能终端设备,在这些平台中,Android占领着最大的市场份额,所以为Android用户开发满足日常使用的软件成为了现在的一大热门。

在现在移动平台爆发的时代,传统的PC软件没有办法满足用户了,如果说PC的软件只能在固定的地点使用,那么现在的移动平台软件就是能够无时无刻地使用,想使用它,只需要掏出自己的手机就可以立即使用,随时随地得到最新的资讯,不再被传统PC禁锢在办公室或家中,那些必须有电源的地方了。

本设计与传统的PC软件有很大的优势,与现在的Android中其他软件相比,也具有一定的优势。

现在Android软件使用风格可谓是千变万化,有很多工具软件无法满足用户的日常需要,还有很多软件由于使用风格不一,使得很多用户无法适应,把一些使用率很高的日常软件的风格统一,并且把它们的功能集中在一个软件平台中,就能使上述问题得以解决,不仅使使用风格得到了统一,也使得用户得到一站式的日常工具使用体验,并且可以使这些软件中的功能得到互补,相互共享资源,为本来硬件条件就不是很好的手机提供一个能够轻松运行的软件。

本软件的优势体现:

1.随时随地使用,不受地点限制;

2.统一移动平台软件使用风格;

3.日常软件集成统一,一站式到达;

4.共享资源,减轻手机负担。

 

第1章概述

1.1智能手机系统开发背景

现在智能手机可谓是爆发式增长,传统手机在不断地消失,诺基亚就是在这样的环境中受到了极大的困扰,现在主要有三个使用率最高,关注度最高的手机平台,分别是:

Android,ios和windowsphone平台,这三个平台中Android的占有率最高,但是设备种类非常复杂,碎片化严重,而ios设备由于apple公司的独特管理理念,得到了一个完整的生态系统,管理得井井有条,几乎没有碎片化的现象和趋势,但是这也导致了其设备种类不多,无法满足所有用户的缺点,还有windowsphone虽然现在炒作得很火热,但是其用户量相对其他的两个平台来说几乎是可以或忽略不计,所以在这里不做讨论。

Android平台是一个面向大众的系统,分布在低端,中端和高端市场中,在各个阶段的是市场中都有很受欢迎的机型,并且Android是开源的,开发者随时都可以查看系统源代码,并且使用时下最流行的java作为其主要的开发语言。

由于这些特点,使得Android成为现在市场占有量最大的软件平台,在这样的平台上面开发一款独特的日常生活软件尤为必要的。

1.2课题的目的与意义

本软件旨在为广大的移动平台用户特别是Android用户提供一个最快捷的日常信息获取平台,其中包括:

天气,手机号查询,电视节目预告,中英翻译这样的一个软件集成平台。

用户只需打开一个应用软件就能快速的使用全部的功能,不需要在原有的不同应用中不断切换,这样不仅浪费时间,而且也是对手机硬件资源的一种浪费,本软件很好地解决了这方面的问题。

 

1.3本文主要研究内容

本文主要介绍和阐述一个手机平台的软件如何利用webservice技术通过互联网获取信息后在Android应用中进行展示和管理这些信息的。

本应用软件使用简单,易学易会,非常容易上手,主要是在UI设计上采用了移动平台上最主流的设计理念:

简单和引导,虽然界面相对传统web界面显得简单,但是其功能是毫不逊色的,在保留其功能全面性的基础上,设计了最简单的界面来进行展示和管理,使得用户能够不需要事先的任何学习,就可以熟练地进行操作。

本软件包括的功能以个人经常使用的工具软件为主,主要包括:

天气预报(包括三天的天气信息),手机号助手(查看归属地并进行后续操作),电视节目预告(查看全国主要电视台今日的电视节目信息),翻译助手(进行汉英/英汉翻译)。

软件的设计步骤:

1.了解相关资料,了解本软件的研究意义,确定实现技术与方式设计总目标及其整体框架。

2.了解用户的使用习惯和使用心理,进行用户需求分析和规范。

3.草拟功能模块,画出模块图。

4.搜集软件制作素材。

5.数据库设计及完善,创建数据表。

6.编写代码实现各个功能模块。

7.根据Android特有的使用风格进行布局与优化。

8.完成系统测试并改进。

 

第2章相关技术介绍

2.1开发工具及环境简介

2.1.1开发工具

1.EclipseClassic3.7.2

Eclipse是一个开放源代码的、基于Java的可扩展开发平台。

就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。

Eclipse是著名的跨平台的自由集成开发环境(IDE)。

最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C++和Python的开发工具。

Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。

许多软件开发商以Eclipse为框架开发自己的IDE。

Eclipse最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。

IBM提供了最初的Eclipse代码基础,包括Platform、JDT和PDE。

目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、RationalSoftware、RedHat及Sybase等。

Eclipse是一个开发源码项目,它其实是VisualAgeforJava的替代品,其界面跟先前的VisualAgeforJava差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。

近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。

2.SQLite3

SQLite3是一款轻型的数据库,是遵守ACID的关联式数据库管理系统。

它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。

它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。

SQLite第一个Alpha版本诞生于2000年5月.至今已经有10个年头,SQLite也迎来了一个版本SQLite3已经发布。

3.ADT

目前Android开发所用的开发工具是Eclipse,在Eclipse编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。

4.AndroidSDK

SDK:

(softwaredevelopmentkit)软件开发工具包。

被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。

因此,AndroidSDK指的既是Android专属的软件开发工具包。

2.1.2开发环境

本软件是在windows7操作系统中,利用EclipseClassic3.7.2开发工具搭载AndroidSDK工具包,结合Android手机自带的sqlite3数据库进行开发。

2.2开发技术

本软件的的开发技术可以概括为:

在Android平台的开发环境下,通过手机的2G/3G,或者是wifi网络使用SOAP协议连接index.aspx上面的接口服务,获取数据后对数据用Android的特有展现方式展现在手机屏幕上,并且完成交互操作,获取收据并且成功展示后,通过本地化的管理对数据进行本地化的存储和管理。

利用SOAP协议通过手机网络获取数据后,就会对各模块中需要用到的对象进行实例化,实例化的时候用到的是单例模式,以便不同的界面调用相同的内容,这是本软件资源共享的一个处理方式,在获取数据的时候利用进度条通知用户此时是在获取数据,而获取数据的动作时放在了区别于主线程的一个分线程中,当获取数据完毕后,利用Android中独有的Handler通知界面UI处理,此时所做的处理时关闭进度条,在Android中如果不同线程之间需要影响UI界面,就必须要使用Handler,否则就会报出:

AndroidRuntime(28964):

atAndroid.app.ActivityThread.main(ActivityThread.java:

3703)的错误,Handler在本软件的制作过程中是必不可少的,在完成展示后,专门为用户设计了收藏的功能,不再需要经过一定的寻找过程来查找想要的数据,此时使用的是Android使用的小型关系型数据库sqlite3,是一种小巧快速并且功能强大的数据库。

2.2.1利用SOAP技术与网络接口交互

SOAP采用了已经广泛使用的两个协议:

HTTP和XML。

HTTP用于实现SOAP的RPC风格的传输,而XML是它的编码模式。

采用几行代码和一个XML解析器,HTTP服务器(MS的IIS或Apache)立刻成为SOAP的ORBS。

SOAP通讯协议使用HTTP来发送XML格式的信息。

HTTP与RPC的协议很相似,它简单、配置广泛,并且对防火墙比其它协议更容易发挥作用。

HTTP请求一般由Web服务器软件(如IIS和Apache)来处理,但越来越多的应用服务器产品正在支持HTTP。

XML作为一个更好的网络数据表达方式(NDR)。

SOAP把XML的使用代码化为请求和响应参数编码模式,并用HTTP作传输。

具体地讲,一个SOAP方法可以简单地看作遵循SOAP编码规则的HTTP请求和响应,一个SOAP终端则可以看作一个基于HTTP的URL,它用来识别方法调用的目标。

像CORBA/IIOP一样,SOAP不需要具体的对象绑定到一个给定的终端,而是由具体实现程序来决定怎样把对象终端标识符映像到服务器端的对象。

在使用本协议过程中需要定义一个WSDL如:

PrivatestaticfinalStringWSDL="

WeatherWebService.asmx?

wsdl"。

SOAP是个通信协议,SOAP在HTTP协议的基础上,把编写成XML的REQUEST参数,放在HTTPBODY上提交个WEBSERVICE服务器(SERVLET,ASP等等)处理完成后,结果也写成XML作为RESPONSE送回用户端,为了使用户端和WEBSERVICE可以相互对应,可以使用WSDL作为这种通信方式的描述文件,利用WSDL工具可以自动生成WS和用户端的框架文件,SOAP具备把复杂对象序列化捆绑到XML里去的能力。

2.3AndroidSDK常见公共类库介绍

2.3.1sqlite3数据库的使用相关类库介绍

本软件代码编写过程中对数据库的操作主要涉及三个工具类,分别是:

1.Android.database.sqlite.SQLiteDatabase;

2.Android.database.Cursor;

3.Android.database.sqlite.SQLiteOpenHelper;

创建和更新数据库必须继承Android.database.sqlite.SQLiteOpenHelper;

继承这个类必须实现一个构造方法和两个覆写方法,否则是不可以使用的。

 

下面是主要代码说明:

publicclassChanneldbHelperextendsSQLiteOpenHelper{

privatestaticfinalStringDATABASENAME="assistantchannel.db";//数据库名称

privatestaticfinalintDATABASEVERSION=1;//数据库版本

publicChanneldbHelper(Contextcontext){

super(context,DATABASENAME,null,DATABASEVERSION);

//TODOAuto-generatedconstructorstub

}

@Override

publicvoidonCreate(SQLiteDatabasedb){

//TODOAuto-generatedmethodstub

db.execSQL("CREATETABLEchannel(idintegerprimarykeyautoincrement,channelnointeger,channelnamevarchar(20))");//执行有更改的sql语句

}

@Override

publicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion){

//TODOAuto-generatedmethodstub

db.execSQL("DROPTABLEIFEXISTSchannel");

onCreate(db);

}

}

2.3.2Android界面Activity介绍

Android的界面是由每一个成为Activity的java类组成的,这个类库是制作Android软件必须使用的,只有使用了这个才可以让用户看得见,本类中有几个常用的覆写方法来表示界面的生存周期,分别是:

onCreate(),onStart(),onResume(),onPause(),onStop(),onDestroy(),onRestart()七个方法。

 

Activity的生命周期图,如图2-1所示:

图2-1AndroidActivity生存周期图

 

第3章系统需求分析

3.1可行性研究

该阶段通过对系统总目标的初步调研与分析,提出可行性方案并进行论证。

在此,主要从技术可行性、经济可行性和操作可行性三方面进行分析。

3.1.1经济可行性

本软件采用手机软件的形式呈现,与传统的pc软件相比具有,携带方便,随之随地获取信息的特点,不受地理和时间的限制的特点,可以充分充分利用人们的闲暇时间,从这个角度看,该软件可行。

3.1.2技术可行性

开发工具:

EclipseClassic3.7.2

数据库环境:

sqlite3

系统环境:

MicrosoftWindowsXP或以上版本

软件实现是依靠基于Android系统的开发技术,使用的是java为主的开发语言进行开发,再加上SOAP技术进行数据交互。

3.1.3操作可行性

软件采用最主流的Android软件应用开发风格,并使用Android的原生组件进行开发,界面友好,简洁易懂,组建布局具有诱导性,用户使用极其方便快捷。

3.2性能需求分析

为了保证软件能够长期、安全、稳定、可靠、高效地在Android设备上运行,本系统应该满足以下性能需求。

3.2.1实用性原则

充分利用手机的2G/3G网络,为本软件提供信息支持,充分考虑用户获取信息的心理需求,在简洁实用的基础上对软件界面层级进行布局。

3.2.2可扩展性与可维护性原则

为适应将来的发展,软件应该具有良好的可扩展性和可维护性。

系统设计尽可能模块化、组件化,由于Android设备分辨率的各不相同,使软件可灵活配置,适应不同的的Android终端设备。

系统的可扩展性应包括能接纳已有的系统和在今后系统软硬件扩展时,能有效地保护已有的资源建设。

当用户的需求有所改变时,可以对其快速的配置改变,以应对用户的需求,有一个较好的应用平台——Android设备,能容易地安装和卸载。

系统易于扩充升级,既能满足当前业务的需求,将来的需求改变升级也被考虑在内。

3.2.3安全可靠性原则

本软件是基于手机设备使用的,其安全性与其他的应用软件是一样的,本软件不会残留用户任何的隐私信息。

3.2.4用户界面美观原则

界面经过对用户心理的调研和统计后。

并参考时下流行的软件风格进行设计,在此基础上,加入了对用户具有诱导性的按键设计,使得用户在初次使用的时候就会使用,而不需要在使用的时候进行特别的学习和指导。

3.2.5准确性与原则性原则

软件的准确性是成败的关键,本软件最核心的技术便是通过SOAP技术与互联网上提供的接口进行交互,本软件采用特殊处理来保证数据获取的准确性和及时性,从软件的布局还是数据呈现方面,都是经过对用户心理的研究和与其他数据对比的来的。

3.2.6易用性原则

软件是Android平台上的软件,自然保留了Android软件的应用性原则,平易近人,不需要额外学习,看到任何一个界面都不会不知所措,会有不同含义的图标进行提示下一步操作,保证用户使用时不会迷路。

 

3.3数据需求分析

表3-1信息输入输出

信息输入

信息处理

信息输出

用户选择天气预报城市

软件通过互联网获取该城市信息后筛选有用的信息

通过软件自动筛选后输出有用的信息

用户输入手机号

软件将通过互联网获取该手机号的相应信息

显示该手机的相应信息

用户通过层级选择电视频道

软件通过互联网查询该电视频道的电视节目预告信息

显示该电视频道的电视节目预告

输入想要翻译的单词

软件通过互联网查询相应的单词译文

显示该单词的译文

收藏夹城市管理

对数据库中的城市信息管理

刷新收藏夹中城市列表

收藏夹手机号管理

对数据库中的手机号信息管理

刷新收藏夹手机号列表

收藏夹电视频道管理

对数据库中的电视频道管理

刷新收藏夹电视频道的列表

收藏夹单词管理

对数据库中的单词本管理

刷新收藏夹单词的列表

 

第4章系统设计

4.1系统总体结构设计

在设计一款软件时

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 小升初

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1