0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Android平台的特性及如何利用其实现简易即时通讯的设计

电子设计 来源:郭婷 作者:电子设计 2019-07-26 08:08 次阅读

1 Android平台简介

Android是Google公司于2007年11月5日推出的手机操作系统,经过2年多的发展,Android平台在智能移动领域占有不小的份额,由Google为首的40多家移动通信领域的领军企业组成开放手机联盟(OHA)。Google与运营商、设备制造商、开发商和其他第三方结成深层次的合作伙伴关系,希望通过建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统。正因如此,Android正在被越来越多的开发者和使用者所接受。近日,Google发言人Anthony House称,截止到2010年4月15 Lt,An droid Market已经有3.8万多个应用程序。

2 Android平台特性与即时通讯的研究

Android平台框架共由5部分组成。底层核心是基于Linux 2.6内核开发的独立操作系统,该层用来提供系统的底层服务,包括安全机制、内存管理、进程管理、网络堆栈及一系列的驱动模块。中间是Android执行环境,包括系统运行库、Dalvik虚拟机、核心库和一些C/C++库等支持Android使用的各个组件。应用层框架是开发人员使用这些API框架来开发自己的应用,简化了应用程序开发的架构设计。应用层程序是用Java语言编写的运行在虚拟机上的程序 。整个Android平台框架如图1所示。

Android平台的特性及如何利用其实现简易即时通讯的设计

即时通讯(IM)是一个终端连往一个即时通讯网路的服务。即时通讯与e-mail的不同在于它的交谈是即时的。大部分的即时通讯服务提供了在线提醒的特性——显示联络人名单,联络人是否在线,能否与联络人交谈等。近几年即时通讯发展特别迅速,即时通讯的功能日益丰富,由PC客户端发展到移动客户端,逐渐发展成一个综合化信息平台,国内市场上知名的即时通讯工具有腾讯QQ,新浪UC,中国移动飞信等,但这些产品都有着很严重的安全威胁,如ID被盗、隐私威胁、病毒威胁等。为了减小这些威胁,可以在企业内部开发自己的即时通讯软件,减少为未知用户带来的威胁。

3 简易即时通讯功能及设计

3.1 简易通讯的功能

本设计实现了在Android平台上开发即时手机通讯系统,它能够使用户在手机客户端上登录服务器,方便、迅捷地收发即时消息。随着研究的深入,可以在该系统上实现图片的传输和接收,以及其他一些功能,这样可以使该系统功能更加多样化。

3.2 简易通讯系统框架介绍

通讯系统架构采用C/S模式,即客户端/服务器的体系结构。客户端是基于Android平台进行开发,通过3G 网络与Internet建立连接,通过服务器实现Android客户端之间的即时通讯。客户端负责初始化通信过程,进行即时通讯时,由客户端负责向服务器端发起连接请求。服务器端采用开源的Openfire 作为服务器,允许多个客户端同时登录,并且同时连接到一个服务器上。服务器对每个客户端进行认证,对认证通过的客户端创建会话,实现客户端与客户端之间的通讯。

3.3 客户端的解决方案

系统的客户端定位于Android平台的手机,采用SIMPLE 协议作为即时通讯协议,SIMPLE(SIP for Instant Messaging and Presence Levera—ging Extensions)是SIP(Session Initiation Proto—co1)的扩展,它为SIP协议制定了一整套的架构和扩展方面的规范,用于支持IM。SIMPLE通过SIP来传递状态信息和实现分布的信息表示。根据协议规则,采用Android平台提供的XML解析包对XML进行解析。根据Activity模块运行于主线程的特点,采用多线程 技术来解决系统通信问题。系统的用户信息和聊天信息存储在An—droid平台自身所带的SQLite数据库中。客户端功能模块如图2所示。

Android平台的特性及如何利用其实现简易即时通讯的设计

3.4 服务器端解决方案

系统服务器端采用开源的Openfire来建立即时通信服务器。Openfire采用Java语言进行开发,Java语言具有跨平台的特点,因此Openfire服务器可以架设于多种操作系统平台上。Openfire服务器的内核主要由服务器连接管理组件、会话管理组件、数据存储组件和传输器组件等组成。

Openfire实现了插件机制,方便扩展,通过安装与异构网络通讯的插件,便能与其他的通讯软件实现通讯。在网络连接中采用Apache的Mina框架来实现网络连接,Mina框架使用非阻塞式的高性能I/O底层,采用异步I/O事件和事件驱动机制,使服务器具有很高的效率和性能,从而能够及时处理大量的客户端连接事件和VO 随机事件,单台服务器可支持上万个并发用户。服务器与客户端的连接示意图如图3所示。

Android平台的特性及如何利用其实现简易即时通讯的设计

3.5 通信系统结构

随着移动通信与Internet的飞速发展及其相互融合,3G无线网络使无线网络高速接入Inter—net成为现实,从而移动客户端可以接入到Inter—net的服务。系统客户终端通过3G无线网络采用TCP协议连接到服务器,通过SIMPLE即时通讯协议进行及时通讯。

在移动网络中,移动终端接人到3G无线网络。

网关移动交换中心GMSC(Gateway Mobile Swim—hing Center)为用户提供分组路由、隧道和跟踪移动终端的位置等功能。UMTS(Universal Mobile Tele—communications System)提供3G网络内部与外部网络的路由和封装,分配TP地址,实现与Intemet网络的互通。通信系统结构示意图如图4所示。

Android平台的特性及如何利用其实现简易即时通讯的设计

3.6 系统工作流程

