一种数据交互方法、装置、存储介质及电子设备制造方法及图纸

技术编号:32445688 阅读:16 留言:0更新日期:2022-02-26 08:12
本发明专利技术公开了一种数据交互方法、装置、存储介质及电子设备。其中一种数据交互方法包括:嵌入应用基于检测到的业务操作生成至少一个调用信息,将至少一个调用信息形成一调用数据结构;嵌入应用将调用数据结构通过嵌入应用与原生系统之间的信号通道传输至原生系统,以使原生系统基于预先设置的数据交互协议对调用数据结构进行处理,以得到调用数据结构中各调用信息对应的调用结果;嵌入应用接收原生系统返回的调用结果。实现多个调用信息的同步传输,提高了传输效率,同时一个调用数据结构仅建立一个信号通道,且该信号通道与原生系统的method之间不存在硬编码,可对任意调用数据结构和调用结果等进行传输,减少嵌入应用与原生系统之间的信号通道数量。系统之间的信号通道数量。系统之间的信号通道数量。

【技术实现步骤摘要】
一种数据交互方法、装置、存储介质及电子设备


[0001]本专利技术实施例涉及数据交互
,尤其涉及一种数据交互方法、装置、存储介质及电子设备。

技术介绍

[0002]Flutter是目前很热的跨平台技术,提供了媲美原生性能的APP体验,更好地解决了多端一致性问题。
[0003]Flutter是基于平台设计的系统UI框架,当涉及到与原生(Native)能力的使用需要借助Channel的实现,这就导致需要在Flutter侧与原生侧分别写入定义代码,以使用或者复用原生的能力。随着业务的需要,需定义更多的Channel,且Channel的名字和method存在硬编码,只能调用method对应的Native代码块。

技术实现思路

