开题报告

时间:2024.4.20

专科生毕业设计(论文)

开题报告

题 目: MiniCard

指导教师: 孙立友

专业名称: 软件技术 班 级: 1022312 学生姓名: 万国虎 学 号: 20102231247

20xx年11月13日

MiniCard

摘要

Android是一种以Linux为基础的开源代码操作系统,主要应用于手机,因为其良好的人机交互能力和能够安装使用众多功能各异的应用软件而深受人们喜爱,本文就介绍其基于Android 2.2版本开发的一个“个性通讯录”即MiniCard通讯录。根据当下人们的使用习惯和实际需求,本文对通讯录提出了新的构想和设计,并在这样的基础上,构建实现了该通讯录。

关键词:Android Linux 手机 通讯录 个性

Abstract

Android is a sort of open source code operating system that base on the Linux, and mainly used by mobile phone. It is so popular because of the good human-machine interaction capability, and also there are all kinds of functional applications software can be installed that through by this operating system, this article will introduces a kind of contacts that bases on the Android 2.1 version,this is MiniCard.this article pointed out an new idea and design for contacts due to the people’s operating habits and particular demands, and on such a basis to construct and achieve this contacts.function to ensure the security and stability of the system effectively.

Keywords: Android Linux mobile contacts individuality

1.1研究背景

随着移动通信与Internet向移动终端的普及,网络和用户对移动终端的要求越来越高,而Symbian,Windows Mobile,PalmOS等手机平台过于封闭,不能很好的满足用户的需求,因此市场迫切需要一个开发性很强的平台。经过多年的发展,第三代数字通信(3G)技术活动了广泛的接受,它为移动终端用户带来了更快的数据传输速率。随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。因此,移动终端的应用软件和需要的服务将会有很大的发展空间。Google为此与20xx年11月推出了一个专为移动设备设计的软件平台——Android。

Android 是一套真正意义上的开发性的移动设备综合平台,它包括操作系统、中间件和一些关键的平台应用。Android 是由Linux+Java构成的开源软件,允许所有厂商和个人在其基础上进行开发。Android平台的开放性等特点既能促进技术,包括平台本身的创新,又有助于降低开发成本,还可以是运营商能非常方便地制定自己的特色化的产品。因此,它具有很大的市场发展潜力。

根据中国互联网信息中心CNNIC发布的消息称,截止20xx年底,中国网民数量达到了惊人的5.13亿,正式迈入了“5亿网民”时代,其中手机网民达到

3.4亿,机上网成为网络介入的一个重要发展方向。

1.2研究现状

当今社会的生活节奏越来越快,人们对手机的要求也越来越高,由于手机市场发展迅速,使得手机操作系统也出现了不同种类。Android是一个基于Linux 核心(kernel)的开放手机平台作业系统,与Windows Mobile、Symbian 等手机作业系统处在同一级别,其中占有开放源代码优势的Android系统有最大的发展前景。较之Symbian用户体验较差,系统较为封闭支持的应用较少和Windows Mobile系统对终端厂商来讲引入成本较为昂贵,娱乐性平平。Android系统则拥有低廉的引入成本,在应用方面的资源丰富,以及良好的用户体验开放性较强的特点,适应了移动互联网的发展趋势,切合了移动互联网产业链各方的发展变化需求,所以取得了迅猛的发展。

Android系统除了低廉的成本和良好的用户体验外,因采用了开源的平台给予了终端厂商和开发者更大的灵活性,开发者在程序的开发移植上更为方便且不需要考虑厂商端内容审核等问题,终端厂商则可以按需深度定制系统开发本地化应用环境,在终端厂商、电信运营商和第三方应用开发商的推动下,用户可选择的应用资源将会进一步丰富。各大Android应用商店呈现百花齐放的态势。带给了应用开发者更多的机遇和极具诱惑力的利润分成,在各应用商店间的移植改造成本也相对较低。随着应用商店的不断发展和开发者的涌入,Android平台的应用资源优势正在逐步的扩大。

而从用户的角度考虑,Android良好发展前景主要源于优秀的用户体验和高性价比这两个方面。

从人才需求类型来看,目前对Android人才需求一类是偏向硬件驱动的

Android人才需求,一类是偏向软件应用的Android人才需求。从目前的招聘需求来看,后者的需求最大,包括手机游戏、手机终端应用软件和其他手机应用软件的开发。

