System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及电子领域,尤其涉及一种设备内通信方法、装置、电子设备及存储介质。
技术介绍
1、在电子设备中,通常会存在多个能够与用户进行交互的ui模块,不同ui模块用于实现不同的ui功能。另外,在电子设备的底层还具有支持每个ui功能实现的功能模块。
2、由于ui模块与对应的功能模块位于不同层,所使用的数据格式也不相同,当ui模块与对应的功能模块通信时,需要基于电子设备中的快应用框架在每个ui模块与对应的功能模块之间建立一种通信方式,导致ui模块、快应用框架以及对应的功能模块之间的耦合度较高,进而导致方案的可移植性和可扩展性差,增大了电子设备中新功能模块的开发难度。
技术实现思路
1、本申请实施例提供一种设备内通信方法、装置、电子设备及存储介质。
2、根据本申请实施例的第一方面,提供一种设备内通信方法,由第一设备中的代理模块执行,所述方法包括:
3、接收待转发消息;
4、响应于所述待转发消息为由所述第一设备的框架模块转发的第一消息,将所述第一消息发送至对应的功能模块;其中,所述框架模块与所述第一设备的多个用户界面ui模块连接,不同所述ui模块用于实现不同的ui功能;所述代理模块与所述第一设备的多个功能模块连接;
5、响应于所述待转发消息为来自至少一个所述功能模块的第二消息,将所述第二消息发送至所述框架模块;其中,所述第二消息,用于所述框架模块转发至对应的所述ui模块。
6、可选地,所述将所述第一消息发送至对应的功能模
7、响应于所述第一消息具有第一格式,将具有第一格式的所述第一消息转换为第二格式后发送至对应的功能模块,其中,所述第一格式为所述框架模块能够识别的数据格式,所述第二格式为所述功能模块能够识别的数据格式。
8、可选地,所述将所述第二消息发送至所述框架模块,包括:
9、响应于所述第二消息具有第二格式,将所述第二消息转换为第一格式后发送至所述框架模块。
10、可选地,所述将所述第一消息发送至对应的功能模块,包括:
11、获取所述第一消息中的第一标识;
12、基于所述第一标识,将所述第一消息发送至所述第一标识所标识的功能模块。
13、可选地,所述方法,还包括:
14、所述代理模块和所述框架模块之间使用第一通信协议进行消息传输;
15、所述代理模块与所述功能模块之间使用第二通信协议进行消息传输;
16、其中,所述第一通信协议支持运行在同一内核上的进程间的通信,所述第二通信协议支持运行在不同内核上的进程间的通信。
17、可选地,所述代理模块包括多个第一接口,其中,一个所述第一接口用于转发来自一个对应功能模块的第二消息。
18、可选地,所述响应于所述待转发消息为来自至少一个所述功能模块的第二消息,将所述第二消息发送至所述框架模块,包括:
19、响应于所述待转发消息为来自第一功能模块的第二消息,通过与所述第一功能模块对应的第一接口将所述第二消息发送至所述框架模块。
20、可选地,所述第一消息包括:所述ui模块检测到触发任意ui功能的启动操作生成的消息。
21、本申请实施例第二方面,提供了一种设备内通信装置,所述装置包括:
22、接收模块,用于接收待转发消息;
23、第一发送模块,用于响应于所述待转发消息为由所述第一设备的框架模块转发的第一消息,将所述第一消息发送至对应的功能模块;其中,所述框架模块与所述第一设备的多个用户界面ui模块连接,不同所述ui模块用于实现不同的ui功能;所述代理模块与所述第一设备的多个功能模块连接;
24、第二发送模块,用于响应于所述待转发消息为来自至少一个所述功能模块的第二消息,将所述第二消息发送至所述框架模块;其中,所述第二消息,用于所述框架模块转发至对应的所述ui模块。
25、可选地,所述第一发送模块用于:
26、响应于所述第一消息具有第一格式,将具有第一格式的所述第一消息转换为第二格式后发送至对应的功能模块,其中,所述第一格式为所述框架模块能够识别的数据格式,所述第二格式为所述功能模块能够识别的数据格式。
27、可选地,所述第二发送模块用于:
28、响应于所述第二消息具有第二格式,将所述第二消息转换为第一格式后发送至所述框架模块。
29、可选地,所述第一发送模块用于:
30、获取所述第一消息中的第一标识;
31、基于所述第一标识,将所述第一消息发送至所述第一标识所标识的功能模块。
32、可选地,所述装置,还包括:
33、第一传输模块,用于所述代理模块和所述框架模块之间使用第一通信协议进行消息传输;
34、第二传输模块,用于所述代理模块与所述功能模块之间使用第二通信协议进行消息传输;
35、其中,所述第一通信协议支持运行在同一内核上的进程间的通信,所述第二通信协议支持运行在不同内核上的进程间的通信。
36、可选地,所述代理模块包括多个第一接口,其中,一个所述第一接口用于转发来自一个对应功能模块的第二消息。
37、可选地,所述第二消息发送模块用于:
38、响应于所述待转发消息为来自第一功能模块的第二消息,通过与所述第一功能模块对应的第一接口将所述第二消息发送至所述框架模块。
39、可选地,所述第一消息包括:所述ui模块检测到触发任意ui功能的启动操作生成的消息。
40、本申请实施例第三方面,提供了一种电子设备,包括:
41、用于存储处理器可执行指令的存储器;
42、处理器,与所述存储器连接;
43、其中,所述处理器用于执行如上述任一项所述的设备内通信方法。
44、本申请实施例第四方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由计算机的处理器执行时,使得计算机能够执行的上述任一项所述的设备内通信方法。
45、本申请实施例提供的技术方案可以包括以下有益效果:
46、在本申请实施例中,由于第一设备中存在代理模块,且该代理模块与多个功能模块连接。基于此,当代理模块接收到框架模块转发的任一ui模块生成的第一消息时,则可以将该第一消息发送至对应的功能模块,当代理模块接收到任意功能模块发送的第二消息时,则可以将该第二消息发送至框架模块,用于框架模块将该第二消息发送至对应的ui模块。
47、可见,通过本申请实施例中的代理模块,可以实现框架模块与多个功能模组之间的解耦,也即,所有的功能模块均与代理模块进行通信,而无需基于框架模块与每个ui模块进行通信,这样在新功能模块的开发过程中,仅需要关注新功能模块与代理模块之间的通信方式即可,降低了第一设备中的新功能模块的开发难度。
48、应当理解的是,以上的一般描述和后文的细节本文档来自技高网...
【技术保护点】
1.一种设备内通信方法,其特征在于,由第一设备的代理模块执行,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述第一消息发送至对应的功能模块,包括:
3.根据权利要求2所述的方法,其特征在于,所述将所述第二消息发送至所述框架模块,包括:
4.根据权利要求1所述的方法,其特征在于,所述将所述第一消息发送至对应的功能模块,包括:
5.根据权利要求1所述的方法,其特征在于,所述方法,还包括:
6.根据权利要求1所述的方法,其特征在于,所述代理模块包括多个第一接口,其中,一个所述第一接口用于转发来自一个对应功能模块的第二消息。
7.根据权利要求6所述的方法,其特征在于,所述响应于所述待转发消息为来自至少一个所述功能模块的第二消息,将所述第二消息发送至所述框架模块,包括:
8.根据权利要求1-7任一所述的方法,其特征在于,
9.一种设备内通信装置,其特征在于,所述装置包括:
10.根据权利要求9所述的装置,其特征在于,所述第一发送模块用于:
11.根据权
12.根据权利要求9所述的装置,其特征在于,所述第一发送模块用于:
13.根据权利要求9所述的装置,其特征在于,所述装置,还包括:
14.根据权利要求9所述的装置,其特征在于,所述代理模块包括多个第一接口,其中,一个所述第一接口用于转发来自一个对应功能模块的第二消息。
15.根据权利要求14所述的装置,其特征在于,所述第二消息发送模块用于:
16.根据权利要求9-15任一所述的装置,其特征在于,
17.一种电子设备,其特征在于,包括:
18.一种非临时性计算机可读存储介质,当所述存储介质中的指令由计算机的处理器执行时,使得计算机能够执行如权利要求1至8中的任一项所述的设备内通信方法。
...【技术特征摘要】
1.一种设备内通信方法,其特征在于,由第一设备的代理模块执行,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述第一消息发送至对应的功能模块,包括:
3.根据权利要求2所述的方法,其特征在于,所述将所述第二消息发送至所述框架模块,包括:
4.根据权利要求1所述的方法,其特征在于,所述将所述第一消息发送至对应的功能模块,包括:
5.根据权利要求1所述的方法,其特征在于,所述方法,还包括:
6.根据权利要求1所述的方法,其特征在于,所述代理模块包括多个第一接口,其中,一个所述第一接口用于转发来自一个对应功能模块的第二消息。
7.根据权利要求6所述的方法,其特征在于,所述响应于所述待转发消息为来自至少一个所述功能模块的第二消息,将所述第二消息发送至所述框架模块,包括:
8.根据权利要求1-7任一所述的方法,其特征在于,
9.一种设备内通信装置,其...
【专利技术属性】
技术研发人员:邵存金,
申请(专利权)人:北京小米移动软件有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。