一种Android中控大屏系统模块间通信方法及系统技术方案

技术编号:18256336 阅读:35 留言:0更新日期:2018-06-20 08:10
本发明专利技术公开了一种Android中控大屏系统模块间通信方法及系统,该方法包括以下步骤:发起模块启动AgentService,通过AgentService向消息中转模块发送注册请求;消息中转模块为发起模块进行注册后,建立与发起模块的连接;发起模块通过AgentService将待发送的消息数据和目标模块的ID组合发送到消息中转模块;消息中转模块对目标模块的ID组合进行拆解后,得到多个目标模块ID,获取每个目标模块ID所对应的aidl类型的回调接口;消息中转模块将待发送的消息数据依次从获取的aidl类型的回调接口发送到对应的目标模块。本发明专利技术可以更加灵活地处理和发送消息数据,使用便捷,稳定性好,安全性高,而且更加智能,可广泛应用于汽车通信行业中。

A method and system for communication between modules of Android central control large screen system

The invention discloses a communication method and system between modules in the Android control large screen system. The method includes the following steps: the initiating module starts the AgentService and sends the registration request to the message transfer module through AgentService; after the message transfer module is registered for the initiating module, the connection of the initiation module is established; the initiating module is established. The block sends the message data to be sent and the ID combination of the target module to the message transfer module through the AgentService; after the message transfer module dissolves the ID combination of the target module, multiple target module ID is obtained to obtain the callback connection of the Aidl type corresponding to each target module ID; the message transfer module will cancel the message to be sent. The interest data is sent from the callback interface of the Aidl type to the corresponding target module sequentially. The invention can handle and send message data more flexibly, easy to use, good stability, high security, and more intelligent, and can be widely used in the automotive communications industry.