[0004]本专利技术提供一种数据交互方法、装置、存储介质及电子设备,以提高嵌入应用与原生系统之间数据交互的灵活性。
[0005]第一方面,本专利技术实施例提供了一种数据交互方法,包括:
[0006]嵌入应用基于检测到的业务操作生成至少一个调用信息,将所述至少一个调用信息形成一调用数据结构;
[0007]所述嵌入应用将所述调用数据结构通过所述嵌入应用与原生系统之间的信号通道传输至所述原生系统,以使所述原生系统基于预先设置的数据交互协议对所述调用数据结构进行处理,以得到所述调用数据结构中各调用信息对应的调用结果;
[0008]所述嵌入应用接收所述原生系统返回的调用结果。
[0009]第二方面,本专利技术实施例还提供了一种数据交互方法,包括:
[0010]原生系统接收嵌入应用基于预设信号通道发送的调用数据结构,对所述调用数据结构进行解析,得到所述嵌入应用的至少一个调用信息;
[0011]所述原生系统依次调用所述至少一个调用信息分别对应的目标方法,以得到各调用信息对应的调用结果;
[0012]所述原生系统将所述调用结果反馈至所述嵌入应用。
[0013]第三方面,本专利技术实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本专利技术任一实施例提供的数据交互方法。
[0014]第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本专利技术任一实施例提供的数据交互方法。
[0015]本专利技术实施例提供的技术方案,通过嵌入应用将一个或多个调用信息形成一调用数据结构,通过嵌入应用与原生系统之间的一个信号通道将调用数据结构传输至原始系统中,实现了多个调用信息的同步传输,提高了调用信息的传输效率,同时一个调用数据结构
仅建立一个信号通道,且该信号通道与原生系统的method之间不存在硬编码,可对任意调用数据结构和调用结果等进行传输,大大减少嵌入应用与原生系统之间的信号通道数量。
附图说明
[0016]图1为本专利技术实施例一提供的一种数据交互方法的流程示意图;
[0017]图2是本专利技术实施例提供的一种调用数据栈的示例图;
[0018]图3是本专利技术实施例提供的一种数据交互方法的流程示意图;
[0019]图4是本专利技术实施例提供的嵌入应用与原始系统之间的数据交互的示意图;
[0020]图5是本专利技术实施例提供的代理方法及调用原理的示意图;
[0021]图6是本专利技术实施例三提供的一种数据交互方法的流程示意图;
[0022]图7是本专利技术实施例四提供的一种数据交互装置的结构示意图;
[0023]图8是本专利技术实施例五提供的一种数据交互装置的结构示意图;
[0024]图9为本专利技术实施例六提供的一种电子设备的结构示意图。
具体实施方式
[0025]下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。
[0026]实施例一
[0027]图1为本专利技术实施例一提供的一种数据交互方法的流程示意图,本实施例可适用于嵌入应用与原生系统之间的数据交互的情况,该方法可以由本专利技术实施例提供的一种数据交互装置来执行,该装置可集成与诸如手机、计算机、智能手表等的电子设备中。该方法具体包括如下步骤:
[0028]S110、嵌入应用基于检测到的业务操作生成至少一个调用信息,将所述至少一个调用信息形成一调用数据结构。
[0029]S120、嵌入应用将所述调用数据结构通过所述嵌入应用与原生系统之间的信号通道传输至所述原生系统,以使所述原生系统基于预先设置的数据交互协议对所述调用数据结构进行处理,以得到所述调用数据结构中各调用信息对应的调用结果。
[0030]S130、嵌入应用接收所述原生系统返回的调用结果。
[0031]所谓嵌入应用是基于开发框架开发的应用,嵌入应用可以是嵌入在原生系统中,其中,原生系统包括IOS系统和Android系统,开发框架可以包括但不限于Flutter框架。在一些实施例中,嵌入应用可以是基于Flutter框架开发,即Flutter应用。根据业务需求,嵌入应用需使用原生系统的能力,例如推送、定位、存储和网络等,嵌入应用与原生系统之间进行数据通信,例如,数据通信可以包括但不限于获取电量、判断WiFi使用、调起WebView加载网页。目前嵌入应用与原生系统之间的channel与method名称之间存在硬编码,导致该channel仅能够调用原生系统中method名称对应的原生代码块,因此,随着业务需求的不断增加,需要进行交互的数据也不断增加,需建立更多了channel。同时原生代码块需要手动取出对应参数,处理完逻辑后返回到嵌入应用。
[0032]基于嵌入应用与原生系统在数据交互时存在的上述问题,本实施例中通过预先设
置嵌入应用与原生系统之间的数据交互协议,实现嵌入应用与原生系统之间灵活性数据交互,该数据交互协议中限定了嵌入应用与原生系统对进行交互数据的处理方式。
[0033]嵌入应用实时监测业务需求,其中业务需求可以包括但不限于用户的业务操作和嵌入应用运行过程中数据需求。其中,业务操作可对应一个或多个调用信息,该调用信息为需要从原生系统中进行调用的信息,例如可以是待获取的信息名称、信息标识或者调用方法信息数据等,其中调用方法信息数据可以是包括调用方法的属性参数,在一个实施例中,调用信息可以包括类名、方法名、调用方法的配置参数和调用ID。嵌入应用将获取的至少一个调用信息处理为一个调用数据结构,通过调用数据结构的方式将至少一个调用信息传输至原生系统。其中,调用数据结构可以是能够存储多个调用信息的数据结构,例如可以是但不限于栈结构、堆结构、队列结构或者链表结构等,该调用数据结构为预先在数据交互协议中定义的数据结构。
[0034]以栈结构为例,将获取的至少一个调用信息分别写入到栈结构中,形成调用数据栈。其中,写入同一栈结构的调用信息可以是同一业务操作产生的至少一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据交互方法,其特征在于,包括:嵌入应用基于检测到的业务操作生成至少一个调用信息,将所述至少一个调用信息形成一调用数据结构;所述嵌入应用将所述调用数据结构通过所述嵌入应用与原生系统之间的信号通道传输至所述原生系统,以使所述原生系统基于预先设置的数据交互协议对所述调用数据结构进行处理,以得到所述调用数据结构中各调用信息对应的调用结果;所述嵌入应用接收所述原生系统返回的调用结果。2.根据权利要求1所述的方法,其特征在于,所述将所述至少一个调用信息形成一调用数据结构,包括:根据所述至少一个调用信息的业务需求顺序,将所述至少一个调用信息形成一调用数据结构。3.根据权利要求1所述的方法,其特征在于,在所述嵌入应用将所述调用数据结构通过所述嵌入应用与原生系统之间的信号通道传输至所述原生系统之前,所述方法还包括:判定所述嵌入应用与原生系统之间是否存在信号通道;若否,则建立所述嵌入应用与原生系统之间的信号通道,并将所述数据交互协议发送至所述原生系统。4.一种数据交互方法,其特征在于,包括:原生系统接收嵌入应用基于预设信号通道发送的调用数据结构,对所述调用数据结构进行解析,得到所述嵌入应用的至少一个调用信息;所述原生系统依次调用所述至少一个调用信息分别对应的目标方法,以得到各调用信息对应的调用结果;所述原生系统将所述调用结果反馈至所述嵌入应用。5.根据权利要求4所述的方法,其特征在于,所述原生系统依次调用所述至少一个调用信息分别对应的目标方法,包括:根据解析得到的至少一个调用信息的顺序,链式调用各调用信息分别对应的目标方法。6.根据权利要求4所述的方法,其特征在于,所述原生系统依次调用所述至少一个调用信息对应的目标方法,包括:调用预设代理方法,基于所述预设代理方法依次调用所述至少一个调用信息对应的目标方法。7.根据权利要求4所述的方法,其特征在于,在得到所述嵌入应用的至少一个调用信息之后,所述方法还包括:对解析得到的至少一个调用信息设置注解信息,其中,所述注解信息用于标记所述调用信息的优先级。8.根据权利要求4所述的方法,其特征在于,所述原生系统包括IOS系统和A...

【专利技术属性】
技术研发人员:卢旭
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

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

1