本发明涉及适配国产多模通信终端上移动操作系统的多模通信技术,具体涉及一种基于麒麟移动操作系统的多模通信实现方法及装置。
背景技术:
麒麟移动操作系统是国防科技大学研制的移动终端操作系统,使用linux内核和浏览器引擎搭建而成的运行环境,可为开发者提供基于web封装的硬件访问接口和系统服务接口,可在其上快速敏捷开发出基于web接口扩展的可用性高、流畅性高的应用。
随着通信网络的发展,通信网络的类型也在变得多种多样,目前典型的有以天通卫星为代表的卫星通信网络,以自组网技术为代表的自建局部范围通信网络和某些专用频段的lte通信网络。为了应对如战术环境、户外环境、抗干扰环境等不同场景的使用需求,融合多类型通信网络的应用场景在不断增加,但现有的主流通用移动操作系统(如安卓系统、苹果系统等)主要面对民用领域,也不能直接适配包含多模通信模块硬件的物理终端设备,故不支持在特殊应用场景下使用多类型通信网络的需求。总的来看,目前市面上支持多模通信终端的移动操作系统还相当匮乏。在麒麟移动操作系统上已经实现了对普通移动通信模块的适配,但尚未适配多模通信模块,需要进一步设计、适配和开发多模通信相关驱动、协议和应用功能,以支撑系统在特殊环境下依然具备通信能力。
技术实现要素:
本发明要解决的技术问题:针对现有技术的上述问题,提供一种基于麒麟移动操作系统的多模通信实现方法及装置,本发明能够实现麒麟移动操作系统的多模通信,实现对多模通信终端设备的支持,使其能够正常进行多类型通信网络的连接、运行和应用。
为了解决上述技术问题,本发明采用的技术方案为:
一种基于麒麟移动操作系统的多模通信实现方法,其特征在于,包括:
在应用层开发使用多模通信业务的应用功能,处理与使用多模通信业务的应用功能交互产生的多种请求/响应类型数据,利用多模通信接口将数据向下传递到中间层多模通信协议处理框架;
在中间层多模通信协议处理框架上扩展出通话管理服务和im服务,封装多模通信的webapi接口,对从应用层到硬件层的数据基于多模通信协议约定进行计算解析封装,以及以事件模型方式获取硬件层到应用层的数据并基于多模通信协议约定进行计算解析封装;
在硬件层多模通信驱动中处理与硬件之间的数据收发,与多模通信协议处理框架之间的数据包透传。
可选地,所述在应用层开发使用多模通信业务的应用功能具体是指基于html、javascript、css构建应用功能的用户交互界面,接收处理用户操作,并调用多模通信接口功能。
可选地,所述中间层多模通信协议处理框架用于提供应用层多模通信编程接口,解析计算和封装与硬件层之间的多模通信数据包,实现多模通信具体业务逻辑。
可选地,所述硬件层多模通信驱动分别包括天通卫星通信模块、无线自组网通信模块、lte宽带网通信模块中的部分或全部通信模块对应的驱动,所述硬件层多模通信驱动提供与中间层多模通信协议处理框架之间的输入输出接口。
可选地,所述在中间层多模通信协议处理框架上扩展出通话管理服务和im服务时,扩展出的通话管理服务用于根据多模通信网络环境、用户自主通信模式选择来完成相对应的通话调用,所述多模通信网络环境包括卫星通信模式、自组网通信模式、lte通信模式中的部分或全部,所述用户自主通信模式包括卫星通信模式、自组网通信模式、lte通信模式中的部分或全部,且所述用户自主通信模式受可用网络的限制。
可选地,所述在中间层多模通信协议处理框架上扩展出通话管理服务和im服务时,扩展出的im服务用于根据用户发送多模通信消息的类型,确定对应的多模通信协议消息封装形式并进行封装,并将封装后的消息传递其至硬件层多模通信驱动,所述多模通信消息的类型包括文本类型、语音类型、图像类型、文件类型中的部分或全部。
可选地,所述基于多模通信协议约定进行计算解析封装时,所述基于多模通信协议约定是指根据多模通信模块类型和预定义消息类型,进行对包括字面量名称、字面量类型、字面量长度、消息体结构中的部分或全部信息在内的关键信息的约定;且扩展出的im服务确定对应的多模通信协议消息封装形式并进行封装是指根据多模通信模块类型和预定义消息类型,进行对包括字面量名称、字面量类型、字面量长度、消息体结构中的部分或全部信息在内的关键信息的约定将对应的多模通信协议消息进行封装。
可选地,所述以事件模型方式获取硬件层到应用层的数据是指将监听到的硬件层多模通信模块消息视为事件,对该事件内容经过解析计算后传递至应用层多模通信相关的应用功能,并提供对应的回调函数以便应用功能对该事件做出反馈。
此外,本发明还提供一种基于麒麟移动操作系统的多模通信实现装置,包括微处理器和存储器,该微处理器被编程或配置以执行所述基于麒麟移动操作系统的多模通信实现方法的步骤。
此外,本发明还提供一种计算机可读存储介质,该计算机可读存储介质中存储有被编程或配置以执行所述基于麒麟移动操作系统的多模通信实现方法的计算机程序。
和现有技术相比,本发明可起到的技术效果主要包括:本发明包括在应用层开发使用多模通信业务的应用功能,处理多种请求/响应类型数据,利用多模通信接口将数据向下传递;在中间层多模通信协议处理框架上扩展出通话管理服务和im服务并封装接口,对从应用层到硬件层的数据、硬件层到应用层的数据基于多模通信协议约定进行计算解析封装;在硬件层多模通信驱动中处理与硬件之间的数据收发,与多模通信协议处理框架之间的数据包透传。本发明能够实现麒麟移动操作系统的多模通信,实现对多模通信终端设备的支持,使其能够正常进行多类型通信网络的连接、运行和应用。本发明为麒麟移动操作系统适配多模通信基础模块,实现对多模通信终端的支持,基于构建的多模通信协议处理框架,能够支撑起多模通信应用和功能调用多模通信模块的能力,提升了操作系统在应对多类型通信网络融合环境下的可用性。本发明为麒麟移动操作系统适配的多模通信应用具备良好的人机交互界面,简单易用,性能良好,在避免提高用户操作复杂度的前提下,满足用户对多模通信的需求。
附图说明
图1是本发明实施例方法的基本流程示意图。
图2是本发明实施例中实现的多模通信系统的总体结构示意图。
图3是本发明实施例中的应用功能示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文将以支持卫星通信、自组网通信、lte通信三种模式的多模通信为例,结合实施例和附图对本发明基于麒麟移动操作系统的多模通信实现方法及装置进行进一步的详细说明。毫无疑问,本发明基于麒麟移动操作系统的多模通信实现方法及装置并不依赖于特定的某一种通信模式,因此在此实施例的技术启示下,本领域技术人员可以根据需要选择多模通信中的具体通信模式。
如图1和图2所示,本实施例基于麒麟移动操作系统的多模通信实现方法包括:
在应用层开发使用多模通信业务的应用功能,处理与使用多模通信业务的应用功能交互产生的多种请求/响应类型数据,利用多模通信接口将数据向下传递到中间层多模通信协议处理框架;
在中间层多模通信协议处理框架上扩展出通话管理服务和im服务,封装多模通信的webapi接口,对从应用层到硬件层的数据基于多模通信协议约定进行计算解析封装,以及以事件模型方式获取硬件层到应用层的数据并基于多模通信协议约定进行计算解析封装;
在硬件层多模通信驱动中处理与硬件之间的数据收发,与多模通信协议处理框架之间的数据包透传。
本实施例中,所述在应用层开发使用多模通信业务的应用功能具体是指基于html、javascript、css构建应用功能的用户交互界面,接收处理用户操作,并调用多模通信接口功能。使用多模通信业务的应用功能可为使用多模通信功能在内的通话应用、短信应用、联系人应用和第三方应用等。其中,多模通信交互界面包含多模拨号、多模单通会话、多模群组会话、多模单通消息、多模群组消息、多模联系人增删改查等界面,具体可根据使用多模通信业务的应用功能的需求进行确定。其中,多模通信功能可以普通数据通信,以及多模通信链路相关的通信链路检测、通信参数配置等功能。
本实施例中,所述中间层多模通信协议处理框架用于提供应用层多模通信编程接口,解析计算和封装与硬件层之间的多模通信数据包,实现多模通信具体业务逻辑。
本实施例中,所述硬件层多模通信驱动分别包括天通卫星通信模块、无线自组网通信模块、lte宽带网通信模块对应的驱动,所述硬件层多模通信驱动提供与中间层多模通信协议处理框架之间的输入输出接口。
本实施例中,所述在中间层多模通信协议处理框架上扩展出通话管理服务和im服务时,扩展出的通话管理服务用于根据多模通信网络环境、用户自主通信模式选择来完成相对应的通话调用,所述多模通信网络环境包括卫星通信模式、自组网通信模式、lte通信模式,所述用户自主通信模式包括卫星通信模式、自组网通信模式、lte通信模式,且所述用户自主通信模式受可用网络的限制。
本实施例中,所述在中间层多模通信协议处理框架上扩展出通话管理服务和im服务时,扩展出的im服务用于根据用户发送多模通信消息的类型,确定对应的多模通信协议消息封装形式并进行封装,并将封装后的消息传递其至硬件层多模通信驱动,所述多模通信消息的类型包括文本类型、语音类型、图像类型、文件类型。
本实施例中,所述基于多模通信协议约定进行计算解析封装时,所述基于多模通信协议约定是指根据多模通信模块类型和预定义消息类型,进行对包括字面量名称、字面量类型、字面量长度、消息体结构信息在内的关键信息的约定;且扩展出的im服务确定对应的多模通信协议消息封装形式并进行封装是指根据多模通信模块类型和预定义消息类型,进行对包括字面量名称、字面量类型、字面量长度、消息体结构信息在内的关键信息的约定将对应的多模通信协议消息进行封装。
本实施例中,所述以事件模型方式获取硬件层到应用层的数据是指将监听到的硬件层多模通信模块消息视为事件,对该事件内容经过解析计算后传递至应用层多模通信相关的应用功能,并提供对应的回调函数以便应用功能对该事件做出反馈。
图2是本实施例中实现的系统总体结构示意图,参见图2可知,本发明实施例中实现的麒麟移动操作系统的多模通信系统的总体结构主要包括:
多模通信模块驱动:位于驱动层,涉及天通卫星通信模块、无线自组网通信模块、lte宽带网通信模块等基础通信模块,通过在麒麟移动操作系统上对多模硬件模块进行适配,可监听通信硬件上数据包上报和下发数据包给通信硬件传输,提供与中间层多模通信协议处理框架之间的输入输出接口,可负责处理与中间层多模通信协议处理框架间的数据包输入输出。
多模通信协议处理框架模块:位于中间层,扩展出通话管理服务和im服务,基于麒麟操作系统封装提供给应用层的多模通信接口,基于设计的多模通信协议约定解析和封装数据包,负责同监听驱动层多模通信硬件模块消息上报,提供多模通信编程接口;
多模通信应用功能:位于应用层,用户交互界面基于html5构建(基于html/javascript/css等web技术构建),负责实现多模通信具体业务逻辑,接收用户操作并调用处理框架进行处理,可显示提供多模功能的交互界面,处理用户操作。
通过上述主要部件的相互配合可实现麒麟移动操作系统下的多模通信,即:在硬件层多模通信驱动中处理与硬件之间的数据收发,与多模通信协议处理框架之间的数据包透传。在中间层多模通信协议处理框架上扩展出通话管理服务和im服务,封装多模通信的webapi接口,对从应用层到硬件层和硬件层到应用层的数据基于多模通信协议约定进行计算解析封装。在应用层开发使用多模通信业务的应用和功能,处理与之交互产生的多种请求/响应类型数据,利用多模通信接口将数据向下传递。
本实施例中,在多模通信协议处理框架上扩展出多模通话管理服务和多模im服务供给应用层多模通信相关应用使用,需要将其中与通话管理服务和im服务进行通信的部分封装成webapi,因在麒麟移动操作系统中除浏览器引擎本身暴露的web标准接口以外的扩展接口都置于navigator对象下,因此将对应通话管理服务和im服务的接口部分封装成为navigator的下属对象,通话管理接口对象提供通话模式选择、通话记录查询、发起群组会话等功能函数,im接口对象提供多模短信发送、多模消息查询、多模群组消息发送等功能函数。在构成多模通信的完整交互过程,当多台多模通信终端处于组网环境中时,每台终端既可当主叫又当被叫。当终端作为主叫时,需要将封装之后的应用层用户操作信息下发至硬件层,多模通信协议处理框架会根据封装后的信息直接调用对应通信模块进行工作,如拨打天通电话或发送天通短信。当终端作为被叫时,硬件层多模通信驱动中的任一模块收到具体信号后会立即传递消息数据包至多模通信协议处理框架,由处理框架按照多模通信协议约定对该数据包进行解析,如果该信号是多模通话信号,则调起通话管理服务给通话应用传递事件,拉起通话界面;如果该信号是多模消息信号,则将对应的消息分析后通过im服务以事件传递方式传至多模通信应用。具体的,多模通话信号分为天通、自组网、lte,多模消息信号在此基础上还分为文本、语音、图像、文件,其中天通仅支持文本的多模消息。对于语音、图形、文本内容的多模消息,多模通信协议处理框架还需通知驱动层需开始接收文件,当接收完成之后会重新发送一个完成状态的事件给应用层多模通信相关应用,此时事件内容不变,时间戳和事件状态更新。
作为一种可选的实施方式,本实施例中的应用功能如图3所示。应用层多模通信应用是构建与用户良好交互的重要一环,因此多模通信应用在麒麟操作系统原生的通信类应用(通话、短信、联系人)的基础上进行了适配工作,使其可以支撑多模通信的需求。具体的,多模联系人负责终端上联系人的具体通信方式,不同联系人可能存在不同的通信方式,如只有天通或只有自组网和lte或全都有,与不同的联系人进行通信时,只能在其有的通信方式进行选择,此时涉及到了多种状态联系人的存储、多种通信记录的存储,特别的,在短信应用中,涉及到多种模式的应用数据的存储,需要将这些数据分门别类存储开,在显示上还需要做到统一性。在麒麟操作系统的上层应用中,常用的存储方案是采取indexeddb数据库进行持久化存储,在将联系人的存储字段进行扩展后,可存储多种不同通信方式的联系人,还可以扩展存储群组联系人(一般一个群组下包含多个群成员的联系方式,共享同一类通信网络)。对于多模短信应用,采取主副数据库索引方案,主数据库依照时间戳以约定结构体方式存储所有消息,其中结构体中的文字字段存储消息的文本内容(文字、语音名、图像名、文件名),语音数据库存储压缩后的语音数据,图像数据库存储图像缩略图,机身存储原始图像和其他文件。
此外,本实施例还提供一种基于麒麟移动操作系统的多模通信实现装置,包括微处理器和存储器,该微处理器被编程或配置以执行前述基于麒麟移动操作系统的多模通信实现方法的步骤。
此外,本实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有被编程或配置以执行前述基于麒麟移动操作系统的多模通信实现方法的计算机程序。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
1.一种基于麒麟移动操作系统的多模通信实现方法,其特征在于,包括:
在应用层开发使用多模通信业务的应用功能,处理与使用多模通信业务的应用功能交互产生的多种请求/响应类型数据,利用多模通信接口将数据向下传递到中间层多模通信协议处理框架;
在中间层多模通信协议处理框架上扩展出通话管理服务和im服务,封装多模通信的webapi接口,对从应用层到硬件层的数据基于多模通信协议约定进行计算解析封装,以及以事件模型方式获取硬件层到应用层的数据并基于多模通信协议约定进行计算解析封装;
在硬件层多模通信驱动中处理与硬件之间的数据收发,与多模通信协议处理框架之间的数据包透传。
2.根据权利要求1所述的基于麒麟移动操作系统的多模通信实现方法,其特征在于,所述在应用层开发使用多模通信业务的应用功能具体是指基于html、javascript、css构建应用功能的用户交互界面,接收处理用户操作,并调用多模通信接口功能。
3.根据权利要求1所述的基于麒麟移动操作系统的多模通信实现方法,其特征在于,所述中间层多模通信协议处理框架用于提供应用层多模通信编程接口,解析计算和封装与硬件层之间的多模通信数据包,实现多模通信具体业务逻辑。
4.根据权利要求1所述的基于麒麟移动操作系统的多模通信实现方法,其特征在于,所述硬件层多模通信驱动分别包括天通卫星通信模块、无线自组网通信模块、lte宽带网通信模块中的部分或全部通信模块对应的驱动,所述硬件层多模通信驱动提供与中间层多模通信协议处理框架之间的输入输出接口。
5.根据权利要求1所述的基于麒麟移动操作系统的多模通信实现方法,其特征在于,所述在中间层多模通信协议处理框架上扩展出通话管理服务和im服务时,扩展出的通话管理服务用于根据多模通信网络环境、用户自主通信模式选择来完成相对应的通话调用,所述多模通信网络环境包括卫星通信模式、自组网通信模式、lte通信模式中的部分或全部,所述用户自主通信模式包括卫星通信模式、自组网通信模式、lte通信模式中的部分或全部,且所述用户自主通信模式受可用网络的限制。
6.根据权利要求1所述的基于麒麟移动操作系统的多模通信实现方法,其特征在于,所述在中间层多模通信协议处理框架上扩展出通话管理服务和im服务时,扩展出的im服务用于根据用户发送多模通信消息的类型,确定对应的多模通信协议消息封装形式并进行封装,并将封装后的消息传递其至硬件层多模通信驱动,所述多模通信消息的类型包括文本类型、语音类型、图像类型、文件类型中的部分或全部。
7.根据权利要求6所述的基于麒麟移动操作系统的多模通信实现方法,其特征在于,所述基于多模通信协议约定进行计算解析封装时,所述基于多模通信协议约定是指根据多模通信模块类型和预定义消息类型,进行对包括字面量名称、字面量类型、字面量长度、消息体结构中的部分或全部信息在内的关键信息的约定;且扩展出的im服务确定对应的多模通信协议消息封装形式并进行封装是指根据多模通信模块类型和预定义消息类型,进行对包括字面量名称、字面量类型、字面量长度、消息体结构中的部分或全部信息在内的关键信息的约定将对应的多模通信协议消息进行封装。
8.根据权利要求1所述的基于麒麟移动操作系统的多模通信实现方法,其特征在于,所述以事件模型方式获取硬件层到应用层的数据是指将监听到的硬件层多模通信模块消息视为事件,对该事件内容经过解析计算后传递至应用层多模通信相关的应用功能,并提供对应的回调函数以便应用功能对该事件做出反馈。
9.一种基于麒麟移动操作系统的多模通信实现装置,包括微处理器和存储器,其特征在于,该微处理器被编程或配置以执行权利要求1~8中任意一项所述基于麒麟移动操作系统的多模通信实现方法的步骤。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质中存储有被编程或配置以执行权利要求1~8中任意一项所述基于麒麟移动操作系统的多模通信实现方法的计算机程序。
技术总结