服务器对用户输入的用户名和密码进行身份验证,验证成功后,客户端从服务器端读取客户端的个人信息,并更新好友列表和群组信息,服务器端响应客户端的各种请求,客户端可发送接收信息,通讯完毕退出系统登录状态。这样,一个简易即时通讯系统便实现了。图5是认证流程示意图。客户端软件使用Java和XML语言在eclipse集成开发环境中开发,基于Andriod 1.5模拟器开发的用户登录界面如图6所示。

Android平台的特性及如何利用其实现简易即时通讯的设计

Android平台的特性及如何利用其实现简易即时通讯的设计

4 结语

该设计主要讨论了基于Android平台的简易即时通讯系统,研究了在开源服务器Openfire上各个移动客户端和服务器之间的通信系统结构,实现了客户端功能。随着研究的进一步深入,基于An .droid的通讯系统会逐渐完善,相信基于Android平台的即时通信系统会有着很好的应用前景。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 手机
    +关注

    关注

    35

    文章

    6853

    浏览量

    157441
  • Android
    +关注

    关注

    12

    文章

    3926

    浏览量

    127161
  • 操作系统
    +关注

    关注

    37

    文章

    6747

    浏览量

    123204
收藏 人收藏

    评论

    相关推荐

    手机对讲即时通讯系统

    传送语音、文字、图片等多种内容,可以进行一对一、一对多、多对多的通信和信息发布。一、IP集群调度系统功能可实现即时通讯、POC(PTT)功能: 即时通讯 群组大文本传输 大文本通知信息 单机状态显示
    发表于 07-28 22:22

    即时通讯软件哪家好?企业即时通讯怎么选择?

    云部署:支持企业私有化部署、双重数据传输加密技术保障企业信息安全imo云办公室拥有专业的技术团队,为企业量身定制即时通讯解决方案,降低企业通信成本;提高员工办公、沟通效率,实现团队紧密协作;为企业的核心商业信息提供坚实的保障。 了解更多详情:软件试用咨询:021-6628
    发表于 08-09 15:16

    采用局域网实现简易即时通讯软件

    首先呢,得了解,既然是能实现局域网的即时通讯,就必定是有服务器和客户端的,是基于C/S结构的。当时想的是为易于后期维护所以用了三层架构编写。开发软件用的是Microsoft Visual
    发表于 07-19 08:06

    即时通讯是怎么做到的?

    作者:luluhulian即时通讯(Instant Messenger,简称IM)软件多是基于TCP/IP和UDP进行通讯的,TCP/IP和UDP都是建立在更低层的IP协议上的两种通讯传输协议。前
    发表于 01-21 10:41

    请问树莓派与PC端在局域网内如何运用python实现即时通讯

    请问树莓派与PC端在局域网内如何运用python实现即时通讯
    发表于 09-18 08:40

    玩转OpenHarmony社交场景:即时通讯平台

    地传递文字、图片、文件、语音、emoji等讯息,可应用于各类聊天场景,为人们带来更加及时高效的通讯体验。此外即时通讯平台具备较高的定制化特点,适用于多种行业,客户可以根据自己的需求来定制,实现
    发表于 01-03 15:46

    Lotus即时通讯工具将与雅虎Google实现互通

        1月24日消息,根据达成的交易,IBM公司Lotus Sametime即时通讯服务的用户将能够与AOL、雅虎的即时通讯用户“交谈”。
    发表于 03-07 20:47 801次阅读

    即时通讯详解

    即时通讯详解1. 引言 2. 即时通讯背景知识
    发表于 08-05 09:55 3044次阅读

    Android平台简易即时通讯方案

    论文简单介绍Android平台特性,主要阐述了基于Android平台简易
    发表于 02-21 10:27 5136次阅读
    <b class='flag-5'>Android</b><b class='flag-5'>平台</b><b class='flag-5'>简易</b><b class='flag-5'>即时通讯</b>方案

    环信即时通讯

    Android环信即时通讯。。。。。。。。。。。。。。。。
    发表于 05-17 16:41 1次下载

    区块链即时通讯系统开发,区块链直播聊天平台开发

    区块链即时通讯系统开发,区块链直播聊天平台开发数字资产交易所模式和玩法还是那样,法币OTC交易所,币币撮合交易所,但是最近也是有一个模式比较新颖,那就是数字资产抵押平台,这个模式还是比较有市场
    发表于 05-30 20:24 598次阅读

    区块链IM即时通讯系统开发技术

    决这一现状我们开发了一款区块链IM即时通讯系统,IM即时通讯系统主要是有直播、对接交易所、空间、商城等各种管理应用,一站式进行数字资产交易管理的即时通讯平台。 区块链IM
    发表于 06-07 15:46 2935次阅读

    企业为什么需要即时通讯,它会带来哪些优势

    自己再与同事相互添加个人账号,像企业即时通讯只需企业管理员在后台设置,所有的人员变动都会同步更新到所有员工账号的通讯列表。 层级关系、电子名片、以及员工招聘都可一目了然,有助于企业内部实现互联互通。 例如员工根
    发表于 07-19 10:51 1290次阅读

    拳头产品|海泰虎讯,新一代安全即时通讯系统

    即时通讯系统是目前互联网上最为流行的通信方式,各种各样的即时通讯软件也层出不穷。随着移动办公的快速普及,即时通讯软件在移动办公中得到越来越广泛的应用,已经成为日常办公软件的一部分。
    的头像 发表于 11-01 08:57 605次阅读

    玩转OpenHarmony社交场景:即时通讯平台

    ,可应用于各类聊天场景,为人们带来更加及时高效的通讯体验。 此外即时通讯平台具备较高的定制化特点,适用于多种行业,客户可以根据自己的需求来
    的头像 发表于 01-01 08:05 948次阅读