【技术实现步骤摘要】
一种Android中控大屏系统模块间通信方法及系统
本专利技术涉及通信
,特别是涉及一种Android中控大屏系统模块间通信方法及系统。
技术介绍
Android中控大屏系统的模块或进程间经常需要进行通信,例如进行数据传输、指令传达、状态通知等。目前,Android中控大屏系统的模块之间的通信方式主要有广播通信方式和aidl通信方式。广播通信方式是将通信数据发送到其它所有模块,并没有针对性,广播对象不可控,而且广播通信结果也不可知,稳定性差。aidl通信方式较为复杂,开发难度较大,而且模块之间直接通过aidl通信方式进行通信,还存在较多漏洞,无法保障安全通信。总的来说,目前Android中控大屏系统模块间通信存在使用不便、消息容错性差、稳定性差、不安全等问题。
技术实现思路
为了解决上述的技术问题,本专利技术的目的是提供一种Android中控大屏系统模块间通信方法及系统。本专利技术解决其技术问题所采用的技术方案是:一种Android中控大屏系统模块间通信方法,包括以下步骤:发起模块启动AgentService,通过AgentService向消息中转模块发送注册请求;消息中转模块根据发起模块的注册请求,为发起模块进行注册后,建立与发起模块的连接;发起模块通过AgentService将待发送的消息数据和目标模块的ID组合发送到消息中转模块;消息中转模块对目标模块的ID组合进行拆解后,得到多个目标模块ID,进而从第一哈希表中遍历获取每个目标模块ID所对应的aidl类型的回调接口;消息中转模块将待发送的消息数据依次从获取的aidl类型的回调接口发送到对应的目标模块;其中,所述发起模块和目标模块均为Android中控大屏系统中获得AgentService授权的系统模块,所述消息中转模块为Android中控大屏系统内设的模块。进一步,所述第一哈希表是通过以下方式建立的:针对进行注册的每个系统模块,消息中转模块将其ID以及该系统模块对应的aidl类型的回调接口存储到第一哈希表中。进一步,所述消息中转模块将待发送的消息数据依次从获取的aidl类型的回调接口发送到对应的目标模块的步骤,具体包括:消息中转模块将每个目标模块的消息数据生成一数据集合,并与该目标模块的ID关联后存储到第二哈希表中;消息中转模块根据预设时间间隔,遍历第二哈希表,依次读取每个目标模块ID对应的消息数据后,通过该目标模块ID对应的aidl类型的回调接口,将消息数据发送到对应的目标模块。进一步,当消息中转模块从第一哈希表中获取不到目标模块ID所对应的aidl类型的回调接口时,执行以下步骤:通知对应的目标模块进行注册,并将消息数据生成一数据集合,并与该目标模块的ID关联后存储到第二哈希表;在判断该目标模块完成注册后,遍历第二哈希表,读取对应的消息数据后,发送到该目标模块。进一步,所述判断该目标模块完成注册的步骤中,是通过遍历第一哈希表,当从第一哈希表中读取到与该目标模块的ID对应的aidl类型的回调接口时,判断该目标模块完成注册。进一步,当目标模块被通知进行注册时,通过执行以下步骤进行注册:目标模块启动AgentService,通过AgentService向消息中转模块发送注册请求;消息中转模块根据目标模块的注册请求,为目标模块进行注册后,建立与目标模块的连接,并将目标模块的ID和aidl类型的回调接口存储到第一哈希表中。进一步,还包括以下步骤:目标模块接收到消息中转模块发送消息数据的信息时,启动AgentService,与消息中转模块建立连接后,通过AgentService依次接收消息中转模块发送的消息数据;目标模块在开始接收消息数据时,进行计时,并在到达预设计时时间后,判断与消息中转模块之间是否还有数据交互,若没有,则结束计时,并向消息中转模块发送注销请求,同时销毁AgentService,反之,重新进行计时判断。进一步,还包括以下步骤:消息中转模块接收到系统模块的注销请求时,对系统模块进行注销,断开与系统模块的连接,并将其ID以及该系统模块对应的aidl类型的回调接口从第一哈希表中删除。本专利技术解决其技术问题所采用的另一技术方案是:一种Android中控大屏系统模块间通信系统,用于实现Android中控大屏系统的发起模块和目标模块之间的通信,包括设置在Android中控大屏系统的消息中转模块,所述消息中转模块用于:接收发起模块在启动AgentService后,通过AgentService所发送的注册请求;根据发起模块的注册请求,为发起模块进行注册后,建立与发起模块的连接;接收发起模块通过AgentService发送的待发送的消息数据和目标模块的ID组合;对所接收的目标模块的ID组合进行拆解后,得到多个目标模块ID,进而从第一哈希表中遍历获取每个目标模块ID所对应的aidl类型的回调接口;将待发送的消息数据依次从获取的aidl类型的回调接口发送到对应的目标模块;其中,所述发起模块和目标模块均为Android中控大屏系统中获得AgentService授权的系统模块器。进一步,所述消息中转模块包括注册接口、注销接口和数据接口;所述注册接口用于:接收发起模块在启动AgentService后,通过AgentService所发送的注册请求;以及,根据发起模块的注册请求,为发起模块进行注册后,建立与发起模块的连接;所述注销接口用于:在接收到系统模块的注销请求时,对系统模块进行注销,断开与系统模块的连接;所述数据接口用于:接收发起模块通过AgentService发送的待发送的消息数据和目标模块的ID组合;对所接收的目标模块的ID组合进行拆解后,得到多个目标模块ID,进而从第一哈希表中遍历获取每个目标模块ID所对应的aidl类型的回调接口;将待发送的消息数据依次从获取的aidl类型的回调接口发送到对应的目标模块。本专利技术方法、系统的有益效果是:本专利技术通过Android中控大屏系统内设的消息中转模块来进行Android中控大屏系统的系统模块之间的消息数据转发,消息中转模块来实现Android中控大屏系统模块之间的通信,可以更加灵活地处理和发送消息数据,使用便捷,稳定性好,安全性高,而且更加智能。附图说明图1是本专利技术的一种Android中控大屏系统模块间通信方法的流程图;图2是本专利技术的一种Android中控大屏系统模块间通信系统的结构框图。具体实施方式方法实施例参照图1,本实施例提供了一种Android中控大屏系统模块间通信方法,包括以下步骤:S1、发起模块启动AgentService,通过AgentService向消息中转模块发送注册请求;S2、消息中转模块根据发起模块的注册请求,为发起模块进行注册后,建立与发起模块的连接;S3、发起模块通过AgentService将待发送的消息数据和目标模块的ID组合发送到消息中转模块;S4、消息中转模块对目标模块的ID组合进行拆解后,得到多个目标模块ID,进而从第一哈希表中遍历获取每个目标模块ID所对应的aidl类型的回调接口;S5、消息中转模块将待发送的消息数据依次从获取的aidl类型的回调接口发送到对应的目标模块;其中,所述发起模块和目标模块均为Android中控大屏系统中获得AgentService授权的系统模块,所述消息本文档来自技高网...
一种Android中控大屏系统模块间通信方法及系统

