基于android的手机通讯录的设计与实现毕业论文(编辑修改稿)内容摘要:
Unix 操作系统而开发的。 从技术上说 Linux 是一个内核。 “内核”指的是一个提供硬件抽象成、磁盘及文件系统控制、多任务等功能的系统软件。 一个内核不是一套完整的操作系统,一套基于 Linux 内核的完整操作系统才是 Linux 操作系统。 作为一个生产操作系统和开源软件, Linux是测试新协议的良好平台。 Linux支持大量网络协议,包括 TCP/IP 协议。 Linux 也可以支持 SCTP(流控制传输协议 )之类的协议,它提供很多比 TCP/IP 更高级的特性。 Linux 还是一个动态内核,支持动态添加或删除软件组件,他们可以在引导时根据需要或在任何时候由用户插入。 随着时间的流逝, Linux 内核在内存和 CPU 使用方面具有较高的效率,并且十分稳定。 但是对于 Linux 来说,最有趣的是在这个大小和复杂性的前提下,依然有 很好的可移植性。 Linux 编译后可以在大量处理器和具有不同体系结构约束和需求的平台上运行。 这是非常重要的一点。 Android 系统也是基于 Linux 内核,只是将其优化了。 它提供诸如内存管理、进程管理、设备驱动等服务,同时也是手机软硬件的连接层,提供了一个屏蔽层用于屏蔽硬件和上层软件。 Android 开发组件 Android 开发分为四大组件,分别是:活动( Activity):用于表现功能。 服务( Service):用于后台运行服务,不提供界面呈现。 广播接收器周纬: 基于 android 的手机通讯录的设计与实现 12 (BroadcastReceiver ):用于接收广播。 内容提供商( Content Provider):支持在多个应用中存储和读取数据,相当于数据库。 Activity 组件 Android 中, Activity 是所有程序的根本,所有程序的流程都是运行在Activity 中, Activity 是 Android 当中最基本的模块之一。 在 Android 的程序当中, Activity 代表手机屏幕的一屏。 如果把手机当作浏览器,那么 Activity相当于一个网页。 在 Activity 当中可以添加一些 Button、 Check box 等控件。 可以看到 Activity 概念和网页的概念相当类。 一般一个 Android 应用由多个 Activity 组成的。 这多个 Activity 之间可以进行互相跳转,和网页跳转稍微不一样, Activity 之间的跳转有可能返回值,例如, 从 Activity A 跳转到 Activity B,那么当 Activity B 运行结束的时候,有可能会给 Activity A 一个返回值。 这样做在很多时候是相当方便的。 当打开一个新的屏幕时,原来的屏幕会成为暂停,并且进入历史堆栈中。 用户可以选择性的移除一些没有必要的屏幕,因为 Android 会把每个应用的开始到当前的每个屏幕保存在堆栈中。 Activity 在运行是会受到一些突然事件的影响,例如:你正在使用一个Activity ,突然来电话了,这时你的应用就要具备处理这些突然事件的能力,这就需要用 Activity 生命周期。 Activity 生命周期有三个状态,如图 22所示。 华东交通大学理工学院毕业设计 13 图 22 Activity生命周期 状态 一:当 Activity 在屏幕前台时,它处于激活或者运行状态。 它可以响应用户的一系列操作。 状态二:当 Activity 上面有另外一个 Activity,上面的 Activity 没有完全覆盖它,或者上面的 Activity 是透明的,这时下面的 Activity 仍然对用户可见,并且是存活状态,如果系统的内存不足时,就会使这个 Activity 灭亡。 状态三:当 Activity 完全被另一个 Activity 覆盖时,就是出于停止状态。 但是它仍然保留所有的状态和信息,对用户是不可见的。 如果其他地方需要内存,则系统会杀死这个 Activity。 Service 组件 Service 是 Android 系统中的一种组件,它不能自己运行,只能在后台运行,并且可以和其他组件进行交互。 Service 是一种程序,它可以运行很长时间,但是它却没有用户界面。 例如:打开一个音乐播放器的程序,这个时候若想上网,就打开 Android 浏览器, 这个时候虽然已经进入了浏览器这个程序,但是,歌曲播放并没有停止,而是在后台继续一首接着一首的播放。 本系统客户端扩展功能就是采用 Service 来进行设计和开发的。 周纬: 基于 android 的手机通讯录的设计与实现 14 Broadcast Receiver 组件 在 Android 中, Broadcast 是一种广泛运用在应用程序之间传输信息的机制。 BroadcastReceiver 是对发出来的 Broadcast 进行过滤接受并响应的组件。 这个组件除了接受和响应广播通知之外,什么都不做。 很多广播由系统代码产生,比如时区变化,电磁量变低,拍摄照片,或是用户改变语言首选项,都会产生广播。 应用程序本身也可以启动一个广播,比如,让其他应用程序知道,某些数据已经完成下载,可以被这些应用程序使用了。 注册 BroadcastReceiver 有两种方式。 方式一:在 进行注册。 这种方法有一个特点是即使应用程序已经关闭了,但这个BroadcastReceiver 依然会接受广播出来的对象。 方式二:在代码中注册广播,第一种俗称静态注册,第二种俗称动态注册。 动态注册比静态注册较灵活。 静态注册一个 BroadcastReceiver 时,无论应用程序是否启动。 都可以接受对应的广播。 动态注册的时候,如果不执行 unregister Receiver();方法被取消。 但如果执行这个方法,就不能接受广播。 Content Provider 组件 Content Provider 是 Android 提供的第三方应用数据的访问方案。 在 Android 中,对数据的保护是很严的,除了放在 SD 卡中的数据,一个应用的数据库、文件等内容,都不允许直接访问。 Content Provider 屏蔽了内部数据的存储细节,向外提供了上述统一的接口模型,这样的抽象层次,大大简化了上层应用的书写,也对数据的整合提供了更方便的途径。 在各大组件中,Service 和 Content Provider 都是那种需要持续访问的。 Service 如果是一个耗时的场景,往往会提供异步访问的接口,而 Content Provider 不论效率如何,都提供的是约定的同步访问接口。 使用 Content Provider 能够灵活的替换底层使用的存储设备,不用考虑底层存储设备的细节,从而使应用系统具有良好的数据。 华东交通大学理工学院毕业设计 15 3 通讯录应用的需求分析 功能需求分析 “永远不要以为,自己的需求就是用户的需求”,秉承着这个原则,按照用户的各种需求,我总结出了用户对手机通讯录的大体需求,制定出了手机通讯录的各种功能来满足广大用户的需求。 本系统根据对用户需求的分析大概总结出了本项目应该具有的功能模块。 该通讯录是一种主要记录 联系人的基于 Android 平台的软件,可以运行在Android 平台模拟器的手持设备上。 该手机通讯录软件有以下等功能 ,如图 31所示: 图 31 手机通讯录不同功能切换 ( 1)增加联系人功能:当我们进入该设计的操作界面时,点击 menu 键,底部会出来添加功能,点击了添加,我们可以录入联系人的头像、头像、姓名、手机号码、办公 室电话、家庭电话、职务职称、单位名称、地址、邮政编码、Email、其他联系方式、备注这些信息。 对联系人的一系列信息可以完整的记录。 大大方便了用户查看联系人的信息。 ( 2)删除联系人功能:选出某个联系人的名字时,可以对此人的相应数据进行删除,并自动调整后续条。 周纬: 基于 android 的手机通讯录的设计与实现 16 ( 3)修改联系人功能:选出某个联系人的名字时,可以对此人的相应数据进行修改,并且保存该联系人的新信息。 ( 4)查询功能:要求通过输入联系人的姓名或者电话号码来查询到该联系人的详细信息。 ( 5)拨号及发信息功能:当该设计显示出所有联系人的姓名时,我们可以选中某个联系人,点击 menu 键与该联系人进行通话或者发信息。 ( 6)菜单功能:点击 menu,在该设计的底部会出现菜单,包括显示所有、删除所有、号码备份功能。 性能需求分析 一个软件的功能强大,使用的用户就多。 但是,光功能强大还不足够,还需有软件的性能完善。 本设计不仅仅考虑了用户需要的功能需求,还尽可能的去满足广大用户使用该软件的感觉。 下面我来介绍下本项目的优越性能。 第一,用户界面要清晰简单,用户看着也爽快。 设计里面要操作简单明了, 方便用户操作使用,总之就是要让用户操作起来简单,看起来舒服。 第二,反应的速度要快,软件能够迅速处理用户的操作请求,如果软件不能对用户的操作快速响应,就应该出现一个提示,提示用户软件正在运行,正在处理用户的请求。 数据库需求分析 数据结构组织和数据库文件设计要根据不同用途使用要求等,来决定数据的整体组织形式等。 数据库就是存放数据的仓库,数据库中的数据按一定数据模型组织、描述和存储,具有较小的重复度、较高的数据独立性和易扩展性,并且可以被在一定范围内的各种用户共享。 Android 自带了 SQLite 数据库,是一款轻型数据库,它的设计目标是嵌入式,关于 SQLite 的数据类型,你会惊讶: Typelesssness,无类型,这意味着用户可以保存任何类型的数据,无论声明的数据类型是什么,对于 SQLite 来说都是可以用的,完全有效。 该设计完全是基于 Android 平台设计出的,执行 Java 代码。 由于整个 SQLite数据库是非可视化操作,所有对数据库的操作都是通过执行 Java 代码实现。 华东交通大学理工学院毕业设计 17 4 通讯录应用的功能设计 总体设计 项目的好坏决定于做项目的流程,要严格按照项目的流程来完成每一个步骤,这才能保证项目能否在规定时间内完成。 该设计流程大体分为:前期调 研、确定功能、编写程序代码、调试程序、运行测试、优化完善。 这样可以是该设计更加具有可用性。 该 Android 手机通讯录软件主要功能包括:添加联系人、删除联系人、修改联系人、查询联系人、菜单功能。 其中菜单功能中又包括:显示所有、删除所有、号码备份功能。 当打开联系人详细信息时,还有通讯功能。 系统功能如图41所示。 图 41 通讯录系统功能 通过图 41 可知,当用户进入通讯录主界面,可以看到联系列表,以上介绍的一系列功能全部具有,通过对通讯录的设计,满足用户随时随地地对联系人,头像及其他信息的查询。 该设计使用户操作更加简单,更加人性化,使我的通讯录更加切合用户的需求。 周纬: 基于 android 的手机通讯录的设计与实现 18 系统功能设计 随着科技的发展,智能手机的使用量越来越多,根据可靠资料显示,有超过 90%的用户使用手机通讯录功能,这大大推动了手机通讯录的加强与完善。 手机通讯录已经不仅是显示电话号码这么单一了,而是向着个性化、人性化的方向发展,大大的方便用户查看和存储 联系人的详细信息。 该通讯录主要包括以下几个内容。 ( 1)添加联系人:点击 menu,再点击通信录界面中的增加按钮,进入增加联系人界面。 输入联系人的基本信息,并可根据用户需求增加个性化信息如头像、姓名、手机号码、办公室电话、家庭电话、职务职称、单位名称、地址、邮政编码、 Email、其他联系方式、备注,单击确认返回主界面。 ( 2)删除联系人:点击联系人列表中一个已存在的联系人,进入联系人编辑界面,可进行删除联系人操作。 点击 menu 键弹出功能界面上的删除按键也可进行删除。 还可以在菜单上选择删除全部联系人来清空通讯录。 ( 3)修改联系人:点击联系人列表中一个已存在的联系人,进入联系人编辑界面,可修改联系人的资料操作,完成后退回到主界面。 ( 4)查找联系人:点击 menu 键,界面底部出现查找功能键,点击,用户可以通过姓名和电话号码对联系人进行查找。 ( 5)通讯功能:选中一个联系人,打开,然后点击 menu 键,底部会出来打电话和发信息功能。 用户可以直接和该联系人进行通讯。 ( 6)菜单功能:直接点击 menu,出现菜单功能键,选中,会出现显示所有、删除所有、号码备份、还原数据等功能。 系统数据库设计 本系统为了实现文本管 理功能,需要建立文本信息表 database,文本信息表 database 中需要包含的属性有 id, name, mobilephone, officephone,familyphone,position,pany,address,zipCode,otherContact,,rema。基于android的手机通讯录的设计与实现毕业论文(编辑修改稿)
相关推荐
e 工程副总裁的安迪 罗宾(Andy Rubin)创建于 2020 年, 2020 年被 Google 收购。 2020年 11月 5日 基于 Linux内核的软件平台和操作系统由 Google 正式发布,开启了一个新手机系统辉煌时代的开始。 同时 Google 联合了 34 家厂商并成立了 “ 开放手机联 盟 ” ,开启了 Android 发展的最初标准和加盟支持原则。 2020 年 9 月
/manifest 不难看出, name,icon,lable 这些属性就分别指 activity 的名称、图标、标识。 我们通过 manifest 描述程序的信息, Android 系统就能读取出来并产生相应的行为。 在 Android 启动某个程序之前,它得事先知道程序中有哪些组件。 因此, apk文 件 中 需 要 有 一 些 描 述 信 息 , 告 知 Android 系 统 , 这 个
中,移动设备端发送数据到无线基站,无线基站将接收到的数据发送到 GPRS/3G 网络中,由于 GPRS/3G 的特点,它们可以很方便地接入到 Inter 中,在 Ier 上,数据进行传输,发送到 Web 服务器中进行会话,并由 Web 服务器访问数 据库。 其网络结构示意图如图 31 所示。 图 31 网络结构示意图 本设计主要讲述了无线点餐系统的基本功能和基于 Android 平台的软件开发
ndroid 手机地图服务 软件 具有 极 好的实用意义。 另一方面 , Android 手机操作系统是 Google 公司 及其开放手机联盟( OHA)于 2020 年 11月 5日正式向外界展示的,是全球 第一个 专门为移动终端 的开发而打造的平台,具有免费、完整、开放的特点 [5], 这 是一个 具有划时代意义的 真正意义上的移动设备开发平台。 正是因为 其开源性 的特点 ,使得
日 20 06 年 9 月 25 日 201 0 年 2 月 26日 Helios 2020 年 6 月 23 日 2020 年 9 月 24 日 20 11 年 2 月 25日 Indi go 2020年 6 月 22日 2020年 9 月 23日 2020年 2 月 24日 J uno(预 定 ) 及 2020 年 6 月 27 日 2020 年 9 月 28 日 2020 年 2 月 22
用性和灵活性,开发周期短并且兼容性也特别高 [2]。 Linux 命令集 Linux 是一套研发出来并且免费使用,可以自由传播学习,类似于 Unix 的开源操作系统,她基于 POSIX 和 UNIX,而且可以多个用户、多个任务同时进行,并且也支持多线程和多 CPU 的操作系统。 Linux 命令是在 Linux 系统下的一套管理命令。 在 Linux 系统中, CPU、键盘的处理、内存、鼠标、磁