职业专家分析说,由于目前Android技术较新,具有开拓空间,无论是相关书籍、培训还是大学教育,都处于初级阶段,因此Android人才短期将供不应求。从长期来看,随着各种移动应用和手机游戏等内容需求日益增加,也将激励大中小型手机应用开发商加大对Android应用的开发力度,因此Android人才前景也被看好。

生活在信息高速发展的今天,智能手机的普及己经是不可改变的趋势。而作为手机各个功能中最为基本的通讯录也成为人们生活中必不可少的一部分了。在这个人与人关系愈加密切的时代,“通讯”成了生活中的必需品。通过手机通讯录记录下对方的联系方式,既减轻了大脑的负担,又不在受各种条件的约束,做到便捷随身管理相关的联系信息,摆脱了传统电话簿名片的累赘。另外不同于微博,社交网站,手机通讯录是完全属于用户的,而不隶属于某个特定公司或是服务,只要获得用户的认可,即使不是大公司也可以借此迅速建立起一个巨大的关系网络。Frost & Sullivan的王煜全也曾多次强调过手机通讯录是一块颠覆性创新的金矿,是创业者们创新的绝佳平台。从长远利益来看,可是意义重大的环保便民之举。根据市场需求,手机通讯录管理系统所记录的信息一般分为个人、商业、办公三类。清晰了机主的联系方向。针对性的分门别类,使系统具有了方便了机主的存储和快速查阅优势功能,大大减少了在电话簿,名片上机械翻阅查找过程的时间。于此同时又根据手机随身携带的特殊性,在一定程度上比一般的制作文件方便亲民。又其次因为手机是随身携带的通讯工具,这与记事本相比将在一定程度上保障了联系人信息的安全性,相对避免了个人隐私信息外泄从而带来的损失。

综上所述手机通讯录管理系统是一个高效、实时、绿色环保的管理系统。然而现在很多通讯录一味追求外观花哨,功能繁杂,对于大多数用户,许多功能用不上,形同虚设。针对以上各种弊端,开发了此种通讯录,将各种性能优化,继承通讯录的常用功能满足一般用户存储、查找、删除、查看的需求,此外还支持发信息,打电话,发邮件等功能。

1.3主要工作

在此背景下,开发的基于Android手机通讯录具有十分重要的意义。可以根据客户需求的实际情况,开发一款实用的手机通讯录软件。

本设计主要是采用Android的View框架编写,部分框架运用Android中的其他组件。当进入通讯录的增加界面时,调用的是一个用相对布局RelativeLayout的XML布局文件。其中包括了2个Button,分别实现了不同的功能。第一个Button是保存内容,当输入联系人姓名和号码是点击保存实现此功能。说到保存,不得不说得是保存信息涉及添加新联系人的头像,姓名,手机号码,qq,地址,Email,备注这些信息。第二个Button是返回,顾名思义就是从增加界面返回前一界面。

为了解决工作的时间,增加工作效率,提高页面的利用率,增加页面也可以当做修改界面来使用,并且根据用户修改的角色的不同而发生变化。当用户进入 个人信息时,增加只是针对用户自己,修改也是如此。而进入好友界面,增加和修改则仅仅针对的是好友,这一切的活动都是根据传入增加界面的用户角色参数

和动作类型决定的。

1.4本文结构

本文首先给出了系统的研究背景,对当前手机通讯录的发展现状做了简单的介绍。进而详细的分析了Android的特征、架构以及Android应用的构成和工作机制。

本文详细的提出了软件的架构,以及通讯录的设计方案:采用Java开源的JAR包对HTML文件进行分析和获取图片和文字信息。对各个界面的布局和实现方式进行详细说明;对数据库设计模块进行了详尽的需求分析,经分析得到数据库设计模块,它主要完成用户对已经获取的内容的存储,删除和查询等操作;运用Android提供的各种组件设计和实现很好的UI效果,实现很好的用户体验;详细介绍了该软件的性能优化。

2Android技术与理论

2.1 Android系统开发简介

2.1.1 Android技术简介

Android一词的本义指“机器人”同时也是Google。于20xx年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。它采用软件堆层(Software Stack又名软件叠层)的架构,主要分为三部分。底层以Linux内核工作为基础,由C语言开发,只提供基本功能;中间层包括函数库Library和虚拟机Virtual Machine由C++开发。最上层是各种应用软件,包括通话程序、短信程序等应用软件则由各公司自行开发,以Java作为编写程序的一部分,不存在任何以往阻碍移动产业创新的专有权障碍。Google通过与软、硬件开发商、设备制造商、电信运营商等其他有关各方结成深层次的合作伙伴关系,希望借助建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统。