【技术保护点】
1.一种Android中控大屏系统模块间通信方法,其特征在于,包括以下步骤:发起模块启动AgentService,通过AgentService向消息中转模块发送注册请求;消息中转模块根据发起模块的注册请求,为发起模块进行注册后,建立与发起模块的连接;发起模块通过AgentService将待发送的消息数据和目标模块的ID组合发送到消息中转模块;消息中转模块对目标模块的ID组合进行拆解后,得到多个目标模块ID,进而从第一哈希表中遍历获取每个目标模块ID所对应的aidl类型的回调接口;消息中转模块将待发送的消息数据依次从获取的aidl类型的回调接口发送到对应的目标模块;其中,所述发起模块和目标模块均为Android中控大屏系统中获得AgentService授权的系统模块,所述消息中转模块为Android中控大屏系统内设的模块。

【技术特征摘要】
1.一种Android中控大屏系统模块间通信方法,其特征在于,包括以下步骤:发起模块启动AgentService,通过AgentService向消息中转模块发送注册请求;消息中转模块根据发起模块的注册请求,为发起模块进行注册后,建立与发起模块的连接;发起模块通过AgentService将待发送的消息数据和目标模块的ID组合发送到消息中转模块;消息中转模块对目标模块的ID组合进行拆解后,得到多个目标模块ID,进而从第一哈希表中遍历获取每个目标模块ID所对应的aidl类型的回调接口;消息中转模块将待发送的消息数据依次从获取的aidl类型的回调接口发送到对应的目标模块;其中,所述发起模块和目标模块均为Android中控大屏系统中获得AgentService授权的系统模块,所述消息中转模块为Android中控大屏系统内设的模块。2.根据权利要求1所述的一种Android中控大屏系统模块间通信方法,其特征在于,所述第一哈希表是通过以下方式建立的:针对进行注册的每个系统模块,消息中转模块将其ID以及该系统模块对应的aidl类型的回调接口存储到第一哈希表中。3.根据权利要求2所述的一种Android中控大屏系统模块间通信方法,其特征在于,所述消息中转模块将待发送的消息数据依次从获取的aidl类型的回调接口发送到对应的目标模块的步骤,具体包括:消息中转模块将每个目标模块的消息数据生成一数据集合,并与该目标模块的ID关联后存储到第二哈希表中;消息中转模块根据预设时间间隔,遍历第二哈希表,依次读取每个目标模块ID对应的消息数据后,通过该目标模块ID对应的aidl类型的回调接口,将消息数据发送到对应的目标模块。4.根据权利要求2所述的一种Android中控大屏系统模块间通信方法,其特征在于,当消息中转模块从第一哈希表中获取不到目标模块ID所对应的aidl类型的回调接口时,执行以下步骤:通知对应的目标模块进行注册,并将消息数据生成一数据集合,并与该目标模块的ID关联后存储到第二哈希表;在判断该目标模块完成注册后,遍历第二哈希表,读取对应的消息数据后,发送到该目标模块。5.根据权利要求4所述的一种Android中控大屏系统模块间通信方法,其特征在于,所述判断该目标模块完成注册的步骤中,是通过遍历第一哈希表,当从第一哈希表中读取到与该目标模块的ID对应的aidl类型的回调接口时,判断该目标模块完成注册。6.根据权利要求4所述的一种Android中控大屏系统模块间通信方法,其特征在于,当目标模块被通知进行注册时,通过执行以下步骤进行注册:目标模块启动AgentService,通过AgentService向消息中转模块发送注册请求;消息中转模块根据目标模块的注册请求,为目标模块进行注册后...

【专利技术属性】
技术研发人员:郑裕集
申请(专利权)人:广州小鹏汽车科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1