基于android的多功能备忘录的设计与实现设计.docx
- 文档编号:29648502
- 上传时间:2023-07-25
- 格式:DOCX
- 页数:32
- 大小:1.17MB
基于android的多功能备忘录的设计与实现设计.docx
《基于android的多功能备忘录的设计与实现设计.docx》由会员分享,可在线阅读,更多相关《基于android的多功能备忘录的设计与实现设计.docx(32页珍藏版)》请在冰豆网上搜索。
基于android的多功能备忘录的设计与实现设计
本科生毕业设计(论文)
题目:
基于Android的多功能备忘录
的设计与实现
福州大学本科生毕业设计(论文)诚信承诺书
毕业设计(论文)题目
中文:
基于android的多功能备忘录的设计与实现
外文:
Thedesignandimplementationofmulti-functionalmemobasedonandroid
学生姓名
年级
学号
所在学院
数计/软件学院
所学专业
软件工程
学生承诺
我承诺在毕业设计(论文)活动中遵守学校有关规定,恪守学术规范,在本人的毕业设计(论文)中未剽窃、抄袭他人的学术观点、思想和成果,未篡改实验数据。
如有违规行为发生,我愿承担一切责任,接受学校的处理。
学生(签名):
年月日
指导教师承诺
我承诺在指导学生毕业设计(论文)活动中遵守学校有关规定,恪守学术规范,经过本人认真的核查,该同学的毕业设计(论文)中未发现有剽窃、抄袭他人的学术观点、思想和成果的现象,未发现篡改实验数据。
指导教师(签名):
年月日
基于Android的多功能备忘录的设计与实现
摘要
随着科技的不断发展,智能手机已成为人们日常生活中必不可少的设备。
为防止忘记日程安排而错过一些重要的事务,人们随身携带备忘录。
现在智能手机上的APP多种多样,技术人员已开发出很多类似备忘录功能的APP。
并且Android平台基本上是开源且免费的,能够有效降低软件的成本,最终让每个用户能够自由地获取已开发的APP。
因此,从实际需求出发,开发一款基于android平台的多功能备忘录应用具有很大的实用性和广大的市场前景。
本文内容包括了对Android平台的系统架构和组件模型的分析,对Android中的重要API和应用构成的解析,以及对Intent和生命周期的机制的介绍。
在此基础上,基于Android平台设计和开发多功能备忘录软件。
本课题基于android的系统通过API配合进行应用程序层次的开发,在SDK的开发环境中,使用eclipse等作为IDE开发环境,采用面向对象方法,选择java语言作为编程语言,数据库选用SQLite数据库。
本系统界面友好、操作便捷,具有良好的可扩展性和可维护性;系统经过测试,可以稳定运行,能够满足手机用户的基本需求。
本课题研究的多功能备忘录的设计开发是为了最大程度上方便人们记录生活中的重要事情。
该备忘录除了具备记事本最基本的增删改查功能外,还拥有个性化的闹铃实时提醒功能,能对每一条记录分别设置不同的闹钟提醒。
录音记事功能、拍照记事功能以及录像记事功能,使用户能随时随刻记录下重要信息。
关键词:
安卓,备忘录,多媒体,闹钟
DesignandimplementationofmultifunctionalmemorandumbasedonAndroidplatform
Abstract
Withtheadvancementofsciencetechnology,smartphoneshavebecomeanintegraldeviceinpeople'sdailylife.Inordertoavoidforgettingthescheduleandmissingsomeimportantaffairs,peoplealwayscarrymemoswiththemselves.Nowadays,thereareplentyofapplicationsonthesmartphonesandtechnicianshavedevelopedmanysimilarmemoapplicationsforpeopletouse.Basically,Androidplatformisanopensourceandfreeofcharge,soitcanreducethecostofsoftwareeffectivelyandmakeeveryusertogaininformationwhattheywantedfreely.Therefore,fromtheactualdemands,developingamulti-functionalmemoapplicationwhichbasedontheAndroidplatformwillgainapracticabilityandmarketprospectinthefuture.
ThispaperhasanalyzedthesystemarchitectureandcomponentmodelofAndroidplatform,andthenparsestheimportantpartoftheAndroidAPIandapplicationconfiguration,aswellastheintroductionoftheIntentandmechanismoflifecycle.Onthisbasis,wedesignanddevelopthismulti-functionalmemowhichbasedontheandroidplatform.ThistopicisdevelopingapplicationlevelwhichcoordinatedwithAPIlevelandbasedontheAndroidsystem.WithdevelopmentenvironmentofSDK,usingeclipseasanIDEdevelopmentenvironment,itusesobject-orientedmethod,andselectsJavalanguageastheprogramminglanguageandSQLitedatabase.Thissystemhasafriendlyinterface,convenientoperation,goodexpandabilityandmaintainability;aftertestedsystem,itcanoperatestably,andsatisfythebasicneedsofmobilephoneusers.
Forthesakeofconvenienceforpeopletorecordsomethingimportantintheirdailylife,thisresearchmainlyinvestigatesthedesignanddevelopmentofmulti-functionmemo.Thismemoapplicationisnotonlyhavingtheprimaryfunctionofadding,deleting,modifyingandinquiryasnotepad,butalsohasapersonalizedalarmclockfunction,whichcansetdifferentalarmreminderforeachrecord.Andthememoalsobedesignedwithrecordingfunction,photofunctionandvideofunctionsothatuserscanrecordtheimportantinformationatanytime.
Keywords:
Android,memo,multimedia,alarmclock
第1章绪论
研究背景和意义
现代社会中,随着科技的进步和生活水平的提高,智能手机越来越普及。
据调查数据显示,2011年至2012年我国android系统手机的市场份额已达%,并呈上升趋势。
因此,市场上不断涌现出大量的基于android平台的软件和增值服务。
人们的生活方式向着越来越便捷的方向发展,而智能手机成为了他们获取信息最方便、快捷的途径。
快节奏的生活方式使得人们的生活压力急剧增大。
紧凑的日程安排、繁重的事务让人们喘不过气来。
为了避免忘记日程安排而错过一些重要的事务,备忘录成了人们的随身必备品,当遇到重要的事情可以记录下来以便随时查阅。
传统的文字型备忘录缺乏简单有效的备忘效果,用户需要手动输入大量的文字备忘信息,且从内容上来看文字组织灵活性不如语音。
据一份android应用的市场调查显示,%的用户最常下载工具类应用,位居第二。
因此,从实际需求出发,开发一款基于android平台的多功能备忘录应用具有很大的实用性和市场前景。
本课题研究的多功能备忘录(WLNote)的设计开发是为了最大程度上方便人们记录生活中的重要事情。
备忘录除了具备记事本最基本的增删改查功能外,还拥有个性化的闹钟实时提醒功能、录音记事功能、拍照记事功能和录像记事功能。
使用户能随时随刻记录下重要信息。
系统研究现状
现在,国内外Android开发者开发出不计其数的备忘录APP,但大多数备忘录APP还是局限在便签的功能,只实现了记事本简单的增删改查功能。
有些同时具备闹钟提醒功能,有些能关联图片记事,但很少有一款APP能将这些功能汇聚到一起。
本课题开发的备忘录将这些功能集中到了一起。
该备忘录界面简洁、操作简单、且具有很强的可扩展性和可维护性。
备忘录不仅具备记事本的功能。
还允许在不方便用文字记录的情况下,可以通过录音、拍照或者录像的方式记录重要事情。
本文作者的工作
[1]从网上查阅Android开发的相关资料,了解同类APP的背景情况和发展现状及趋势。
分析研究备忘录的相关功能,结合本次毕业设计的相关要求作出需求分析。
[2]深入了解android平台,学习android开发技术,熟练掌握java编程语言,并能熟练使用其中的主要技术。
对项目进行设计分析,完成配套的功能结构。
[3]熟悉并进行开发环境的搭建与配置,为开发项目奠定基础。
[4]熟悉Android中的SQLiteDatabase类,使用该类完成对数据的增删改查。
[5]学习View类,使用其提供的ondraw()、invalidate()等方法进行视图设计。
[6]学习Android类库中提供的Media类,使用该类提供的方法实现多媒体功能的设计。
[7]进行运行调试和系统测试。
[8]最后完成毕业设计论文。
论文组织结构
本文共分为4章,首先是阐述和分析为何选择这样一个课题,介绍了毕业设计的背景、开发意义和系统的现状。
接着引出论文接下来的具体内容。
紧接着论文对系统需要用到的一些相关技术进行了部分分析。
然后便是设计和实现这个系统的基本步骤,从开发环境的搭建到创建项目再到APP的功能实现,完成了多功能备忘录的编码过程。
接着便是对完成的APP进行测试与完善。
最后是整篇文的总结。
论文具体安排如下:
第1章简单介绍APP的背景和意义以及APP的研究现状。
第2章概述APP开发环境和APP中所使用的各项主要技术。
第3章对APP进行设计与实现。
第4章对整个APP的开发进行总结,简述APP的特色和存在的不足。
第2章系统开发环境及相关技术
Android平台
Android平台是一个软件栈的体系结构,包括操作系统,用户界面和应用程序。
自下而上,以嵌入式操作系统为核心,接着用谷歌开发的Android类库做配合,再加上Android运行的应用程序架构开发各种不同的应用。
Android的功能特征
应用程序架构:
应用程序体系结构包含了很多不同类型的基础组件。
通过直接调用相应的组件来进行应用程序的开发,可大大减少开发应用程序的工作量,使得开发过程更简便更快。
强大的绘图能力:
在APP里所提供的绘图功能分为2D与3D两种类型。
针对2D绘图,Android提供了一套特有的类库(SGL);针对3D绘图,使用的则是规范的类库。
它们是一种非常快的图形引擎,且支持硬件加速。
集成的浏览器:
集成的浏览器是内置的Android浏览器,是基于WebKit浏览引擎进行开发而成的。
WedKit是目前主要用于浏览器的一个开放源码的Web浏览器。
在智能手机本身所具备的功能的基础上,浏览网站将让用户拥有更好的操作体验。
Dalvik虚拟机器:
基于Android的Java虚拟机,是由Google公司自主研发的Dalvik虚拟机,并不是Sim公司所发布的标准JAVA虚拟机。
Dalvik虚拟机保证兼容API的同时,针对智能手机进行了大量改进,使得具备更小的占用资源,更高的运行效率。
支持多媒体的能力:
主要用于播放媒体文件。
这体现在包对视频(如播放影视剧等)的支持和音频(如录音、播放音乐、播放录音文件或铃声等)的支持,甚至体现在能直接播放网络上的流媒体。
同时,Android还支持各种主流的静态图像格式,比如:
JPG、PNG、GIF等格式。
GSM技术:
即全球移动通讯系统。
开发GSM技术是为了让世界各地使用的手机网络标准是同一个。
这样,用户即使足迹遍布全球,也无需更换手机。
蓝牙、EDGE、3G及Wi-Fi:
蓝牙是一种能代替短距离电缆的无线连接技术,新型、开放且低成本。
使用蓝牙能无线传输任何数据。
EDGE是从GSM过渡到3G的增强型数据速率演进。
WiFi也是一种无线短距离技术,这方面与蓝牙技术一致。
GPS:
GPS全名为全球定位系统。
全球被24颗卫星覆盖着,保证GPS可随时随地同时观测到4颗卫星,由此保证能得到观测点的精确地理位置。
进一步利用所得到的地理位置数据,能应用到定位、授时、导航等技术。
Android的架构分析
图中显示的是Android架构的五个主要部分。
图2-1:
Android系统架构
应用程序框架
Android系统提供一个框架给应用开发者,这个应用程序框架具有模块化、可重用性、可扩展性、简单性、可维护性。
应用程序框架作为应用程序的核心,具备如下功能:
:
提供高层面的程序模型以及应用程序运行的基本环境。
:
访问和发布各种设备上的数据。
:
通过内容提供者浏览和操作数据库。
:
包含定位和其他相关服务的类。
:
提供系统服务、消息传输和IPC机制。
:
是底层的图形库,包含画布、颜色、点、矩形等绘图元件,能将其直接绘制到屏幕上。
:
提供帮助访问网络的类。
:
包含管理多媒体文件的媒体接口的类。
:
提供类似于操作时间日期等的工具性方法。
:
提供与拨号相关的API交互。
:
提供默认的浏览器接口。
:
提供各种在应用程序布局中的UI元素。
:
提供openGL的工具。
:
涵盖访问Android内容提供者的类。
Android应用的工作机制
活动、意图接收器、服务、内容提供者组成一个Android应用程序,但这四个构件并不要求同时出现。
如在应用程序中使用到这四个组件时,要求要在(配置文件)中进行相应的配置。
每个APP都必须拥有这个配置文件,以定义在应用程序中用到的组件和组件功能,同时说明组件的必要条件等。
Android应用的构成和工作流程如图2:
图2-2:
Android的工作流程
Android应用程序结构剖析
是系统的控制文件,存储在项目层次中的最底层。
它采用XML作为描述语言,描述了程序包的全局变量。
主要包含以下功能:
A、说明应用程序的java数据包,数据包名是application的唯一标识;
B、描述应用程序的component;
C、说明应用程序的component运行在哪个process下;
D、声明应用程序所必须具备的权限,用以访问受保护的部分API,以及与其他应用程序的交互;
E、声明应用程序其他的必备权限,用以component之间的交互;
F、列举应用程序运行时需要的环境配置信息,这些声明信息只在程序开发和测试时存在,发布前将被删除;
G、声明应用程序所需要的AndroidAPI的最低版本级别,例如,,等;
H、列举应用程序所需要链接的库;
Android应用程序的结构解析
创建Android应用程序时,使用到的activity、services、Contentproviders、Broadcastreceivers组件必须在文件中进行注册。
在文件中可以声明应用程序组件以及它们的特性和要求。
这个配置文件是每个Android应用程序所必需的。
A、活动(Activity)
在Android中,Activity是所有应用程序的根本,程序的运行流程都是在Activity中,它是Android中最基本的模块之一。
[1]
一个activity代表用户界面的一个独立屏幕。
不同的应用程序能够从任何一个activity启动(只要邮件应用程序允许)。
例如,用户需要分享一张照片,一个拍照应用程序能够启动邮件应用程序的活动。
activity是一个实现了 的子类,你可以在 开发者指导部分了解更多。
B、服务(Services)
服务基本都是在后台运行,执行长时间操作或者执行远程操作。
服务不提供用户界面。
例如,当用户在使用另一个应用程序时,可有一个独立的服务进程在后台播放音乐,或是在后台下载资料,而不用阻断用户与当前活动的交互。
其他组件,比如一个活动,为了与该服务互动,可以启动或者绑定它。
service是一个实现了 的子类,你可以在 开发者指导部分了解更多。
C、内容提供者(Contentproviders)
一个内容提供者管理一组共享的应用程序数据。
数据可以存储于文件系统、SQLite数据库、网页或其它你的应用程序可以进入的存储空间。
通过内容提供者,其他应用程序可以查询或者修改数据(如果服务提供商允许)。
例如,安卓系统提供一个管理用户的通讯录信息的内容提供者。
比如,任何有相应权限的应用程序可以查询内容提供者的部分内容(如)以读取或修改特定人的信息。
内容提供者对读取和改写应用程序的私有数据也是有用的。
比如,简便记事本程序用一个内容提供者存储笔记。
内容提供者作为被实施,并且必须实施一系列APIs的标准使其它应用程序履行事务。
更多信息请查阅the developerguide。
D、广播接收器(Broadcastreceivers)
广播接收器是响应全系统的广播公告的一个组件。
很多广播来源于系统,比如说,屏幕关闭,电池低电量,或截获一张图片,这些都是来源于系统的广播。
应用程序也可以产生广播,比如说,通知其它应用程序一些数据下载完成并处于可用状态。
虽然广播接收器不显示用户界面,但当广播事件发生时,它们可能创建状态栏通知提醒用户。
更常见的是,广播接收器是一个通往其它组件的“网关”以便做极少量工作。
例如,它可能会启动一个服务进程进行基于事务的一些工作。
广播接收器作为被实施,每个广播作为目标对象被独立开来。
更多信息,见类。
Intent的详细解析
activities、services和broadcastreceivers是由一种叫intent(意图)的异步消息来激活的。
组件之间可以相互调用,以协调工作,最终实现Android应用程序。
而它们之间的通讯由intent协助完成。
Intent属于一种运行时绑定机制,当程序运行时,intent将程序运行过程中所请求的组件绑定在一起。
intent在应用程序中担当媒体中介的角色,负责描述应用程序中操作的全部数据,为组件之间的互相调用提供相关信息。
比如,有一个Activity希望打开网页浏览器查看某一网页的内容,那么这个Activity只需要发出WEB_SEARCH_ACTION请求给Android,Android就会根据Intent的请求内容,查询各组件注册时声明的IntentFilter,找到网页浏览器的Activity来浏览网页。
Android活动的生命周期
Android平台主要是担当手机的操作系统。
而手机应该具备的最基本的功能特性就是,当手机正在使用过程中,有来电或短信的时候随时暂停正在使用的功能,切换到通话模式或短信模式,并且要求在结束通话模式或短信模式的时候能恢复到被暂停的应用程序运行界面。
目前主流的智能手机,均支持多工作业。
如用户在听音乐的同时,能执行其他应用程序。
多工作业能让使用者有更好的用户体验,但同时执行多个程序将占用更多系统内存,当系统内存所剩无几时,系统运行时会反应缓慢,甚至导致系统不稳定。
为了让这一问题不再成为问题,Android系统引入了生命周期这一新机制。
在Android系统上,由Android框架管理着Android应用程序的生命周期,而非是应用程序控制其生命周期。
正常情况下,任意一个应用程序都会占据一个进程,入口为一个活动的onCreate()方法。
该进程会在系统内存不足的时候回收进程,安排回收进程的顺序是根据应用程序的优先级高低而进行的。
因此,开发者或使用者都无法确定应用程序会何时被回收。
切换活动的时候,原来的活动会有一连串的状态改变。
开发者若将各状态相对应的流程加入到程序中,每次改变活动状态的时候就会有相关的流程被执行。
只有让活动在各个周期中负责各种不同状态的工作,用户才能有更好的使用体验。
图2-3:
Activity生命周期
Java编程语言
如今,在intent应用开发领域中,Java技术已成为其核心与主流技术。
Java语言不仅具有面向对象、可移植性、强壮性与安全性等优良特性,同时也为各层次的分布式应用提供了全面的系统的方法与技术。
大多数程序设计语言的程序运行如果不是采用编译,执行方式,就是采用解释执行的方式。
但Java语言的不同之处在于,程序运行不仅要经过编译也要进行解释。
首先,Java程序由编译器进行编译,产生中间代码(Java字节码),该中间代码不能在各种计算机平台上直接运行,需在虚拟器(JVM)上才能运行。
Java解释器是JVM的实现,它把字节码转换为底层平台的机器码,使Java程序最终得以运行。
无论是Application还是嵌入在浏览器中的Applet,都需要通过解释器才能运行。
Java字节码使得“一次编程,到处运行”成为可能。
平台是指支持应用程序运行的硬件或软件环境。
Java平台是运行在其他硬件平台之上且完全由软件构成的平台,支持Java程序的运行,如图所示。
图2-4:
Java平台
Java语言因为其句法和语义都比较单纯,容易学习和使用。
Java相比于C++,有了改进,去掉了指针,取消了运算符重载和多重继承,内存管理由程序员移向Java内嵌的自动内存回收机制等,从而使得语义更简化,出错机会更少,程序员负担更轻。
Java的对象有模块化性质和信息隐藏努力,满足面向对象的封装要求。
Java支持面向对象的继承性,并通过抽象类和接口支持面向对象的多态性要求,即一个对外接口,多种内部实现。
主体环境的搭建和配置
Eclipse:
Eclipse是一钟基于Java的可扩展开源开发平台。
Eclipse原先是IBM公司开发的IDE开发环境,现在由非营利软件供应商联盟Eclipse基金会管理。
Eclipse最初只支持Java开发,目前通过其他插件也能支持其他编程语言的开发工作,比如C语言、C++、Python等。
Eclipse不仅可作为Java的集成开发环境来使用,还允许软件开发人员进行与E
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 android 多功能 备忘录 设计 实现