对于设备制造商来说,Android是一个免费的平台。对硬体开发厂商来说Android是个开放的平台。只要厂商有能力可以在这个平台上自由加入特有的装置或功能不受手机作业系统厂商的限制。对于手持装置的开发者来说,Android是个先进的平台。平台上的应用程式可相容于各种型号的Android手机,免去为各种不同手机机型开发的困扰。Android平台支援各种先进的网络、绘图3D 处理能力,可以用来提供更好的使用者体验。Android它的开放性就优于其它封闭式的手机系统,因此,任何人都可能根据自己的喜好将手机系统中的所有功能重新编写。这使得越来越多的人关注这个操作系统。

Android软件平台主要由五部分构成,它们分别是:关键应用程序、应用程序框架和组件、C/C++函数库、Java程序运行环境、优化了的Linux内核。

关键应用程序:Android平台内包含一些关键应用程序,如邮件收发客户端程序、短信收发程序、日历、网页浏览器等,而更多有特色的Android应用程序还有待于广大开发者共同参与开发。

应用程序框架及组件:Android 应用程序开发基于框架和组件。Android本身已在其框架中提供了许多组件供应用程序调用,开发者也可在开发应用程序时

顺带开发新的组件,并将该组件放入应用程序框架中以供自己和其它应用程序调用。

C/C++函数库:Android应用程序框架之下是一套C/C++函数库,它们服务于Android应用程序组件,其功能通过组件间接提供给开发者。这些函数库包括: 标准C函数库、媒体功能库、浏览器引擎、2D和3D图形库等。

Java程序运行环境:Android的Java程序运行环境包含一组Java核心函数库及Dalvik虚拟机,它们有效地优化了Java程序的运行过程。

Linux内核:Android系统平台基于优化了的Linux内核,它提供诸如内存管理、进程管理、设备驱动等服务,同时也是手机软硬件的连接层。

Android应用程序以各种组件(API)为基础,API是Android软件平台的重要组成部分,也是开发Android应用的关键所在。

当前活动程序Activity:作为最常用的应用程序组件,几乎所有Activity都会通过创建U I窗口与用户进行交流。Activity具有生命周期:它包含运行、暂停、停止等几个状态,状态间的转换可通过调用onCreate()、onStart()、onRestart()、onResume()、onFreeze()、onPause()、onStop ()、onDestory()等方法来实现。要开启新的activity可以调用startActivity(Intent)或调用startSubActivity(Intent,int)后者通常和onActivityResult(int,int, String,Bundle)联合使用,以从一个activity获取某结果并返回给打开它的activity。

