CN113076151B - 应用程序交互方法、装置、计算机设备及存储介质 - Google Patents

应用程序交互方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN113076151B
CN113076151B CN202110428582.3A CN202110428582A CN113076151B CN 113076151 B CN113076151 B CN 113076151B CN 202110428582 A CN202110428582 A CN 202110428582A CN 113076151 B CN113076151 B CN 113076151B
Authority
CN
China
Prior art keywords
target
function
bridging
notification
calling function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110428582.3A
Other languages
English (en)
Other versions
CN113076151A (zh
Inventor
朱志强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangyulaite Digital Technology Shanghai Co ltd
Shenzhen Lian Intellectual Property Service Center
Original Assignee
Guangyulaite Digital Technology Shanghai Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangyulaite Digital Technology Shanghai Co ltd filed Critical Guangyulaite Digital Technology Shanghai Co ltd
Priority to CN202110428582.3A priority Critical patent/CN113076151B/zh
Publication of CN113076151A publication Critical patent/CN113076151A/zh
Application granted granted Critical
Publication of CN113076151B publication Critical patent/CN113076151B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开一种应用程序交互方法、装置、计算机设备及存储介质。该方法包括:目标端接收交互请求,对交互请求进行识别,确定交互传递类型;目标端在交互传递类型为传递方法类型时,解析交互请求,获取待传递数据,待传递数据包括目标调用函数、关联调用函数和函数执行顺序;目标端对目标调用函数、关联调用函数和函数执行顺序进行函数转换和拼接处理,获取目标桥接通知,将目标桥接通知上传到桥接层;目标端依据函数执行顺序,监听桥接层上传的关联端执行关联调用函数所形成的关联执行消息,并在目标端执行目标调用函数。该方法可实现利用桥接层传递函数方法,可减少函数调用过程中的代码逻辑,简化代码开发操作,提高目标端和交互端的交互性。

Description

应用程序交互方法、装置、计算机设备及存储介质
技术领域
本发明涉及数据处理技术领域,尤其涉及一种应用程序交互方法、装置、计算机设备及存储介质。
背景技术
当前应用程序(Application,简称APP)开发过程中,为了能快速响应需求,大都采用Hybrid模式进行开发,只需要一端H5代码即可运行在Android系统和Ios系统上,然后H5代码大多只能实现UI层面的开发,大多数与系统和性能相关的还是需要Native端(即原生端)来实现,这就需要采用桥接层(即JsBridge)实现Native端和H5端通信,通信过程中需要数据交换,桥接层只提供基本数据传递,比如String和json等数据传递,不能传递函数方法,这样就限制桥接层的发挥,使得很多业务逻辑无法一次性完成,影响Native端和H5端数据交互效率。
发明内容
本发明实施例提供一种应用程序交互方法、装置、计算机设备及存储介质,以解决应用程序交互方法问题。
一种应用程序交互方法,包括:
目标端接收交互请求,对所述交互请求进行识别,确定所述交互请求对应的交互传递类型;
目标端在所述交互传递类型为传递方法类型时,解析所述交互请求,获取待传递数据,所述待传递数据包括目标调用函数、关联调用函数和函数执行顺序;
目标端对所述目标调用函数、所述关联调用函数和所述函数执行顺序进行函数转换和拼接处理,获取目标桥接通知,将所述目标桥接通知上传到桥接层;
目标端依据所述函数执行顺序,监听所述桥接层上传的关联端执行所述关联调用函数所形成的关联执行消息,并在目标端执行所述目标调用函数。
一种应用程序交互装置,包括:
交互请求识别模块,用于使目标端接收交互请求,对所述交互请求进行识别,确定所述交互请求对应的交互传递类型;
待传递数据获取模块,用于使目标端在所述交互传递类型为传递方法类型时,解析所述交互请求,获取待传递数据,所述待传递数据包括目标调用函数、关联调用函数和函数执行顺序;
目标桥接通知上传模块,用于使目标端对所述目标调用函数、所述关联调用函数和所述函数执行顺序进行函数转换和拼接处理,获取目标桥接通知,将所述目标桥接通知上传到桥接层;
调用函数执行模块,用于使目标端依据所述函数执行顺序,监听所述桥接层上传的关联端执行所述关联调用函数所形成的关联执行消息,并在目标端执行所述目标调用函数。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述应用程序交互方法。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述应用程序交互方法。
上述应用程序交互方法、装置、计算机设备及存储介质,在交互请求对应的交互传递类型为传递方法类型时,需对所述目标调用函数、关联调用函数和函数执行顺序进行处理,形成目标桥接通知,并将所述目标桥接通知上传到桥接层,可实现利用目标桥接通知传递需要关联端执行的关联调用函数,增强桥接层的功能,可有效减少函数调用过程中的代码逻辑,简化代码开发操作。依据所述函数执行顺序,监听桥接层的关联执行消息并执行目标调用函数,改善传统桥接层桥接功能单一的问题,提高目标端和关联端的交互性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中应用程序交互方法的一应用环境示意图;
图2是本发明一实施例中应用程序交互方法的一流程图;
图3是本发明一实施例中应用程序交互方法的另一流程图;
图4是本发明一实施例中应用程序交互方法的另一流程图;
图5是本发明一实施例中应用程序交互方法的另一流程图;
图6是本发明一实施例中应用程序交互方法的另一流程图;
图7是本发明一实施例中应用程序交互装置的一示意图;
图8是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的应用程序交互方法,该应用程序交互方法可应用如图1所示的应用环境中。具体地,该应用程序交互方法应用在应用程序交互系统中,该应用程序交互系统包括如图1所示的桥接层、与桥接层通信的H5端和Native端,可通过桥接层传递数据和函数方法,以实现H5端和Native端的数据交互。
本示例中,H5端和Native端互为目标端和关联端,即在H5端为目标端时,Native端为关联端;在Native端为关联端时,H5端为关联端。其中,目标端是用于触发交互请求,以使桥接层进行数据传递的终端。关联端是用于实现通过桥接层接收目标端所传递的数据的终端。
在一实施例中,如图2所示,提供一种应用程序交互方法,该方法包括目标端执行的如下步骤:
S201:目标端接收交互请求,对交互请求进行识别,确定交互请求对应的交互传递类型。
S202:目标端在交互传递类型为传递方法类型时,解析交互请求,获取待传递数据,待传递数据包括目标调用函数、关联调用函数和函数执行顺序。
S203:目标端对目标调用函数、关联调用函数和函数执行顺序进行函数转换和拼接处理,获取目标桥接通知,将目标桥接通知上传到桥接层。
S204:目标端依据函数执行顺序,监听桥接层上传的关联端执行关联调用函数所形成的关联执行消息,并在目标端执行目标调用函数。
其中,交互请求是用户操作目标端所触发的用于实现数据交互的请求。交互传递类型是用于划分交互请求所需传递数据的类型。交互传递类型包括传递数据类型和传递方法类型。该传递数据类型为需要传递基本数据的类型,例如,string或json。该传递方法类型为需要传递函数方法的类型。
作为一示例,步骤S201中,目标端可以接收用户触发的交互请求,对交互请求进行识别,确定交互请求对应的交互传递类型,以便根据交互传递类型进行不同处理,以实现分别传递函数方法或者基本数据。
其中,待传递数据为需要进行传递的数据。目标调用函数是指目标端需要调用的函数方法。关联调用函数是指关联端需要调用的函数方法。函数执行顺序为目标调用函数和关联调用函数之间的执行顺序。
作为一示例,步骤S202中,目标端在交互传递类型为传递方法类型时,可解析交互请求,从交互请求中获取待传递数据。例如,待传递数据可以为交互请求中位于方法桥接标识之后的数据,该方法桥接标识是预先配置的用于指示H5端和Native端传递函数方法的标识。本示例中,待传递数据包括目标调用函数、关联调用函数和函数执行顺序,需依据函数执行顺序,控制目标端执行目标调用函数和关联端执行关联调用函数。例如,若待传递数据为function(B,A),B代表关联端需要调用的关联调用函数的函数方法名称,A代表目标端需要调用的关联调用函数的函数方法名称,B和A之间的先后顺序为函数执行顺序。
作为一示例,步骤S202中,目标端在交互传递类型为传递数据类型时,可解析交互请求,从交互请求中获取待传递数据,待传递数据包括基本数据,如string或json数据;接着,可采用桥接数据通知模板对基本数据进行处理,获取目标桥接通知,将目标桥接通知上传到桥接层,以使关联端可从桥接层监听到目标桥接通知。其中,桥接数据通知模板为预先配置的用于传递基本数据的通知模板。
其中,目标桥接通知是目标端上传到桥接层的通知,用于提醒关联端执行关联调用函数。
作为一示例,步骤S203中,目标端可采用预先配置的桥接函数通知模板对待传递数据进行处理,具体为采用桥接函数通知模板对目标调用函数、关联调用函数和函数执行顺序进行函数转换和拼接处理,获取用于传递函数方法的目标桥接通知。然后,目标端可将目标桥接通知上传到桥接层,以使关联端在监听到目标桥接通知后,基于目标桥接通知执行关联调用函数。此处的桥接函数通知模板为预先配置的用于传递函数方法的模板。例如,目标端可将目标桥接通知通过底层API注册到桥接层,以使关联端实时监听桥接层,获取目标桥接通知。
作为一示例,步骤S204中,依据函数执行顺序,在关联调用函数的执行顺序先于目标调用函数的执行顺序时,目标端在将目标桥接通知上传到桥接层之后,需实时监听桥接层是否接收到关联端执行关联调用函数之后形成的关联执行消息。目标端只有在监听到关联执行消息之后,确定关联端已经执行完关联调用函数之后,再执行目标调用函数,完成交互请求对应的交互操作。例如,待传递数据为function(B,A),B代表关联端需要执行的关联调用函数的函数方法名称,A代表目标端需要执行的关联调用函数的函数方法名称,B和A之间的先后顺序为函数执行顺序。则目标端需先监听桥接层是否记录到关联端执行关联调用函数B的关联执行消息,在监听到关联执行消息之后,认定关联调用函数B已经执行完成,再执行目标调用函数A。
作为另一示例,步骤S204中,依据函数执行顺序,在目标调用函数的执行顺序先于关联调用函数的执行顺序时,目标端在将目标桥接通知上传到桥接层之后,可先执行目标调用函数,获取目标执行消息,将目标执行消息上传到桥接层,以使关联端在监听到桥接层上存在目标执行消息之后执行关联调用函数,并将关联调用函数上传到桥接层。接着,目标端在监听到桥接层中包含关联执行消息时,认定交互请求对应的交互操作完成。
作为又一示例,步骤S204中,依据函数执行顺序,在目标调用函数和关联调用函数的执行顺序相同时,在目标端在将目标桥接通知上传到桥接层之后,可使目标端执行目标调用函数和关联端执行关联调用函数同时进行,目标端在监听到桥接层中包含关联执行消息且执行完目标调用函数时,认定交互请求对应的交互操作完成。
可理解地,目标端需依据函数执行顺序,监听桥接层中接收到的关联执行消息并执行目标调用函数,以实现在目标端和关联端分别执行对应的调用函数,提高目标端和关联端的交互性,可减少交互过程中的性能消耗,有效改善传统桥接层桥接功能单一的问题。
例如,在目标端为H5端,关联端为Native端时,目标端监听桥接层的关联执行消息,具体可以利用H5端的URL_SCHEME机制,实时监听桥接层是否接收到Native端执行LoadUrl方法所反馈的执行关联调用函数B的关联执行消息。
本实施例所提供的应用程序交互方法中,在交互请求对应的交互传递类型为传递方法类型时,需对目标调用函数、关联调用函数和函数执行顺序进行处理,形成目标桥接通知,并将目标桥接通知上传到桥接层,可实现利用目标桥接通知传递需要关联端执行的关联调用函数,增强桥接层的功能,可有效减少函数调用过程中的代码逻辑,简化代码开发操作。依据函数执行顺序,监听桥接层的关联执行消息并执行目标调用函数,改善传统桥接层桥接功能单一的问题,提高目标端和关联端的交互性。
在一实施例中,如图3所示,步骤S201中,目标端接收交互请求,对交互请求进行识别,确定交互请求对应的交互传递类型,包括:
S301:目标端对交互请求进行识别,判断交互请求是否携带方法桥接标识。
S302:目标端在交互请求携带方法桥接标识时,确定交互请求对应的交互传递类型为传递方法类型。
S303:目标端在交互请求未携带方法桥接标识时,确定交互请求对应的交互传递类型为传递数据类型。
其中,方法桥接标识是预先配置的用于指示H5端和Native端传递函数方法的标识,例如,可预先配置交互请求中最后一个参数为H5端方法的标识为方法桥接标识。
作为一示例,目标端可以接收用户触发的交互请求,对交互请求里先识别,判断交互请求中是否携带预先配置的方法桥接标识。若交互请求中携带方法桥接标识,说明执行交互请求过程中,需通过桥接层传递函数方法,确定其交互请求对应的交互传递类型为传递方法类型。若交互请求中未携带方法桥接标识,说明执行交互请求过程中,无需通过桥接层传递函数方法,只需传递基本数据,如string或json数据,此时,可确定其交互请求对应的交互传递类型为传递数据类型。
在一实施例中,如图4所示,步骤S203中,即目标端对目标调用函数、关联调用函数和函数执行顺序进行函数转换和拼接处理,获取目标桥接通知,包括:
S401:目标端根据目标调用函数和关联调用函数,查询挂载在浏览器上的全局字典,确定目标调用函数对应的目标函数标识和关联调用函数对应的关联函数标识。
S402:目标端根据函数执行顺序,对目标函数标识和关联函数标识进行拼接,获取目标桥接通知。
其中,全局字典是预先定义好多个全局键值对,每一全局键值对(Key-Value)包括配置调用函数和配置调用函数对应的配置函数标识。本示例中,全局键值对(Key-Value)的Key为配置函数标识,该配置函数标识是字符串类型,即string类型;Value为配置调用函数。
作为一示例,在应用程序开发过程中需预先定义好全局字典,将全局字典挂载在浏览器的Window对象,采用扩展函数的方法将全局字典作为Window对象的一个属性,使得目标端和关联端均可以访问到全局字典,为实现目标端和关联端通过桥接层传递函数方法提供技术保障。本示例中,目标端基于解析交互请求得到的待传递数据,待传递数据包括目标调用函数和关联调用函数,可基于目标调用函数和关联调用函数访问全局字典,确定目标调用函数对应的目标函数标识和关联调用函数对应的关联函数标识。
作为一示例,目标端在确定目标调用函数对应的目标函数标识和关联调用函数对应的关联函数标识之后,需依据待传递数据中的函数执行顺序,对目标函数标识和关联函数标识进行处理,即依据函数执行顺序,采用目标分隔符分隔目标函数标识和关联函数标识,获取目标桥接通知。其中,目标分隔符是预先配置的用于分隔目标函数标识和关联函数标识的符号,如“,”。
例如,采用桥接函数通知模板对目标函数标识和关联函数标识进行处理,获取目标桥接通知,即调用格式为function(b1,a1),b1代表关联调用函数对应的关联函数标识,a1代表目标函数标识的目标函数标识,其函数执行顺序为b1到a1,即需要在关联端执行关联调用函数b1之后,再在目标端执行目标调用函数a1,才可以完成交互请求对应的执行操作。
可理解地,利用目标端和关联端均可访问的浏览器上挂载的全局字典,分别确定目标调用函数的目标函数标识和关联调用函数的关联函数标识,依据函数执行顺序、目标函数标识和关联函数标识,确定目标桥接通知,使得目标桥接通知包含目标函数标识和关联函数标识,由于目标函数标识和关联函数标识一般为字符串类型,是可以通过桥接层直接传输的基本数据,因此,其所形成的目标桥接通知可通过桥接层传输,以实现通过目标函数标识和关联函数标识,间接传递需要执行的目标调用函数和关联调用函数,以达到传递函数方法的目的,可实现增强桥接层的功能性,使得目标端和关联端可以执行直接调用函数,可有效减少函数调用过程中的代码逻辑,完善Hybrid开发模式。
在一实施例中,如图5所示,在步骤S201之前,即在目标端接收交互请求,对交互请求进行识别,确定交互请求对应的交互传递类型之前,应用程序交互方法包括:
S501:目标端获取函数加载请求,函数加载请求包括待加载调用函数对应的函数信息。
S502:目标端基于待加载调用函数对应的函数信息查询全局字典,判断是否存在与待加载调用函数相同的已有配置调用函数。
S503:目标端在不存在已有配置调用函数时,将待加载调用函数确定为新增配置调用函数,根据待加载调用函数对应的函数信息,确定新增配置调用函数对应的配置函数标识,基于新增配置调用函数和配置函数标识,形成全局键值对挂载到全局字典中。
其中,函数加载请求是用于触发向浏览器的全局字典加载配置调用函数的请求。待加载调用函数是指本次函数加载请求所需加载的调用函数。待加载调用函数对应的函数信息包括函数名称和调用参数,函数名称为待加载调用函数的名称,调用参数为待加载调用函数中需要调用的参数,例如,待加载调用函数C(x,y),则其函数名称为C,调用参数为x和y。
作为一示例,步骤S501中,目标端可以接收用户触发的函数加载请求,函数加载请求中包含需要加载到全局字典中的待加载调用函数对应的函数信息,即包含待加载调用函数的函数名称和调用参数,以便根据函数名称和调用参数,确定全局字典中是否存在与待加载调用函数相同的配置调用函数。
作为一示例,步骤S502中,目标端可基于待加载调用函数对应的函数信息,即其函数名称和调用参数查询挂载在浏览器上的全局字典,确定全局字典中是否存在与待加载调用函数相同的已有配置调用函数,即判断是否存在函数名称和调用参数均相同的已有配置调用函数。
作为一示例,步骤S503中,目标端在不存在与待加载调用函数的已有配置调用函数,可将待加载调用函数确定为可以新增挂载到全局字典的新增配置调用函数,再根据待加载调用函数对应的函数信息,确定新增配置调用函数对应的配置函数标识;然后,基于新增配置调用函数和配置函数标识,形成新的全局键值对,将所形成的全局键值对挂载到全局字典中,以实现在全局字典中新增全局键值对,从而实现对浏览器上挂载的全局键值对进行管理。
本示例中,根据待加载调用函数对应的函数信息,确定配置调用函数对应的配置函数标识,具体包括:先根据待加载调用函数对应的函数信息中的函数名称,查询全局字典中与函数名称相对应的历史调用序号。接着,根据历史调用序号,确定当前调用序号,例如,可在历史调用序号的基础上加1,形成当前调用序号。最后,将待加载调用函数对应的函数信息中的函数名称和当前调用序号拼接,形成待加载调用函数这一配置调用函数对应的配置函数标识。可理解地,所形成的配置函数标识包含配置调用函数对应的函数名称和当前调用序号,可保证配置函数标识不重复,使得桥接层在传递函数方法时,可以直接从全局字典中确定挂在桥接的配置调用函数对应的配置函数标识,以实现利用配置函数标识桥接传递函数方法。
在一实施例中,如图6所示,在步骤S203之后,即在目标端对目标调用函数、关联调用函数和函数执行顺序进行函数转换和拼接处理,获取目标桥接通知,将目标桥接通知上传到桥接层之后,应用程序交互方法还包括:
S601:关联端实时监听桥接层,获取目标端上传的目标桥接通知。
S602:关联端对目标桥接通知进行识别,获取目标桥接通知对应的桥接传递类型。
S603:关联端在目标桥接通知对应的桥接传递类型为桥接方法类型时,从目标桥接通知中获取关联函数标识。
S604:关联端基于关联函数标识查询挂载在浏览器上的全局字典,确定关联函数标识相对应的关联调用函数。
S605:关联端执行关联调用函数,获取关联执行消息,将关联执行消息上传到桥接层中。
作为一示例,步骤S601中,关联端实时监听桥接层,实时获取目标端上传到桥接层中的目标桥接通知,目标桥接通知包含依次函数执行顺序排序的目标函数标识和关联函数标识,该目标函数标识是指需要在目标端执行的目标调用函数对应的标识,该关联函数标识是指需要在关联端执行的关联调用函数对应的标识。
作为一示例,步骤S602中,关联端在监控到到目标端上传的目标桥接通知之后,需对目标桥接通知进行识别,以确定目标桥接通知对应的桥接传递类型。桥接传递类型可以为桥接数据类型和桥接方法类型。桥接数据类型是指通过桥接层传递基本数据的类型。桥接方法类型是指通过桥接层传递函数方法的类型。
作为一示例,关联端对目标桥接通知进行识别,获取目标桥接通知对应的桥接传递类型,包括:关联端对目标桥接通知进行解析,确定目标桥接通知对应的参数数量;关联端在目标桥接通知对应的参数数量大于1时,将目标桥接通知对应的桥接传递类型确定为桥接方法类型;关联端在目标桥接通知对应的参数数量等于1时,将目标桥接通知对应的桥接传递类型确定为桥接数据类型。本示例中,通过识别目标桥接通知中的参数数量,快速确定其桥接传递类型,以便根据桥接传递类型进行后续的数据处理。
作为另一示例,关联端对目标桥接通知进行识别,获取目标桥接通知对应的桥接传递类型,包括:关联端对目标桥接通知进行解析,判断目标桥接通知是否包含目标分隔符;关联端在目标桥接通知包含目标分隔符时,将目标桥接通知对应的桥接传递类型确定为桥接方法类型;关联端在目标桥接通知不包含目标分隔符时,将目标桥接通知对应的桥接传递类型确定为桥接数据类型。其中,目标分隔符是预先配置的用于分隔目标函数标识和关联函数标识的符号。本示例中,通过识别目标桥接通知,快速确定其桥接传递类型,以便根据桥接传递类型进行后续的数据处理。
作为一示例,步骤S603中,关联端在识别到目标桥接通知对应的桥接传递类型为桥接方法类型时,需从目标桥接通知中获取关联函数标识,关联函数标识用于确定需要在关联端执行的关联调用函数,以便在关联端直接执行关联调用函数,以实现函数方法传递,提高桥接层的桥接功能。
进一步地,关联端在识别到目标桥接通知对应的桥接传递类型为桥接方法类型时,需从目标桥接通知中获取目标函数标识、关联函数标识和函数执行顺序,依据函数执行顺序,若需要先在目标端执行目标调用函数时,关联端需监听桥接层是否接收到目标端上传的目标执行消息,只有在在监听到目标执行消息时,才会执行后续的步骤,即确定并执行关联函数标识对应的关联调用函数。
作为一示例,步骤S604中,由于关联端可访问挂载在浏览器上的全局字典,因此,关联端在从目标桥接通知中识别出关联函数标识时,可基于关联函数标识查询全局字典,确定与关联函数标识相对应的关联调用函数。
作为一示例,步骤S605中,关联端需执行与关联函数标识相对应的关联调用函数,并实时监听关联调用函数的执行状态,若关联调用函数的执行状态为执行完毕,则形成与关联函数标识相对应的关联执行消息,将关联执行消息上传到桥接层,以使目标端监听到桥接层上的关联执行消息之后,可执行后续操作,如依据函数执行顺序,相应执行在关联调用函数之后的目标调用函数。
本实施例所提供的应用程序交互方法中,关联端可监听并识别桥接层中的目标桥接通知,在确定目标桥接通知对应的桥接传递类型为桥接方法类型时,可确定桥接层传递的目标桥接通知为函数方法,可从目标桥接通知中确定关联函数标识,基于关联函数标识查询全局字典,确定并执行关联调用函数,将关联执行消息上传到桥接层,以实现利用目标桥接通知传递需要执行的调用函数,增强桥接层的功能,可有效减少函数调用过程中的代码逻辑,简化代码开发操作,改善传统桥接层桥接功能单一的问题,提高目标端和关联端的交互性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种应用程序交互装置,该应用程序交互装置与上述实施例中应用程序交互方法一一对应。如图7所示,该应用程序交互装置包括交互请求识别模块701、待传递数据获取模块702、目标桥接通知上传模块703和调用函数执行模块704。各功能模块详细说明如下:
交互请求识别模块701,用于使目标端接收交互请求,对交互请求进行识别,确定交互请求对应的交互传递类型;
待传递数据获取模块702,用于使目标端在交互传递类型为传递方法类型时,解析交互请求,获取待传递数据,待传递数据包括目标调用函数、关联调用函数和函数执行顺序;
目标桥接通知上传模块703,用于使目标端对目标调用函数、关联调用函数和函数执行顺序进行函数转换和拼接处理,获取目标桥接通知,将目标桥接通知上传到桥接层;
调用函数执行模块704,用于使目标端依据函数执行顺序,监听桥接层上传的关联端执行关联调用函数所形成的关联执行消息,并在目标端执行目标调用函数。
优选地,交互请求识别模块701,包括:
方法桥接标识识别单元,用于使目标端对交互请求进行识别,判断交互请求是否携带方法桥接标识;
传递方法类型确定单元,用于使目标端在交互请求携带方法桥接标识时,确定交互请求对应的交互传递类型为传递方法类型;
传递数据类型确定单元,用于使目标端在交互请求未携带方法桥接标识时,确定交互请求对应的交互传递类型为传递数据类型。
优选地,目标桥接通知上传模块703,包括:
函数标识查询单元,用于使目标端根据目标调用函数和关联调用函数,查询挂载在浏览器上的全局字典,确定目标调用函数对应的目标函数标识和关联调用函数对应的关联函数标识;
目标桥接通知获取单元,用于使目标端根据函数执行顺序,对目标函数标识和关联函数标识进行拼接,获取目标桥接通知。
优选地,应用程序交互装置还包括:
函数加载请求获取单元,用于使目标端获取函数加载请求,函数加载请求包括待加载调用函数对应的函数信息;
函数信息查询单元,用于使目标端基于待加载调用函数对应的函数信息查询全局字典,判断是否存在与待加载调用函数相同的已有配置调用函数;
调用函数加载单元,用于使目标端在不存在已有配置调用函数时,将待加载调用函数确定为新增配置调用函数,根据待加载调用函数对应的函数信息,确定新增配置调用函数对应的配置函数标识,基于新增配置调用函数和配置函数标识,形成全局键值对挂载到全局字典中。
优选地,应用程序交互装置还包括:
目标桥接通知监听模块,用于使关联端实时监听桥接层,获取目标端上传的目标桥接通知;
桥接传递类型确定模块,用于使关联端对目标桥接通知进行识别,获取目标桥接通知对应的桥接传递类型;
关联函数标识获取模块,用于使关联端在目标桥接通知对应的桥接传递类型为桥接方法类型时,从目标桥接通知中获取关联函数标识;
关联调用函数确定模块,用于使关联端基于关联函数标识查询挂载在浏览器上的全局字典,确定关联函数标识相对应的关联调用函数;
关联调用函数执行模块,用于使关联端执行关联调用函数,获取关联执行消息,将关联执行消息上传到桥接层中。
优选地,桥接传递类型确定模块,包括:
第一通知解析单元,用于使关联端对目标桥接通知进行解析,确定目标桥接通知对应的参数数量;
第一类型确定单元,用于使关联端在目标桥接通知对应的参数数量大于1时,将目标桥接通知对应的桥接传递类型确定为桥接方法类型;
第二类型确定单元,用于使关联端在目标桥接通知对应的参数数量等于1时,将目标桥接通知对应的桥接传递类型确定为桥接数据类型。
优选地,桥接传递类型确定模块,包括:
第二通知解析单元,用于使关联端对目标桥接通知进行解析,判断目标桥接通知是否包含目标分隔符;
第三类型确定单元,用于使关联端在目标桥接通知包含目标分隔符时,将目标桥接通知对应的桥接传递类型确定为桥接方法类型;
第四类型确定单元,用于使关联端在目标桥接通知不包含目标分隔符时,则将目标桥接通知对应的桥接传递类型确定为桥接数据类型。
关于应用程序交互装置的具体限定可以参见上文中对于应用程序交互方法的限定,在此不再赘述。上述应用程序交互装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储执行应用程序交互方法过程中采用或生成的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种应用程序交互方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中应用程序交互方法,例如图2所示S201-S204,或者图3至图6中所示,为避免重复,这里不再赘述。或者,处理器执行计算机程序时实现应用程序交互装置这一实施例中的各模块/单元的功能,例如图7所示的交互请求识别模块701、待传递数据获取模块702、目标桥接通知上传模块703和调用函数执行模块704的功能,为避免重复,这里不再赘述。
在一实施例中,提供一计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中应用程序交互方法,例如图2所示S201-S204,或者图3至图6中所示,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现上述应用程序交互装置这一实施例中的各模块/单元的功能,例如图7所示的交互请求识别模块701、待传递数据获取模块702、目标桥接通知上传模块703和调用函数执行模块704的功能,为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (10)

1.一种应用程序交互方法,其特征在于,包括:
目标端接收交互请求,对所述交互请求进行识别,确定所述交互请求对应的交互传递类型;
目标端在所述交互传递类型为传递方法类型时,解析所述交互请求,获取待传递数据,所述待传递数据包括目标调用函数、关联调用函数和函数执行顺序;
目标端对所述目标调用函数、所述关联调用函数和所述函数执行顺序进行函数转换和拼接处理,获取目标桥接通知,将所述目标桥接通知上传到桥接层;
目标端依据函数执行顺序,在关联调用函数的执行顺序先于目标调用函数的执行顺序时,目标端在将目标桥接通知上传到桥接层之后,实时监听桥接层是否接收到关联端执行关联调用函数之后形成的关联执行消息,目标端在监听到关联执行消息之后,确定关联端已经执行完关联调用函数之后,再执行目标调用函数,完成交互请求对应的交互操作;在目标调用函数的执行顺序先于关联调用函数的执行顺序时,目标端在将目标桥接通知上传到桥接层之后,先执行目标调用函数,获取目标执行消息,将目标执行消息上传到桥接层,以使关联端在监听到桥接层上存在目标执行消息之后执行关联调用函数,并将关联调用函数上传到桥接层,目标端在监听到桥接层中包含关联执行消息时,认定交互请求对应的交互操作完成;在目标调用函数和关联调用函数的执行顺序相同时,目标端在将目标桥接通知上传到桥接层之后,使目标端执行目标调用函数和关联端执行关联调用函数同时进行,目标端在监听到桥接层中包含关联执行消息且执行完目标调用函数时,认定交互请求对应的交互操作完成。
2.如权利要求1所述的应用程序交互方法,其特征在于,所述目标端接收交互请求,对所述交互请求进行识别,确定所述交互请求对应的交互传递类型,包括:
目标端对所述交互请求进行识别,判断所述交互请求是否携带方法桥接标识;
目标端在所述交互请求携带所述方法桥接标识时,确定所述交互请求对应的交互传递类型为传递方法类型;
目标端在所述交互请求未携带所述方法桥接标识时,确定所述交互请求对应的交互传递类型为传递数据类型。
3.如权利要求1所述的应用程序交互方法,其特征在于,所述目标端对所述目标调用函数、所述关联调用函数和所述函数执行顺序进行函数转换和拼接处理,获取目标桥接通知,包括:
目标端根据所述目标调用函数和所述关联调用函数,查询挂载在浏览器上的全局字典,确定所述目标调用函数对应的目标函数标识和所述关联调用函数对应的关联函数标识;
目标端根据所述函数执行顺序,对所述目标函数标识和所述关联函数标识进行拼接,获取所述目标桥接通知。
4.如权利要求1所述的应用程序交互方法,其特征在于,在所述目标端接收交互请求,对所述交互请求进行识别,确定所述交互请求对应的交互传递类型之前,所述应用程序交互方法包括:
目标端获取函数加载请求,所述函数加载请求包括待加载调用函数对应的函数信息;
目标端基于所述待加载调用函数对应的函数信息查询全局字典,判断是否存在与所述待加载调用函数相同的已有配置调用函数;
目标端在不存在所述已有配置调用函数时,将所述待加载调用函数确定为新增配置调用函数,根据所述待加载调用函数对应的函数信息,确定所述新增配置调用函数对应的配置函数标识,基于所述新增配置调用函数和所述配置函数标识,形成全局键值对挂载到所述全局字典中。
5.如权利要求1所述的应用程序交互方法,其特征在于,在所述目标端对所述目标调用函数、所述关联调用函数和所述函数执行顺序进行函数转换和拼接处理,获取目标桥接通知,将所述目标桥接通知上传到桥接层之后,所述应用程序交互方法还包括:
关联端实时监听桥接层,获取所述目标端上传的目标桥接通知;
关联端对所述目标桥接通知进行识别,获取所述目标桥接通知对应的桥接传递类型;
关联端在所述目标桥接通知对应的桥接传递类型为桥接方法类型时,从所述目标桥接通知中获取关联函数标识;
关联端基于所述关联函数标识查询挂载在浏览器上的全局字典,确定所述关联函数标识相对应的关联调用函数;
关联端执行所述关联调用函数,获取关联执行消息,将所述关联执行消息上传到桥接层中。
6.如权利要求5所述的应用程序交互方法,其特征在于,所述关联端对所述目标桥接通知进行识别,获取所述目标桥接通知对应的桥接传递类型,包括:
关联端对目标桥接通知进行解析,确定所述目标桥接通知对应的参数数量;
关联端在所述目标桥接通知对应的参数数量大于1时,将所述目标桥接通知对应的桥接传递类型确定为桥接方法类型;
关联端在所述目标桥接通知对应的参数数量等于1时,将所述目标桥接通知对应的桥接传递类型确定为桥接数据类型。
7.如权利要求5所述的应用程序交互方法,其特征在于,所述关联端对所述目标桥接通知进行识别,获取所述目标桥接通知对应的桥接传递类型,包括:
关联端对目标桥接通知进行解析,判断所述目标桥接通知是否包含目标分隔符;
关联端在所述目标桥接通知包含所述目标分隔符时,将所述目标桥接通知对应的桥接传递类型确定为桥接方法类型;若所述目标桥接通知不包含目标分隔符,则将所述目标桥接通知对应的桥接传递类型确定为桥接数据类型。
8.一种应用程序交互装置,其特征在于,包括:
交互请求识别模块,用于使目标端接收交互请求,对所述交互请求进行识别,确定所述交互请求对应的交互传递类型;
待传递数据获取模块,用于使目标端在所述交互传递类型为传递方法类型时,解析所述交互请求,获取待传递数据,所述待传递数据包括目标调用函数、关联调用函数和函数执行顺序;
目标桥接通知上传模块,用于使目标端对所述目标调用函数、所述关联调用函数和所述函数执行顺序进行函数转换和拼接处理,获取目标桥接通知,将所述目标桥接通知上传到桥接层;
调用函数执行模块,用于使目标端依据函数执行顺序,在关联调用函数的执行顺序先于目标调用函数的执行顺序时,目标端在将目标桥接通知上传到桥接层之后,实时监听桥接层是否接收到关联端执行关联调用函数之后形成的关联执行消息,目标端在监听到关联执行消息之后,确定关联端已经执行完关联调用函数之后,再执行目标调用函数,完成交互请求对应的交互操作;在目标调用函数的执行顺序先于关联调用函数的执行顺序时,目标端在将目标桥接通知上传到桥接层之后,先执行目标调用函数,获取目标执行消息,将目标执行消息上传到桥接层,以使关联端在监听到桥接层上存在目标执行消息之后执行关联调用函数,并将关联调用函数上传到桥接层,目标端在监听到桥接层中包含关联执行消息时,认定交互请求对应的交互操作完成;在目标调用函数和关联调用函数的执行顺序相同时,目标端在将目标桥接通知上传到桥接层之后,使目标端执行目标调用函数和关联端执行关联调用函数同时进行,目标端在监听到桥接层中包含关联执行消息且执行完目标调用函数时,认定交互请求对应的交互操作完成。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述应用程序交互方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述应用程序交互方法。
CN202110428582.3A 2021-04-21 2021-04-21 应用程序交互方法、装置、计算机设备及存储介质 Active CN113076151B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110428582.3A CN113076151B (zh) 2021-04-21 2021-04-21 应用程序交互方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110428582.3A CN113076151B (zh) 2021-04-21 2021-04-21 应用程序交互方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN113076151A CN113076151A (zh) 2021-07-06
CN113076151B true CN113076151B (zh) 2023-10-10

Family

ID=76618214

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110428582.3A Active CN113076151B (zh) 2021-04-21 2021-04-21 应用程序交互方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN113076151B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014022980A1 (en) * 2012-08-08 2014-02-13 Intel Corporation Isa bridging including support for call to overidding virtual functions
CN104516740A (zh) * 2013-09-26 2015-04-15 腾讯科技(深圳)有限公司 一种函数调用方法、装置及移动终端
CN108228365A (zh) * 2017-12-28 2018-06-29 杭州马猴烧韭科技有限公司 一种函数请求发送方法、函数请求调用方法及装置
CN109857515A (zh) * 2018-12-20 2019-06-07 深圳前海微众银行股份有限公司 桥接通信方法、装置、设备及计算机可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080148277A1 (en) * 2006-12-18 2008-06-19 Nokia Corporation Optimizing calls from a managed runtime environment to microkernel extended functionality

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014022980A1 (en) * 2012-08-08 2014-02-13 Intel Corporation Isa bridging including support for call to overidding virtual functions
CN104516740A (zh) * 2013-09-26 2015-04-15 腾讯科技(深圳)有限公司 一种函数调用方法、装置及移动终端
CN108228365A (zh) * 2017-12-28 2018-06-29 杭州马猴烧韭科技有限公司 一种函数请求发送方法、函数请求调用方法及装置
CN109857515A (zh) * 2018-12-20 2019-06-07 深圳前海微众银行股份有限公司 桥接通信方法、装置、设备及计算机可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
面向智能移动终端的应用引擎系统;袁卉欣;叶德建;;微型电脑应用(09);第15-18页 *

Also Published As

Publication number Publication date
CN113076151A (zh) 2021-07-06

Similar Documents

Publication Publication Date Title
CN107800565B (zh) 巡检方法、装置、系统、计算机设备和存储介质
CN111143163B (zh) 数据监控方法、装置、计算机设备和存储介质
CN108696581B (zh) 分布式信息的缓存方法、装置、计算机设备以及存储介质
CN110737668B (zh) 数据存储方法、数据读取方法、相关设备及介质
CN109547524B (zh) 基于物联网的用户行为存储方法、装置、设备及存储介质
CN110750222A (zh) 打印方法、装置、计算机设备和存储介质
WO2019051948A1 (zh) 监控数据的处理方法、设备、服务器及存储介质
CN111756674A (zh) 网络通信方法、系统、设备及计算机可读存储介质
CN108446172B (zh) 数据调取方法、装置、计算机设备和存储介质
CN111683066A (zh) 异构系统集成方法、装置、计算机设备和存储介质
CN108595280B (zh) 接口适配方法、装置、计算机设备和存储介质
CN110460668B (zh) 一种文件上传方法、装置、计算机设备和存储介质
CN108733545B (zh) 一种压力测试方法及装置
CN107509097B (zh) 视频分享方法、装置及分享服务器
CN112637887B (zh) Ipran设备巡检方法、装置、设备、介质及产品
CN113076151B (zh) 应用程序交互方法、装置、计算机设备及存储介质
CN111200519B (zh) 数据处理方法、装置、bbu、接入网设备和存储介质
CN110198349B (zh) 文件传输方法和装置、存储介质及电子装置
CN114168876A (zh) 页面显示方法、装置、计算机设备及计算机可读存储介质
CN114679472A (zh) 通信系统、方法、装置、存储介质及电子设备
KR102077093B1 (ko) 사용자 단말기로부터 수신되는 이미지를 다른 사용자 단말기에 공유하기 위한 장치 및 방법
CN111324654A (zh) 接口调用方法、系统、计算机设备及计算机可读存储介质
CN117544938B (zh) 无线麦克风的配对方法、装置、设备及存储介质
CN110018942A (zh) 应用程序使用信息管理系统、方法、装置及计算机设备
CN117155890B (zh) 小程序消息处理方法、装置及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20230908

Address after: Room 820, 8th floor, No. 390-408 Beijing East Road, Huangpu District, Shanghai, 200000

Applicant after: Guangyulaite Digital Technology (Shanghai) Co.,Ltd.

Address before: 518000 Room 202, block B, aerospace micromotor building, No.7, Langshan No.2 Road, Xili street, Nanshan District, Shenzhen City, Guangdong Province

Applicant before: Shenzhen LIAN intellectual property service center

Effective date of registration: 20230908

Address after: 518000 Room 202, block B, aerospace micromotor building, No.7, Langshan No.2 Road, Xili street, Nanshan District, Shenzhen City, Guangdong Province

Applicant after: Shenzhen LIAN intellectual property service center

Address before: 518000 Room 201, building A, 1 front Bay Road, Shenzhen Qianhai cooperation zone, Shenzhen, Guangdong

Applicant before: PING AN PUHUI ENTERPRISE MANAGEMENT Co.,Ltd.

GR01 Patent grant
GR01 Patent grant