




已阅读5页,还剩66页未读, 继续免费阅读
(计算机软件与理论专业论文)基于android平台的即时通讯系统的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着移动通信与i n t e r n e t 的飞速发展及相互融合,g p r s 使无线 网络高速接入到i n t e m e t 成为现实,移动用户从而可以享受到i n t e m e t 提供的服务。即时通讯是基于互联网协议的应用程序,它能够使应用 不同设备的用户进行通信,随着手机的不断普及以及性能的不断提 升,为即时通讯系统从传统的p c 机到手机的移植提高了很好的条件。 而且在中国庞大的手机用户中,通过手机使用即时通讯软件的用户越 来越多。当前的手机操作系统都过于封闭,各大即时通讯软件采用的 通讯协议也不统一,而a n d r o i d 是基于l i n u x 的开源的手机操作系统 平台,x m p p 是基于x m l 的开源的即时通讯协议,因此基于a n d r o i d 平台和x m p p 协议开发即时通讯系统具有很好的应用前景。 本文首先给出了系统的研究背景,对当前手机操作系统、即时通 讯软件和即时通讯协议的发展现状做了简单的介绍。进而详细的分析 了a n d r o i d 的特征、架构以及a n d r o i d 应用的构成和工作机制,并对 a n d r o i d 与其他手机操作系统进行了比较,说明了a n d r o i d 在手机操 作系统中的优势。 本文详细的提出了系统的架构,以及系统服务器端和客户端的解 决方案,采用开源的o p e n f i r e 作为系统的即时通讯平台,实现移动客 户端之间的即时通讯。对系统客户端的组成模块进行了介绍,对即时 通讯协议x m p p 以及系统的通讯机制进行了分析。针对当前通信数 据的安全问题并结合本系统的特点,对i d e a 数据加密算法进行了改 进,提出了a i d e a 算法的设计,并对两种算法从几个方面进行了对 比分析,对于图片文件的加密,采用a i d e a 与r s a 算法相结合的 方案。对服务器的运行流程进行了分析并对系统客户端进行了详细的 设计与实现,最后对系统进行了部署和测试。 关键i :百- - - l a n d r o i d ,x m p p ,a i d e a ,o p e n f i r e ,即时通讯 a b s t r a c t w i t ht h e r a p i dd e v e l o p m e n t a n d i n t e g r a t i o n o fm o b i l e c o m r r l u n i c a t i o na n di n t e r n e t ,g p r sw i r e l e s sn e t w o r k sm a k i n gh i g h s p e e d a c c e s st ot h ei n t e m e tb e c o m e s r e a l i t ya n dm o b i l eu s e r sc a ne n jo ys e r v i c e s p r o v i d e db yi n t e r a c t i n s t a n tm e s s a g i n gi sb a s e do na p p l i c a t i o n s o f i n t e m e tp r o t o c o l ,w h i c hc a ne n a b l eu s e r st ou s ed i f f e r e n td e v i c e st o c o m m u n i c a t e a n dw i t ht h ec o n s t a n tp o p u l a r i t yo fm o b i l ep h o n e sa sw e l l a st h ec o n t i n u o u sp e r f o r m a n c ei m p r o v e m e n t ,i ti st i m ef o rr e a l t i m e c o m m u n i c a t i o ns y s t e m st ot r a n s p l a n tf r o mt h et r a d i t i o n a lp c m o b i l e a d d i t i o n a l l y , i nt h em a r k e to fc h i n a sh u g em o b i l ep h o n eu s e r s ,m o b i l e p h o n eu s e r su s i n go fi n s t a n tm e s s a g i n gs o f t w a r ei si n c r e a s i n g c u r r e n t l y , m o b i l eo p e r a t i n gs y s t e m sa ret o oc l o s e d ,a n dt h em a jo ri n s t a n tm e s s a g i n g s o f t w a r ec o m m u n i c a t i o np r o t o c o l su s e da r en o tu n i f i e d a n d r o i di sb a s e d o nt h eo p e n - s o u r c el i n u xm o b i l eo p e r a t i n gs y s t e mp l a t f o r m , a n dx m p p i sax m l - b a s e do p e n - s o u r c ei n s t a n tm e s s a g i n gp r o t o c o l ,s 0a n d r o i da n d x m p p b a s e di n s t a n tm e s s a g i n gs y s t e m sh a v eg o o da p p l i c a t i o np r o s p e c t i nt h i sp a p e r , f i r s to fa l l ,as y s t e m a t i cs t u d yo ft h eb a c k g r o u n do nt h e c u r r e n tm o b i l eo p e r a t i n gs y s t e m si si n t r o d u c e d t h e nt h es t a t e so fm o b i l e o p e r a t i n gs y s t e m , i n s t a n tm e s s a g i n gs o f t w a r e a n di n s t a n t m e s s a g i n g p r o t o c o l sd e v e l o p m e n t a r e s i m p l yd e s c r i b e d f u r t h e r m o r e ,t h e c h a r a c t e r i s t i c s ,a r c h i t e c t u r e ,c o m p o s i t i o na n dw o r k i n gm e c h a n i s mo f a n d r o i da r ea n a l y z e di nd e t a i l f i n a l l y , t h ea d v a n t a g e so fa n d r o i da r e i n s t r u c t e dt h r o u g hc o m p a r i s o nw i t ho t h e rm o b i l eo p e r a t i n gs y s t e m t h i sp a p e rp u t sf o r w a r dad e t a i l e ds y s t e ma r c h i t e c t u r ea n dt h e s o l u t i o no fs y s t e ms e r v e rs i d ea n dc l i e n t s i d e u s i n go p e n - s o u r c e o p e n f i r ea sas y s t e mo fi n s t a n tm e s s a g i n gp l a t f o r mr e a l i z e sc l i e n t s i d e 1 i i i n s t a n tm e s s a g i n g t h em o d u l ec o m p o s i t i o no ft h es y s t e mc l i e n t - s i d ei s i n t r o d u c e d ,a n d x m p pi n s t a n t m e s s a g i n gp r o t o c o l a n dt h e c o m m u n i c a t i o nm e c h a n i s mo ft h es y s t e ma lea n a l y z e d a i m e da tt h e c u r r e n ts e c u r i t yp r o b l e m so fc o m m u n i c a t i o nd a t aa n dt h ec h a r a c t e r i s t i c s o ft h es y s t e m , d a t ae n c r y p t i o na l g o r i t h mi d e ah a sb e e ni m p r o v e d ,a l s o a - i d e aa l g o r i t h mi sd e s i g n e d ,a sw e l lt w oa l g o r i t h m sa l ec o m p a r e d f r o ms e v e r a la s p e c t s f o rt h ei m a g ef i l ee n c r y p t i o n ,t h es c h e m ai st o a d o p ta - i d e aa n dr s aa l g o r i t h m sc o m b i n e d r u n n i n gp r o c e s s e so ft h e s e r v e ra l ea n a l y z e d i na d d i t i o n ,t h es y s t e mc l i e n t ss i d ei sd e s i g n e da n d r e a l i z e di nd e t a i l f i n a l l y , t h es y s t e mi sd e p l o y e da n dt e s t e d k e yw o rd s :a n d r o i d , x m p p , a i d e a ,o p e n f i r e ,i n s t a n tm e s s a g i n g i v 湖南师范大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独 立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论 文不含任何其他个人或集体已经发表或撰写过的作品成果。对本文的 研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人 完全意识到本声明的法律结果由本人承担。 学位论文作者签名:妥律矽哆年多月日 湖南师范大学学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定, 同意学校保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权湖南师范大学可以将本学位论文的 全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。 本学位论文属于 l 、保密口,在年解密后适用本授权书。 2 、不保密面 作者签名: 导师签名: 、驴f 吖月月月月 打莎q 内 框年年 方哆7舫川呷 嘲期期 眦日日 在请 夯裼 乖毛聒 更高 基丁a n d r o i d 平台的即时通讯系统的研究与实现 1 绪论 1 1 课题背景 随着移动通信的发展以及互联网向移动终端的普及,网络和用户 对移动终端的要求越来越高,而s y m b i a n ,w i n d o w sm o b i l e ,p a l m o s 等手机平台【l 】过于封闭,不能很好的满足用户的需求,因此市场迫切 需要一个开放性很强的平台。经过多年的发展,第三代数字通信( 3 g ) 技术获得了广泛的接受,它为移动终端用户带来了更快的数据传输速 率。随着3 g 网络的使用,移动终端不再仅是通讯网络的终端,还将 成为互联网的终端。因此,移动终端的应用软件和需要的服务将会有 很大的发展空间。g o o g l e 为此于2 0 0 7 年1 1 月推出了一个专为移动 设备设计的软件平台a n d r o i d 【2 】。 a n d r o i d 是一套真正意义上的开放性的移动设备综合平台,它包 括操作系统、中间件和一些关键的平台应用。a n d r o i d 是由l i n u x + j a v a 构成的开源软件,允许所有厂商和个人在其基础上进行开发。a n d r o i d 平台的开放性等特点既能促进技术( 包括平台自身) 的创新,又有助 于降低开发成本,还可以使运营商能非常方便地制定自己的特色化的 产品。因此,它具有很大的市场发展潜力。 根据中国互联网络信息中心( c n n i c ) 发布的第2 2 次中国互 联网络发展状况统计报告显示,截至2 0 0 8 年6 月底,我国网民数 量达到了2 5 3 亿,首次大幅度超过美国,网民规模跃居世界第一位, 其中手机网民达到7 3 0 5 万,手机上网成为网络接入的一个重要发展 方向。十大互联网应用中,即时通信、搜索引擎和电子邮件三大互联 网基础应用均榜上有名,使用率均超过6 0 。其中,即时通信使用率 为7 7 2 ,用户规模达到了1 9 5 亿人,半年增长了2 4 4 2 万,半年增 长率1 4 3 。说明即时通讯在网络应用中占据了十分重要的地位。 硕士学位论文 1 2 相关技术的发展现状 1 2 1 手机操作系统的发展现状 p a l mo s 3 】是一套专门为掌上电脑编写的操作系统,是一种轻量 级、比较开放的操作系统,占用的内存非常小,允许用户在其基础上 编写和修改相关软件,使支持的应用程序更加丰富多彩。p a l m 在其 它方面也还存在一些不足,如p a l m 操作系统本身不具有录音、m p 3 播放功能等,但是可以通过加入第三方软件或硬件设备来实现。其代 表性的产品有p a l mm 5 0 5 、p a l m m 5 0 0 、p a l mi i i 等。 s y m b i a n 4 是- 个实时性、多任务的纯3 2 位操作系统,具有功耗 低、内存占用少等特点,非常适合手机等移动设备使用,经过不断完 善,可以支持g p r s 、蓝牙、s y n c m l 、以及3 g 技术。 w i n d o w sm o b i l e 5 】系列操作系统是从微软计算机的w i n d o w s 操作 系统上变化而来的。w i n d o w sm o b i l e 系列操作系统功能强大,而且 支持该操作系统的智能手机大多数都采用了英特尔嵌入式处理器,主 频比较高,在其它硬件配置( 如内存、储存卡容量等) 上也比采用其 它操作系统的智能手机要高出许多,因此性能比较强劲,速度比较快。 w i n d o w sm o b i l e 系列操作系统包括s m a r t p h o n e 以及p o c k e tp cp h o n e 两种平台。p o c k e tp cp h o n e 主要用于掌上电脑型的智能手机,而 s m a r t p h o n e 则主要为手上智能手机提供操作系统。 l i n u x 系统【6 】是一个源代码开放的操作系统。由于其开源性,手 机制造商可以根据实际情况开发自己的l i n u x 手机操作系统,从而也 能够吸引更多的软件制造商在其上开发更多的应用软件,丰富第三方 的应用。但是l i n u x 操作系统也还存在一些不足,集成开发环境和基 于l i n u x 的产品与p c 的连接性比较差等。 基于a n d r o i d 平台的即时通讯系统的研究与实现 1 2 2 即时通讯软件的发展现状 据腾讯q q 【7 】官方消息,2 0 0 5 年,q q 在国内己拥有2 4 亿多的注 册用户,7 0 0 0 多万活跃用户,同时在线人数7 0 0 万以上。目前,腾 讯q q 已成为国内用户最多的个人即时通讯工具,占据着国内约6 5 以上的市场份额。并且整合移动通讯手段,可通过客户端发送信息给 手机用户。 m s n l 7 1 是微软公司开发的即时通讯工具,用户众多,操作简单, 运行稳定,且与w i n d o w sx p 实现了无缝结合,使得m s n 的普及速 度非常快,在国内即时通讯软件中稳占了第二的位置。m s n 采用邮 件地址作为用户名,实现了与邮箱之间的连接。当对方不在线时,你 可以选择给对方的m s n 邮箱或h o t m a i l 发送邮件。这样m s n 就不仅 是一个简单的即时通讯软件,而演变为以m s n 为中心的整合服务。 p o p o 7 是由网易公司开发的一款免费多媒体即时通讯工具,融 合了q q 与m s n 的优点,解决安全与隐私问题的功能非常完善,特 别是好友的权限设置功能,优于其他即时通讯软件。并可与移动通讯 终端等多种通讯方式相连。p o p o 还支持用户同时登录一个m s n 账 户,实现了与m s n 的互通互联。 i c q 7 】是1 9 9 6 年11 月在全世界范围推出的第一款即时通讯软件, 是现在功能最强大、全球用户最多、应用最广泛的即时通讯工具。但 由于它的操作和设置比较复杂,再加上全英文的聊天界面,使许多中 国用户对它望而生畏,在中国市场上所占份额逐渐萎缩。近期,就在 其他同行纷纷通过增加功能来吸引用户时,i c q 反而推出了功能精简 版的i c q l i t e ,试图在中国市场东山再起。 1 2 - 3 即时通讯协议的发展现状 目前主流的i m ( i n s t a n tm e s s a g i n g ) 协议主要有即时信息和空间协 硕+ 学位论文 议( i m p p ) 【8 】、空间和即时信息协议( p r i m ) 【8 1 、针对即时通讯和空间平 衡扩充的进程开始协议s i p ( s i m p l e ) 隅】和x m p p ( e x t e n s i b l e m e s a g e i n ga n dp r e s e n c ep r o t o c 0 1 ) 嗍协议。 i m p p 主要定义必要的协议和数据格式,用来构建一个具有空间 接收和发布能力的即时信息系统。到目前为止,这个组织已经出版了 三个草案r f c ,但主要的有两个:一个针对站点空间和即时通讯模型 的( r f c2 7 7 8 ) 和一个针对即时通讯空间协议需求条件的( r f c 2 7 7 9 ) 。 s i m p l e 是目前为止制定的比较完善的一个,符合r f c 2 7 7 8 和 i c 2 7 7 9 草案。s i m p l e 被定义为建立一个i m 进程的方法。s i m p l e 使用s i p ( i e t f 中为终端制定的协议) 来建立一次进程,再利用s d p ( 进程描述协议) 来实际传输i m 数据。 p r i m 与x m p p 、s i m p l e 类似,已经不再使用了。 x m p p ( e x t e n s i b l em e s s a g e i n ga n dp r e s e n c ep r o t o c o l :可扩展消息 与存在协议) 。符合r f c 2 7 7 8 和r f c 2 7 7 9 草案。x m p p 是一种基于 x m l 的协议,它继承了x m l 环境中灵活的扩展性。经过扩展以后 的x m p p 允许通过发送扩展的信息来处理用户的需求,以及在x m p p 的顶端建立如内容发布系统和基于地址的服务等应用程序,而且 x m p p 还包含了针对服务器的软件协议,实现了在不同服务器之间的 通话。 1 3 本文主要工作 a n d r o i d 是基于l i n u x + j a v a 的手机操作系统平台,x m p p 是基于 x m l 的开源的即时通讯协议,本文从实际应用出来,提出了开发基 于a n d r o i d 平台的手机即时通讯系统。本文的主要工作包括: ( 1 ) 在本系统所采用的a n d r o i d1 0 平台上没有提供x m p p s e r v i c e 这个组件的情况下,我们根据x m p p 协议的规则,利用该平台为我 们提供的x m l 解析包对x m l 消息进行解析,并对该系统进行了具 基于a n d r o i d 平台的即时通讯系统的研究与实现 体的设计和实现。本系统除了即时文本信息的传输外,还可以进行图 片的传输,并对系统客户端的功能进行了扩展,增加了音乐播放和图 片浏览的功能。并且该系统在a n d r o i d 模拟器上运行,取得了很好的 运行效果。 ( 2 ) 针对通信数据的安全问题并根据系统的特点,对i d e a 数据加 密算法进行了改进,提出了a i d e a 算法的设计,并对两种算法进行 了比较分析,得出改进的算法a i d e a 更适合运用于本系统。对于图 片的加密,我们采用a i d e a 与r s a 算法相结合的方案,进一步确 保图片文件传输的安全。 1 4 论文组织结构 本文首先分析了系统的研究背景,介绍了当前手机操作系统、即 时通讯软件的发展现状和即时通讯协议,以及本文的主要内容。 第二章,介绍了a n d r o i d 的特征、a n d r o i d 的架构以及a n d r o i d 应用的构成和工作机制,并对a n d r o i d 与其它手机操作系统进行了比 较,说明了a n d r o i d 的优势。 第三章,提出了在a n d r o i d 平台上开发基于x m p p 协议的即时通 讯系统,提出了系统的架构、系统服务器端和客户端的解决方案,对 系统采用的即时通讯协议x m p p 以及系统的通讯机制进行了分析。 第四章,对i d e a 数据加密算法进行了简单的介绍,并根据系统 的特点,对i d e a 算法进行了改进,提出了a i d e a 算法的设计,并 对i d e a 与a i d e a 算法进行了对比分析,对于图片的传输,我们采 用a i d e a 与r s a 算法相结合的方式对图片进行加密,确保图片传 输的安全。 第五章,对系统服务器端的运行流程进行了详细的分析,对 a n d r o i d 客户端从客户端页面,客户端数据库,x m l 解析模块加解密 模块,即时通讯模块和客户端扩展功能几个方面进行了详细的设计与 硕士学位论文 实现,最后对系统的即时通讯流程进行了描述。 第六章,对系统进行了部署和从系统注册登录、获取好友和群组 列表、消息的发送和接收、图片的发送和接收以及音乐的播放和图片 的浏览几个方面进行了测试。 第七章,总结了本文的主要研究内容和研究成果,分析了存在的 问题,并对今后的发展方向进行了展望。 基于a n d r o i d 平台的即时通讯系统的研究与实现 2 a n dr oid 的架构分析 a n d r o i d 是一个移动设备的软件平台,是由l i n u x + j a v a 构成的开 源软件,它提供包括s d k 、k e ya p p s 、m i d d l e w a r e 、l i n u xk e r n e l 四 个部分在内的全套手机软件方案。它开放了基于l i n u x 内核【9 】以上的 开发工具,从而保证了内容的可移植性和多样性。a n d r o i d 平台为我 们开发应用程序提供了一套很好的框架,我们可以在这个平台的基础 上开发不同的应用程序,也可以开发新的组件供应用程序调用。 2 1a n d r o i d 特征 应用框架【1 8 】:用于开发可重用可替代的组件。 d a l v i k 虚拟机【1o 】:a n d r o i d 采用的j a v a 虚拟机是自主开发的代号 为d a l v i k 的虚拟机技术,在保证a p i 方面兼容的同时d a l v i k 针对移 动手机进行了大幅优化,占用资源更小,运行效率更高。 内嵌浏览器:基于开源的浏览器网页排版引擎w e b k i t 】。 优化的图形:强大的自定义二维图形库。基于o p e n g le s1 o 【1 2 】 标准的3 d 图形功能,在移动3 d 开发中有着至关重要的地位。 s q l i t e 数据库:s q l i t e t l 3 】提供结构化的数据存储。它是一款轻型 免费的且开源的数据库,它的设计目标是嵌入式的,它占用的资源非 常低、需要的内存空间少、处理速度比较快和支持事务处理功能等。 多媒体支持:支持各种通用的音视频和静态图像格式,如m p 3 、 j p g 、p n g 等。o p e nc o r e 1 4 】是a n d r o i d 多媒体框架的核心,所有 a n d r o i d 平台的音视频采集,播放的操作都是通过它来实现的。通过 o p e nc o r e ,程序员可以方便快速的开发出想要的多媒体应用程序。 g s m 技术【l5 】:( 依赖硬件) g l o b a ls y s t e mf o rm o b i l e c o m m u n i c a t i o n s ,全球移动通讯系统,俗称“全球通”,是第二代移 颤1 一学位论文 动通信技术,其开发e l 的是让伞球各地可以共同使用一个移动电话网 络标准,让用户使_ i j 一部手机就能行遍全球。 蓝牙,e d g e ,3 g , a n dw i f i 1 6 1 :( 依赖碗4 t :) 黼牙和w l f i 部是一种 短距离的无线连接技术,在短距离内可以实现话音和数据的无线传 输。e d g e ( e n h a i l c e dd a t ar a t ef o rg s me v o l u t i o n ) ,是增强型数据速 率g s m 演进技术。 c a m e r a ,g p s ,c o m p a s s ,a n da c c e l e r o m e t e r :( 依赖硬件) g p s ( g l o b a l p o s i t i o n i n gs y s t e m ) i t t i 驯全球定位系统。它是一个由覆盖全球的2 4 颗1 j 星组成的卫星系统。c o m p a s s 是个开放源代码的j a v a 搜索引 擎框架。 强大的开发环境:包括一个设备模拟器,调试_ t 具,内存和性能 检测,以及e c l i p s e i d e 的开发插件。e c l i p s e 足个集成开发环境。 2 2a n d r o i d 架构 a n d r o i d 的架构i t 8 - 1 9 1 是山l i n u x 内核、c c + + 函数库、d a l v i k 虚拟 机、应用框架以及关键应用程序构成的。通过编译基于框架的应用程 序可以降低开发负荷。应用软件原则上是在d a l v i kv m 上运行的。 图2 - 1 a n d r o i d 架构 基于a n d r o i d 平台的即时通讯系统的研究与实现 2 2 1 关键应用程序 a n d r o i d 平台内包含一些关键应用程序,如邮件收发客户端程序、 短信收发程序、日历和网页浏览器等,开发者可以在其平台上开发更 多有特色的应用程序。开发语言是j a v a 。 2 2 2 应用程序框架 a n d r o i d 应用程序的开发基于框架和组件。a n d r o i d 本身已在其 框架中提高了许多的组件供应用程序调用,当然开发者也开放新的组 件,并将组件放入应用程序框架中,以供自己和其它应用程序调用。 2 2 3c c + + 函数库 a n d r o i d 应用程序框架之下是一套c c + + 函数库,它们服务于 a n d r o i d 应用程序组件,其功能通过组件间接提供给开发者。这些函 数库包括:标准c 函数库、媒体功能库、浏览器引擎、2 d 和3 d 图 形库、基于w e b 应用的的安全协议s s l 、用于点阵和矢量字体渲染 的f r e e t y p e 以及s q l i t e 引擎等。 2 2 4j a v a 程序运行环境 a n d r o i d 的j a v a 程序运行环境包含一组j a v a 核心函数库及d a l v i k 虚拟机,它们有效地优化了j a v a 程序的运行过程。所有的a n d r o i d 应用都运行在它自己的进程里,该进程是一个d a l v i k 虚拟机的实例, d a l v i k 被设计成能在一台设备上高效的运行多个虚拟机实例。d a l v i k 虚拟机的可执行文件被封装成d a l v i k 可执行格式( d e x ) 。这是被优 化过的最小内存依赖的格式,j a v a 编译器( d x 工具) 将注册了的和运 行时用到的类编译成d e x 格式。d a l v i k 虚拟机依赖于底层l i n u x 内核 提供的功能,如线程机制,和内存管理机制等。 硕士学位论文 2 2 5l i n u x 内核 a n d r o i d 系统平台是基于优化了的l i n u x 内核,是其系统平台的 核心。它提供诸如内存管理、进程管理、设备驱动等服务,同时也是 手机软硬件的连接层,提供了一个屏蔽层用于屏蔽硬件和上层软件。 2 3a n d r o i d 应用的构成和工作机制 对于一个a n d r o i d 应用程序 2 0 之2 】来说,是由a c t i v i t y 、i n t e n t r e c e i v e r 、s e r v i c e 、c o n t e n tp r o v i d e r 四部分组成,但并不是每一个 a n d r o i d 应用程序都必须由这四部分组成。在应用程序中使用时,需 要在配置文件a n d r o i d m a i n f e s t x m l 中进行配置。这个配置文件是每 个a n d r o i d 应用程序所必需的,用于定义应用程序的组件、组件的功 能以及必要条件等。a n d r o i d 应用的构成和工作流程图如下: 2 3 1a c t i v i t y 图2 - 2a n d r o i d 的构成和工作流程 a c t i v i t y 2 3 1 是构成应用程序中最重要的构造块,在a n d r o i d 应用 程序中,几乎都是通过a c t i v i t y 来与用户进行交互,所以a c t i v i t y 主 要负责的就是创建与用户进行交互的显示窗口,你可以在这些窗口里 通过调用s e t c o n t e n t v i e w ( v i e w ) 方法来显示你自己的用户界面。 基- pa n d r o i d 平台的即时通讯系统的研究与实现 2 3 1 1 活动生命周期 活动( a c t i v i t y ) 在系统中以活动栈的形式进行管理。当一个新的活 动启动后,它被放到了栈项,成为了运行活动,而新活动之前的活动 在活动栈里总位于新活动之下,直到新的活动退出才重新回到前台。 图2 3a c t i v i t y 状态变换路径图 从上图可以看出,a c t i v i t y 有三个关键的循环: ( 1 ) 活动的整个生命期:从首次调用o n c r e a t e ( b u n d l e ) 开始,到最 终调用o n d e s t r o y o 结束。在o n c r e a t e ( ) 中进行所有初始化,在 o n d e s t r o y o 时进行清理工作,释放资源。 ( 2 ) 活动的可见生命期:从调用o n s t a r t 0 开始,到o n s t o p o 被调用 为止。在这段时间内,即使活动不与用户进行交互,用户也可以在屏 幕上看到它。在这两个方法调用之间,可以维护活动显示给用户的资 源。o n s t a r t 0 和o n s t o p o 方法可以多次调用,因为活动随时可以在可 见和隐藏之间进行转换。 ( 3 ) 活动的后台生命期:从调用o n r e s u m e o 开始,到o n p a u s e o 被调用为止。在这段时间内活动处于其它所有活动之前,并与用户进 硕士学位论文 行交互。一个活动可以不断在r e s u m e d 状态和p a u s e d 状态之间变换。 2 3 1 2 活动之间的切换 a n d r o i d 使用了i n t e n t 类来实现活动之间的切换工作。i n t e n t 负责 对应用中一次操作的动作、动作涉及的数据和附加数据进行描述。根 据i n t e n t 的描述,负责找到对应的组件,将i n t e n t 传递给调用的组件 并完成组件的调用。因此,i n t e n t 起着一种媒体中介的作用,专门提 供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。 在应用中,我们可以以两种形式来使用i n t e n t :直接i n t e n t ,指定 了c o m p o n e n t 属性的i n t e n t ,通过指定具体的组件类,通知应用启动 对应的组件。间接i n t e n t ,没有指定c o m o n e n t 属性的i n t e n t ,则需要 包含足够的信息,这样系统才能根据这些信息,在所有的可用组件中, 确定满足此i n t e n t 的组件。 2 3 2i n t e n tr e c e i v e r i n t e n tr e c e i v e r t 2 0 】是用于对外部事件的响应,当外部事件发生时, 会使用n o t i f i c a t i o n m a n a g e r 通知用户。当一个i n t e n tr e c e i v e r 被触发 时,系统会在需要的时候启动对应的应用程序。如在本系统中,当用 户正在其它界面进行操作时,有好友发送消息过来,就会以通知的形 式发送到当前界面的正上方来通知用户。各种应用还可以通过使用 c o n t e x t b r o a d c a s t i n t e n t ( ) 将它们的i n t e n tr e c e i v e r 广播给其它的应用程 序,实现应用之间的通讯。 2 3 3s e r v i c e s e r v i c e 是不带i j i 提供连续信息的应用程序。它是运行于应用程 序后台的服务,在用户进行其它活动的时候,这个服务将一直运行在 基于a m d r o i d 平台的即时通讯系统的研究与实现 后台直到用户停止该服务或服务运行结束。本系统客户端扩展功能的 音乐播放就是采用s e r v i c e 来进行设计和开发的,使用户可以边聊天 边听音乐。 2 3 4c o n t e n tp r o v i d e r c o n t e n tp r o v i d e r 应用程序能够将它们的数据保存到文件、s q l 数据库和其它的存储设备中。当应用程序需要使用存储设备中的数据 时,可以使用c o n t e n tp r o v i d e r 来完成。使用c o n t e n tp r o v i d e r 能够灵 活的替换底层使用的存储设备,使开发者可以专著于应用逻辑的开 发,不用考虑底层存储设备的细节,从而使应用系统具有良好的数据 迁移性。 2 4a n d r o i d 与其它手机操作系统的比较 我们主要从手机操作系统的p o r t a b l i t y 、r e l i a b i l i t y 、c o n n e c t i v i t y 、 p r o d u c td i v e r s i t y ,o p e np l a t f o r m 、k e m e ls i z e ,s t a n d a r d s ,s e c u r i t y 和s p e c i a lf e a t u r e s 这九个方面进行了比较,具体的比较结果如下表: 表2 1 手机操作系统对照表 比较条件 a n d r o i dw i n d o w sm o b i l e s y m b i a n 基于l i n u x + j a v a ,可以运行于不同基于标准的架构, p o r t a b i l i t y具有跨平台的特的平台,但是有些对其他制造商的软 点,并允许所有厂应用程序依赖于件开放,但是 商和个人在其基础特点的硬件平台s y m b i a n 大部分应 上进行开发用于特定的手机上 r e l i a b i l i t y 好好好 g s mt el e p h o n y ,g s m t e l e p h o n y , g s m t e l e p h o n y , c o n n e c t i v i t y e d g ew i - f iw i - f i b l u e t o o t h ,3 d ,w i b l u e t o o t h ,i n f r ab l u e t o o t h ,i n f r a r f i r e d ,e d , 积极参与软件的发积极参与软件的积极参与软件的发 p r o d u c t展和帮助扩展操作发展和帮助扩展展和帮助扩展操作 d i v e r s i t y系统,使相关的产操作系统,使相关 系统,使相关的产 品对市场开放的产品对市场开品对市场开放 放 硕士学位论文 o p e np l a tf o r m 开放过于封闭过于封闭 k e r n e l s i z e2 5 0 k b3 0 0 k b2 0 0 k b 好,基于j a v a ,具有 s t a n d a r d s跨平台的特点,具比较好 比较好 有很大的优势 s e c u r it y好好好 开源的w e b k i t 引在计算机市场占 s p e c i a l擎,优化的d a l v i k有优越的地位,在无 f e a t u r e s计算机和手机之 间同步比较容易 文献 1 0 对上表比较的九项每一项以1 分、o 5 分、0 分三个级别 来进行评分,综合各项评分,最后得到的评分结果是a n d r o i d8 5 分, w i n d o w sm o b i l e5 5 分,s y m b i a n6 5 分。a n d r o i d 基于开源的l i n u x 以及标准的跨平台的编程语言j a v a ,而且源代码开放,并且免费允许 所有厂商和个人在其基础上进行开发,其开源和免费政策将赢得不好 手机制造商的支持。而且在其平台上集成了不少优秀的开源工程,如 w e b k i t 、o p e n g l 等,相信在不久,将会有更多的优秀工程加入到 a n d r o i d 中来。相比其它手机操作系统过于封闭的特性来说,a n d r o i d 在手机操作领域将会占有很大的优势,其功能也将会越来越强大。 本章对a n d r o i d 平台的特征、架构以及a n d r o i d 应用的构成和工 作机制进行了详细的分析。对于a n d r o i d 应用程序来说,主要由 a c t i v i t y 、i n t e n tr e c e i v e r 、s e r v i c e 和c o n t e n tp r o v i d e r 四部分组成,但 并不是对于每一个应用程序,这四部分都是必须的。a c t i v i t y 是应用 程序中最重要的一种构造块,我们对其进行了详细的分析,包括 a c t i v i t y 的生命周期以及a c t i v i t y 之间的切换。最后对a n d r o i d 与其它 的手机操作系统从九个方面进行了比较,说明了a n d r o i d 的优势。 基于a n d r o i d 平台的即时通讯系统的研究与实现 3 基于a n d r oid 平台的手机即时通讯系统 本章我们介绍了系统的总体框架及相关解决方案。系统采用c s 体系结构【刎【2 5 1 ,采用开源的x m p p 作为即时通讯协议,通过g p r s 无线网络采用t c p 协议连接到服务器,通过架设开源的o p e n f i r e 服 务器作为即时通讯平台,实现客户端与客户端之间的即时通讯。 3 1 系统概述 本文工作中实现的是在a n d r o i d 平台上开发即时手机通讯系 统 2 7 - 3 2 】,它能够使用户在手机上方便的、迅捷的收发及时消息、传 输图片。现今流行的即时通讯软件,在聊天的基础之上开发了很多的 增值服务功能,以满足不同用户的需求。根据这些特点,本系统除了 及时文本消息和图片的传输外,还实现了音乐播放和图片浏览的功 能,让用户可以边聊天边听音乐,可以对好友传送过来的图片随时进 行浏览,从而实现即时通讯系统的功能多样化。 3 2 系统架构 本系统采用客户端( c ) 服务端( s ) 架构的体系结构,具有服 务器端和客户端。 客户端:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教师招聘之《小学教师招聘》通关试卷提供答案解析附完整答案详解(名师系列)
- 2024秋八年级物理上册 第3章 光现象 第五节 光的反射说课稿(新版)苏科版
- 陕西省蓝田县高中历史 第三单元 近代西方资本主义政体的建立 第8课 英国的制度创新说课稿2 岳麓版必修1
- 个人租房标准典合同4篇
- 戏曲作品使用许可合同书6篇
- 桥梁工程深造方案(3篇)
- 上海市二手车购买合同范文3篇
- 铺贴工程定制方案(3篇)
- 漂流工程塑形方案(3篇)
- 二手房抵押委托贷款合同5篇
- 山东省海洋知识竞赛(小学组)考试题库大全-上(单选题汇总)
- 西式面点技术PPT完整全套教学课件
- 委托进口代理合同
- 一篇入门EPC总承包项目的税务筹划
- 宝安区人民医院药品目录西药
- 满堂脚手架计算书
- 【大单元教学】微专题 牛顿运动定律 课时 省赛获奖
- 岳阳楼记翻译
- 广告策划与创意课件改
- (完整word版)理论力学答案(谢传峰版)
- 中国产业结构与布局的历史演变
评论
0/150
提交评论