图像显示View: View是最基本的UI构件,它在屏幕中占据一个矩形区域可用来显示文本、图像等内容,还可完成图像事件处理。常用的View方法有:inflate()(由XML 文件生成View)、onDraw (Canvas)对View进行填充) 、onMeasure (int,int)(测量View的高度和宽度)、onLayout()(完成View的布局)、onKeyDown(int,KeyEvent)(View中有按键操作时被调用)、onFocusChanged (boolean,int)(当View得到或失去关注时被调用)、setOnClilckListener()(设置View点击事件监听器)。View也包含一些子类,如:TextView(布局文件中的文本显示)、EditText(布局文件中的文本编辑)、Button(按钮、ListView(显示列表)。

事件Intent:Intent抽象描述了想要执行的某种操作,它与startActivity一起使用可以开启新的activity与startService 一起使用可以开启后台服务。Intent最重要的作用还是加载activity它是不同activity间的桥梁。Intent也可以被认为是一种概括操作行为的数据结构它主要包括action(动作)和data(数据)两部分,此外它还具有一些附加属性如category(intent种类)、type (数据类型)等。常用的Intent方法有intent()(构造intent)、addcategory() (添加intent类型)、getAction()(获取intent动作)、getData()(获取intent数据)等。

数据存取与共享机制ContentProvider: ContentProvider为应用程序提供一些访问方法,包括:Query(Uri,String[],String,String[] ,String,String,String)(数据信息的查询),insert(Uri,Contentvalues)(在Contentprovider中添加新数据),updata(Uri,Contentvalues,String,String[])(更新Conntprovider中的数据),delect(Uri,String,String[])(删除数据),Gettype (Uri)(获取数据类型)。其中Uri标明了ContentProvider存储的数据类型,在执行访问方法时都需依据Uri作为路径标识来确定要访问哪个ContentProvider。

后台服务Service:Service是运行在后台的应用程序组件,不直接与用户交互。当前活动程序可以使用Context. StartService()开启一项后台服务,还可以通过Context.bindService()与后台服务通信。

Android的架构是Linux内核、C/C++函数库、Dalvik虚拟机、应用框架以及关键应用程序构成的。通过编译基于框架的应用程序可以降低开发负荷。应用软件原则上是在Dalvik VM上运行的。

2.1.2关键应用程序

Android平台内包含一些关键应用程序,如邮件收发客户端程序、短信收发程序、日历和网页览器等,开发者可以在其平台上开发更多有特色的应用程序,所用开发语言是Java。

2.1.3应用程序框架

Android应用程序的开发基于框架和组件。Android本身已在其框架中提高了许多的组件供应用程序调用,当然开发者也开放新的组件,并将组件放入应用程序框架中,以供自己和其它应用程序调用。

2.1.4函数库

Android应用程序框架之下是一套C/C++函数库,它们服务于Android应用程序组件,其功能通过组件间接提供给开发者。这些函数库包括:标准C函数库、媒体功能库、浏览器引擎、2D和3D图形库、基于WEB应用的的安全协议SSL、用于点阵和矢量字体渲染的FreeType以及SQLite引擎等。

Android的Java程序运行环境包含一组Java核心函数库及Dalvik虚拟机它们有效地优化了Java程序的运行过程。所有的Android应用都运行在它自己的进程里,该进程是一个Dalvik虚拟机的实例,Dalvik被设计成能在一台设备上高效的运行多个虚拟机实例。Dalvik虚拟机的可执行文件被封装成Dalvik可执行格式(.dex)。这是被优化过的最小内存依赖的格式。Java编译器(dx工具)将注册了的和运行时用到的类编译成.dex格式。Dalvik虚拟机依赖于底层Linux内核提供的功能,如线程机制,和内存管理机制等。

2.1.5 Linux内核

Android系统平台是基于优化了的Linux内核,是其系统平台的核心。它提供诸如内存管理、进程管理、设备驱动等服务,同时也是手机软硬件的连接层,提供了一个屏蔽层用于屏蔽硬件和上层软件。

2.2 Android应用的构成和工作机制

对于一个Android应用程序来说,是由Activity、Intent Receiver 、Service、Content Provider四部分组成,但并不是每一个Android应用程序都必须由这四部分组成。在应用程序中使用时,需要在配置文件AndroidMainfest.xml中进行配置。这个配置文件是每个Android应用程序所必需的,用于定义应用程序的组件、组件的功能以及必要条件等。

2.2.1 Activity

Activity是构成应用程序中最重要的构造块,在Android应用程序中,几乎

都是通过Activity来与用户进行交互,所以Activity主要负责的就是创建与用户进行交互的显示窗口,你可以在这些窗口里通过调用setContentView(View)方法来显示你自己的用户界面。

活动(Activity)在系统中以活动栈的形式进行管理。当一个新的活动启动后,被放到了栈顶,成为了运行活动,而新活动之前的活动在活动栈里总位于新活动之下,直到新的活动退出才重新回到前台。

Activity有三个关键的循环:

(1)活动的整个生命期:从首次调用onCreate(Bundle)开始到最终调用onDestroyO结束。在onCreate()中进行所有初始化,在onDestroyO时进行清理工作,释放资源。

(2)活动的可见生命期:从调用onStart()开始到onStop()被调用为止。在这段时间内,即使活动不与用户进行交互,用户也可以在屏幕上看到它。在这两个方法调用之间,可以维护活动显示给用户的资源。onStart()和onStop()方法可以多次调用,因为活动随时可以在可见和隐藏之间进行转换。

(3)活动的后台生命期:从调用onResume()开始到onPause()被调用为止。这段时间内活动处于其它所有活动之前,并与用户进行交互。一个活动可以不断在resumed状态和paused状态之间变换。

Android使用了Intent类来实现活动之间的切换工作。Intent负责对应用中一次操作的动作、动作涉及的数据和附加数据进行描述。根据Intent的描述负责找到对应的组件,将Intent传递给调用的组件并完成组件的调用。因此,Intent起着一种媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。在应用中,我们可以以两种形式来使用Intent:直接Intent、指定了component属性的Intent,通过指定具体的组件类,通知应用启动对应的组件。间接Intent,没有指定component属性的Intent,则需要包含足够的信息,这样系统才能根据这些信息,在所有的可用组件中,确定满足此Intent的组件。

2.2.2 Intent Receiver

Intent Receiver是用于对外部事件的响应,当外部事件发生时,会使用Notification Manager通知用户。当一个Intent Receiver被触发时,系统会在需要的时候启动对应的应用程序。各种应用还可以通过Context.Broadcast Intent()将它们的Intent Receiver广播给其它的应用程序,实现应用之间的通讯。

2.2.3 Service

Service是提供连续信息的应用程序。它是运行于应用程序后台的服务,在用户进行其它活动的时候,这个服务将一直运行在基于Android平台的即时通讯系统的研究与实现后台,直到用户停止该服务或服务运行结束。本系统客户端扩展功能就是采用Service来进行设计和开发的。

2.2.4 Content Provider

Content Provider应用程序能够将它们的数据保存到文件、SQL数据库和其它的存储设备中。当应用程序需要使用存储设备中的数据时,可以使用Content Provider来完成。使用Content Provider能够灵活的替换底层使用的存储设备,

使开发者可以专著于应用逻辑的开发,不用考虑底层存储设备的细节,从而使应用系统具有良好的数据

更多相关推荐:
毕业论文开题报告范文

[1]毕业论文开题报告开题报告是指开题者对科研课题的一种文字说明材料。这是一种新的应用写作文体,这种文字体裁是随着现代科学研究活动计划性的增强和科研选题程序化管理的需要应运而生的。开题报告一般为表格式,它把要报…

开题报告格式及范文模板(最全面,最实用)

1开题报告方法介绍开题报告是指开题者对科研课题的一种文字说明材料这是一种新的应用写作文体这种文字体裁是随着现代科学研究活动计划性的增强和科研选题程序化管理的需要应运而生的开题报告一般为表格式它把要报告的每一项内...

开题报告范例 华科

华中科技大学本科生毕业论文开题报告華中科技大学本科生毕业设计论文开题报告题目AES高级数据加密标准加解密电路的设计学号姓名指导教师院系专业华中科技大学教务处制i华中科技大学本科生毕业论文开题报告选题报告要求一课...

毕业论文开题报告模板

毕业设计论文开题报告题目从网络游戏产业问题看信息业的新趋势姓名学号指导教师班级系部陕西科技大学镐京学院毕业设计论文开题报告陕西科技大学镐京学院毕业设计论文开题报告1陕西科技大学镐京学院毕业设计论文开题报告2陕西...

开题报告范本

吉首大学本科生毕业论文开题报告书题目名称学生姓名学号学院专业年级指导教师职称填写时间123456

开题报告写法(很全,很有用)

毕业论文开题报告范文百度文库资料找了老半天了大四的用得着开题报告方法介绍来源魏帅的日志毕业论文开题报告范文1毕业论文开题报告开题报告是指开题者对科研课题的一种文字说明材料这是一种新的应用写作文体这种文字体裁是随...

开题报告终版

毕业设计(论文)开题报告4CaOP2O5基固体电解质的锆钛掺杂制备与性能研究20##年8月20日1、研究背景及意义准确、快速、连续地测定铁合金中的控制元素及有害元素,降低生产成本,提高产品质量,是当前研究铁合金…

如何写开题报告

如何写开题报告开题报告的内容1课题来源及研究的目的和意义2国内外在该方向的研究现状及分析3主要研究内容及创新点4研究方案及进度安排预期达到的目标5为完成课题已具备和所需的条件和经费6预计研究过程中可能遇到的困难...

开题报告

本科生毕业论文开题报告论文题目浅谈微博中意见领袖的影响力姓名学号院系所学专业班级指导教师20xx年01月12日填

开题报告

湖北文理学院毕业论文设计开题报告注学生须根据毕业论文设计任务书写出2500字以上的开题报告开题报告包含以下几方面的内容1研究目的和意义2阅读的主要文献资料理工类15种书以上其它学科类20种以上分析国内外现状的发...

开题报告表(范文)

开题报告表622X真实课题Y模拟课题Z虚拟课题要求12均要填如AYBX等

开题报告——正文

北京建筑大学本科生毕业设计论文开题报告毕业设计开题报告姓名刘成班级土118班学号2102291111511指导教师刘军王亮一毕业设计名称地铁项目单位工程施工组织设计及关键技术分析二设计项目概况我所选的毕业设计是...

开题报告(48篇)