CN110309006B - Function calling method and device, terminal equipment and storage medium - Google Patents

Function calling method and device, terminal equipment and storage medium Download PDF

Info

Publication number
CN110309006B
CN110309006B CN201910580582.8A CN201910580582A CN110309006B CN 110309006 B CN110309006 B CN 110309006B CN 201910580582 A CN201910580582 A CN 201910580582A CN 110309006 B CN110309006 B CN 110309006B
Authority
CN
China
Prior art keywords
program
protocol data
function
called
jump protocol
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
CN201910580582.8A
Other languages
Chinese (zh)
Other versions
CN110309006A (en
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910580582.8A priority Critical patent/CN110309006B/en
Publication of CN110309006A publication Critical patent/CN110309006A/en
Application granted granted Critical
Publication of CN110309006B publication Critical patent/CN110309006B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • G06F9/4486Formation of subprogram jump address
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Stored Programmes (AREA)

Abstract

The embodiment of the invention discloses a function calling method, a function calling device, terminal equipment and a storage medium. The method comprises the following steps: when detecting a function calling triggering operation in a current application program interface, generating jump protocol data based on the function calling triggering operation; and sending the jump protocol data to a sharable routing service module installed in the current terminal equipment operating system through the cross-process communication module, determining at least one target program for realizing the called function based on the jump protocol data through the routing service module, and sending the jump protocol data to each target program so that the target program executes the called function based on the jump protocol data. By adopting the technical scheme of the embodiment of the invention, the function called by executing at least one target program is called simultaneously, and a user does not need to manually select and trigger a plurality of application programs, so that the flexibility and the expansibility of the application programs are improved, and the interoperability, the diversity, the comprehensiveness and the comprehensiveness of function calling are further improved.

Description

Function calling method and device, terminal equipment and storage medium
Technical Field
The embodiment of the invention relates to the technical field of computers, in particular to a function calling method, a function calling device, terminal equipment and a storage medium.
Background
At present, mobile terminals (such as smart phones and tablet computers) have become indispensable intelligent devices in daily life and work due to the convenience in carrying and high operation speed. Various Applications (APPs) generated depending on the mobile terminal are also changing day by day, and through popularization and use of the APPs, life styles of people are effectively changed.
In the prior art, when a single APP is accessed, the current APP needs to be called by directly triggering the current APP or by triggering other APP pages, and the called APP enters a functional interface. Accordingly, when accessing multiple APPs for the same or similar functionality, the user is required to manually make a selection of the multiple corresponding APPs (current APP and/or other APPs).
Therefore, the technical scheme in the prior art is difficult to automatically realize synchronous startup of multiple APPs with the same or similar functions, so that the diversified demands of different scenes cannot be adapted, and the use experience of a user is reduced.
Disclosure of Invention
The invention provides a function calling method, a function calling device, terminal equipment and a storage medium, which are used for automatically realizing synchronous calling of multiple APPs with the same or similar functions so as to adapt to diversified requirements of a function calling scheme under different scenes.
In a first aspect, an embodiment of the present invention provides a function calling method, including:
when a function calling triggering operation is detected in a current application program interface, generating jump protocol data based on the function calling triggering operation;
sending the jump protocol data to a routing service module through a cross-process communication module, so as to determine at least one target program for realizing the called function based on the jump protocol data through the routing service module, and sending the jump protocol data to each target program, so that the target program executes the called function based on the jump protocol data;
the routing service module is a sharable program module installed in the current terminal equipment operating system.
In a second aspect, an embodiment of the present invention further provides a function calling apparatus, including:
the system comprises a skip protocol generation module, a function call trigger operation generation module and a skip protocol generation module, wherein the skip protocol generation module is used for generating skip protocol data based on the function call trigger operation when the function call trigger operation is detected in a current application program interface;
a skip protocol sending module, configured to send the skip protocol data to a routing service module through a cross-process communication module, so as to determine, through the routing service module, at least one target program that implements a called function based on the skip protocol data, and send the skip protocol data to each target program, so that the target program executes the called function based on the skip protocol data;
the routing service module is a sharable program module installed in the current terminal equipment operating system.
In a third aspect, an embodiment of the present invention further provides a terminal device, including:
one or more processors;
a memory for storing one or more programs;
when the one or more programs are executed by the one or more processors, the one or more processors implement a function calling method as provided in an embodiment of the first aspect.
In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements a function calling method as provided in the embodiment of the first aspect.
According to the embodiment of the invention, when the function calling triggering operation is detected in the current application program interface, the jump protocol data is generated based on the function calling triggering operation; and sending the jump protocol data to the routing service module through the cross-process communication module, determining at least one target program for realizing the called function based on the jump protocol data through the routing service module, and sending the jump protocol data to each target program so that the target program executes the called function based on the jump protocol. The routing service module is a sharable program module installed in the terminal device operating system. According to the technical scheme, the routing service module arranged in the current terminal equipment operating system is used for simultaneously calling the function called by executing at least one target program, a user does not need to manually select and trigger a plurality of application programs, the flexibility and the expansibility of the application programs are improved, and further the interoperability, the diversity, the comprehensiveness and the comprehensiveness of function calling are improved.
Drawings
Fig. 1 is a flowchart of a function calling method according to a first embodiment of the present invention;
FIG. 2 is a flowchart of a function calling method according to a second embodiment of the present invention;
FIG. 3A is a flowchart of a function calling method according to a third embodiment of the present invention;
fig. 3B is a schematic structural framework diagram of a terminal device in the third embodiment of the present invention;
FIG. 4 is a flow chart of a function calling method in the fourth embodiment of the present invention;
FIG. 5A is a flowchart of a function calling method according to a fifth embodiment of the present invention;
fig. 5B is a schematic diagram illustrating an SDK call of a voice broadcast service in a fifth embodiment of the present invention;
fig. 5C is a schematic diagram of a voice broadcast service SDK reverse call in a fifth embodiment of the present invention;
fig. 6 is a structural diagram of a function calling apparatus according to a sixth embodiment of the present invention;
fig. 7 is a schematic structural diagram of a terminal device according to a seventh embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention. It should be further noted that, for the convenience of description, only some of the structures related to the present invention are shown in the drawings, not all of the structures.
Example one
Fig. 1 is a flowchart of a function calling method according to a first embodiment of the present invention. The method is executed by a function calling device, the device is realized by software and/or hardware, and is specifically configured in terminal equipment with certain data operation capability. The terminal equipment can be mobile terminals such as smart phones, tablet computers and personal computers, and can also be fixed equipment such as desktop computers.
A function call method as shown in fig. 1, comprising:
s110, when the function call triggering operation is detected in the current application program interface, generating jump protocol data based on the function call triggering operation.
The current application program is any application program installed in the terminal equipment, and the terminal equipment displays an interface of the current application program.
The jump protocol data comprises protocol data followed when page jump operation is executed and parameter information of a called function, and is used for realizing jump among different interfaces in the same program and also realizing interface jump among different programs. The parameter information includes a target program identifier corresponding to the called function, a page identifier corresponding to the skipped target page, and the like. Illustratively, the hopping protocol data may be custom extension protocol data of class Scheme.
Displaying a current application program interface in the terminal equipment, determining a called function and parameter information of the called function based on the called function triggering operation when a user executes the function calling triggering operation on the current application program interface, and generating a function calling instruction according to the called function and the parameter information of the called function; and when detecting a function call instruction corresponding to the function call trigger operation in the current application program interface, generating jump protocol data based on the received function call instruction.
The function calling triggering operation executed by the user can be a voice instruction sending operation, a screen touch operation, a command line input operation or the like for function calling; accordingly, the generated function call instruction may be a voice command for function call, a touch operation to a screen, or an input command line, etc.
S120, the jump protocol data is sent to a routing service module through a cross-process communication module, so that at least one target program for realizing the called function is determined through the routing service module based on the jump protocol data, and the jump protocol data is sent to each target program, so that the target program executes the called function based on the jump protocol data.
The target program can be arranged in the current application program, and can also exist independently of the application program. Illustratively, the target program may be at least one of an application program, a component set in the current application program, a plug-in, an applet, and a service program SDK (Software Development Kit) for providing a setting service; the service program SDK is a sharable program module installed in the current terminal equipment operating system. Illustratively, the setting service may include at least one of a voice broadcasting service, a downloading service, and a music service, etc.
The cross-process communication module is used for realizing data transmission between program modules running in different processes. The cross-process communication module comprises an AIDL module or a Bundle module and the like.
The routing service module is a sharable program module installed in the current terminal device operating system and is used for transmitting data to the target program by the proxy application program and screening the target program according to the user requirement. Optionally, the routing service module is encapsulated in the SDK. Illustratively, the routing service module may be encapsulated in a JAR (Java Archive) bundle of files, or an AAR (Android Archive, binary Archive of Android library items) bundle of files.
In the step, after the jump protocol data is generated, the cross-process communication module sends the jump protocol data to the routing service module; the routing service module receives the jump protocol data, determines at least one target program for realizing the called function based on the jump protocol data, and sends the jump protocol data to the determined at least one target program; and after receiving the jump protocol data, the target program executes the called function based on the jump protocol data.
Illustratively, the target program executing the called function based on the jump protocol data may be: the target program executes the called function based on the parameter information of the called function contained in the jump protocol data, and the called function comprises: at least one of a page opening operation, an information search operation, a data download operation, a garbage cleaning operation, and a mobile phone acceleration operation.
The routing service module in the embodiment of the invention exists independently of the application program and is directly installed in the operating system of the current terminal equipment. Therefore, the embodiment of the invention can realize synchronous scheduling management of the function calling mechanisms of a plurality of application programs, namely realize synchronous calling of a plurality of target programs corresponding to different application programs.
In order to enable the routing service module to adapt to different function call scenarios and ensure smooth execution of the called function in each scenario, in an optional implementation manner of the embodiment of the present invention, the version of the routing service module may also be updated and upgraded.
Illustratively, an update upgrade package can be obtained from a server at regular time, and the downloaded update upgrade package is used for upgrading the routing service module; and/or when the version number of the routing service module needing to be called is determined to be higher than the version number of the current routing service module, acquiring an update package from the service end, and upgrading the routing service module by using the downloaded update package. Certainly, the update upgrade package of the routing service module can be subjected to cloud storage, and the upgrade processing of the routing service module is realized through cloud acquisition of the update upgrade package and local upgrade of the terminal device.
According to the embodiment of the invention, when the function calling triggering operation is detected in the current application program interface, the jump protocol data is generated based on the function calling triggering operation; and sending the jump protocol data to the routing service module through the cross-process communication module, determining at least one target program for realizing the called function based on the jump protocol data through the routing service module, and sending the jump protocol data to each target program so that the target program executes the called function based on the jump protocol. The routing service module is a sharable program module installed in the terminal device operating system. According to the technical scheme, the routing service module arranged in the current terminal equipment operating system is used for simultaneously calling the function called by executing at least one target program, a user does not need to manually select and trigger a plurality of application programs, the flexibility and the expansibility of the application programs are improved, and further the interoperability, the diversity, the comprehensiveness and the comprehensiveness of function calling are improved.
Example two
Fig. 2 is a flowchart of a function calling method in the second embodiment of the present invention, and the second embodiment of the present invention performs optimization and improvement on the basis of the technical solutions of the above embodiments.
Further, the target program comprises a service program SDK, correspondingly, the operation that the called function executed by the target program based on the jump protocol data is refined into the operation that other programs needed to be used when the called function is executed are determined based on the parameter information of the called function contained in the jump protocol data, and the jump protocol data is sent to the other programs, so that the other programs execute the called function based on the jump protocol data, so as to perfect a function calling mechanism for realizing the called function when the target program is the service program SDK.
A function calling method as shown in fig. 2, comprising:
s210, when detecting a function call triggering operation in the current application program interface, generating jump protocol data based on the function call triggering operation.
S220, sending the jump protocol data to a routing service module through a cross-process communication module, determining at least one target program for realizing the called function based on the jump protocol data through the routing service module, and sending the jump protocol data to each target program; wherein the object program comprises a service program SDK.
The routing service module is a sharable program module installed in the current terminal equipment operating system.
And after the routing service module determines at least one target program for realizing the called function based on the jump protocol data, sending the jump protocol data to each target program. The target program receives the jump protocol data and executes the called function based on the parameter information of the called function contained in the jump protocol data.
When the determined target program includes the service program SDK, the called function may not be realized by the service program SDK itself, and the called function may need to be assisted by another program. Under the condition, the service program SDK determines other programs needed to be used when the called function is executed based on the parameter information of the called function contained in the jump protocol data; the service program SDK sends the jump protocol data to the determined other program to cause the other program to execute the called function based on the received jump protocol data.
Optionally, the other programs that need to be used when the called function is executed are determined based on the parameter information of the called function included in the jump protocol data, which may be programs corresponding to the parameter information of the called function included in the jump protocol data and determined programs as the other programs that need to be used when the called function is executed based on a preset rule base; wherein, the rule base records the corresponding relation between each program identification and parameter information in the current terminal equipment. Wherein, the program identifier in the rule base includes identifiers of all program modules installed in the current terminal device, and the program modules include: the system comprises an application program, a component, a plug-in, an applet and a service program SDK for providing set service, wherein the component, the plug-in, the applet and the service program SDK are arranged in the current application program.
The rule base can be pre-constructed in the local of the terminal device, other storage devices associated with the terminal device or the cloud. Correspondingly, when the program needs to be determined through the rule base, the related content in the rule base is searched and obtained from the local terminal equipment, other storage equipment or cloud end associated with the terminal equipment in advance. The corresponding relation between each program identifier and the parameter information in the rule base can be set by developers or managers of the application programs according to development requirements, and can be constructed in a user-defined mode according to the use requirements of users.
It can be understood that, since the service program SDK is a sharable program module installed in the current terminal device operating system, the service program SDK may be called by different application programs in different function calling scenarios. In order to enable the service program SDK to adapt to different function call scenarios and ensure smooth execution of the called function in each scenario, in an optional implementation manner of the embodiment of the present invention, the version of the service program SDK may also be updated and upgraded.
Illustratively, an update upgrade package can be obtained from a server at regular time, and the downloaded update upgrade package is used for upgrading the service program SDK; and/or when the version number of the service program SDK to be called is higher than the version number of the locally installed service program SDK, acquiring an update upgrade package from the service end, and upgrading the locally installed service program SDK by using the downloaded update package.
When the target program comprises the service program SDK, the method and the device for executing the called function of the target program based on the jump protocol data refine the operation of the target program based on the jump protocol data to parameter information based on the called function contained in the jump protocol data, determine other programs needed to be used when the called function is executed, and send the jump protocol data to the other programs so that the other programs execute the called function based on the jump protocol data. According to the technical scheme, the service program SDK is used for determining other programs, the other programs are adopted to assist the service program SDK in realizing the called function, the function calling mechanism of the current application program to the service program SDK is further improved, the condition that the called function cannot be realized by calling the service program SDK is avoided, the function of the current application program is further improved, and meanwhile the use experience of a user is improved.
EXAMPLE III
Fig. 3A is a flowchart of a function calling method in the third embodiment of the present invention, and the third embodiment of the present invention performs optimization and improvement on the basis of the technical solutions of the foregoing embodiments.
Further, after the operation of executing the called function based on the jump protocol data by the target program, additionally returning function execution result data to the application program by the target program to display the received function execution result data in the application program interface, so as to realize centralized display of the function execution result data.
A function calling method as shown in fig. 3A, comprising:
s310, when the function calling triggering operation is detected in the current application program interface, generating jump protocol data based on the function calling triggering operation.
Illustratively, when a voice command for function call, a touch operation on a screen, or an input command line is detected while the terminal device displays a current application program interface, jump protocol data is generated based on a function call trigger operation.
The description is made by referring to the schematic structural framework diagram of the terminal device shown in fig. 3B.
The terminal device comprises a detection module, a cross-process communication module, a sharable routing service module and a display module which are installed in an operating system, and each application program and target program.
Displaying an application program interface, and generating a function calling instruction by inputting a voice command, executing a specific touch operation on a screen or inputting a corresponding command line when a user has a function calling requirement; when the detection module detects that a certain application program interface is generated by the function calling instruction, jump protocol data are generated based on the function calling instruction.
S320, sending the jump protocol data to a routing service module through a cross-process communication module, determining at least one target program for realizing the called function based on the jump protocol data through the routing service module, and sending the jump protocol data to each target program so that the target program executes the called function based on the jump protocol data.
S330, the target program returns the function execution result data to the application program so as to display the received function execution result data in the application program interface.
Wherein, the type of the function execution result data comprises: at least one of teletext layout data, notification messages, video, audio, and web pages.
Illustratively, the displaying of the received function execution result data in the application program interface may be: and processing the function execution result data returned by each target program, packaging the processed data in a view control, and displaying the data through the view control.
Optionally, the function execution result data returned by each target program may be processed by performing format conversion on the function execution result data returned by each target program, so that the function execution result data after format conversion can be normally displayed in an application program interface.
Optionally, the function execution result data returned by each target program is processed, and the function execution result data returned by each target program may also be sorted by using at least one of the following manners, so as to display the sorted function execution result data in an application program interface: sequencing the execution result data of each function according to the preset priority of each target program; clustering analysis is carried out on the data of the execution result of each function, and the data of the execution result of each function are sequenced according to the clustering result; and sequencing the function execution result data so that the function execution result data returned by different target programs are uniformly distributed in the view control of the application program interface.
Optionally, the function execution result data returned by each target program is processed, or the function execution result data may be filtered through a preset blacklist, and/or the function execution result data may be screened according to a preset white list. The content included in the black list and/or the white list may be a target program identifier, or an execution result identifier corresponding to the function execution result data. The content included in the black list and the white list can be automatically determined according to the historical operation of the user, and can be manually added or deleted by the user.
Continuing with the foregoing example, referring to fig. 3B, the cross-process communication module sends the generated jump protocol data to the sharable routing service module installed in the operating system; the routing service module receives the jump protocol data and determines at least one target program for realizing the called function based on the jump protocol data; the target program may be at least one of an application program, a plug-in provided in the application program, an applet, and a service program SDK for providing a setting service.
If the determined at least one target program is located in the local system and the target program and the application program support the same process, directly calling the target program and sending jump protocol data to the target program; if the determined at least one target program is located in the local system and the target program and the application program support cross-process, calling up the target program through a cross-process communication module in the terminal device, such as an Android Interface Definition Language (AIDL) module, and sending jump protocol data to the target program through the cross-process communication module, such as the AIDL module; and if the determined at least one target program is positioned at the server, sending the jump protocol data to the target program by sending a network request message to the server.
And the target program receives the jump protocol data and executes the called function to obtain function execution result data based on the parameter information of the called function contained in the jump protocol data. It can be understood that, when the target program is located in the local system, the obtained function execution result data is fed back in an interface form, and accordingly, when the display module of the application program receives the function execution result data, the function execution result data can be directly displayed in the interface of the application program through the display module; when the target program is located at the server, the obtained function execution result data is fed back in a webpage form, and correspondingly, when the display module of the application program receives the function execution result data, the webpage can be constructed based on HTML5(Hyper Text Markup Language 5), and the webpage is displayed in the interface of the application program through the display module.
According to the embodiment of the invention, after the target program executes the called function based on the jump protocol data, the target program additionally returns the function execution result data to the application program, so that the received function execution result data is displayed in the application program, the centralized display of the function execution result data is realized, the simultaneous display of a plurality of target programs is avoided, the unified management of each function execution result data by a user is facilitated, and because the contents displayed on the application program interface are simultaneously from different target programs, the contents displayed on the application program interface are more comprehensive, the display effect of a page is improved, the functions of the application program are further enriched, and the use experience of the user is improved.
In another optional implementation manner of the embodiment of the present invention, in order to facilitate a user to conveniently obtain detailed content of function execution result data, after the receiving of the function execution result data is displayed in the application program interface, the method further includes: if the triggering operation of the displayed function execution result data is detected, determining a target program corresponding to the triggered function execution result data; if the target program is located in a local system, entering a page of the target program; and if the target program is positioned at the server, sending a data request to the server to acquire and display page data returned by the server.
It can be understood that, since the function execution result data of different target programs are collectively displayed in the application program interface, in view of the limited content displayed on a single page of the terminal device, the function execution result data that would be displayed in the application program interface generally only relates to the main information or the summary information. When a user triggers the interested content in the function execution result data displayed by the application program interface, the triggering operation of the displayed function execution result data is detected, and then the target program corresponding to the function execution result data triggered by the user is determined and the related page of the determined target program is displayed.
Because the target program corresponding to the application program can be located in the local system of the terminal device and can also be located in the server, after the target program is determined, the location of the determined target program is also determined. For example, the location of the target program may be determined according to whether the package name of the target program is stored in the terminal device local system. When the target program is located in the local system, the page of the target program can be directly accessed to display the corresponding page. When the target program is positioned at the server, sending a data request to the server; after receiving the data request, the server determines a page to be displayed according to the data request, and feeds back page data in the page to be displayed; and receiving and displaying the page data fed back by the server.
Example four
Fig. 4 is a flowchart of a function calling method in the fourth embodiment of the present invention, and the fourth embodiment of the present invention performs optimization and improvement on the basis of the technical solutions of the foregoing embodiments.
Further, the operation of sending the jump protocol data to each target program is refined into a step of calling the target program in a cross-process mode through a cross-process communication module such as an android interface definition language AIDL module aiming at the target program in a local system in the at least one target program, and the jump protocol data is sent to the target program; and/or aiming at the target program located at the server side in the at least one target program, sending the jump protocol data to the target program by sending a network request message to the server side so as to perfect a sending mechanism of the jump protocol data.
A function calling method as shown in fig. 4, comprising:
s410, when the function calling triggering operation is detected in the current application program interface, generating jump protocol data based on the function calling triggering operation.
S420, sending the jump protocol data to a routing service module through a cross-process communication module, so as to determine at least one target program for realizing the called function based on the jump protocol data through the routing service module, and sending the jump protocol data to each target program, so that the target program executes the called function based on the jump protocol data; the at least one target program comprises a target program located in a local system and/or a server.
The routing service module is a sharable program module installed in the current terminal equipment operating system.
Optionally, the determining, based on the jump protocol data, at least one target program for implementing the called function may be that the routing service module determines, based on target program identification information included in the jump protocol data, at least one target program for implementing the called function.
Illustratively, the target program identification information may be determined when the user performs a function call trigger operation and added to the jump protocol data. For example, at least one target program is selected in an application program interface, at least one target program identification is added in an input voice command, or at least one target program identification is input in an input command line, so that the selection range of the target program corresponding to the current function call trigger operation is limited.
Illustratively, the target program identification information may also be obtained by matching according to a preset cloud service priority policy corresponding to the application program, and added to the jump protocol data. The cloud service priority policy can be determined by user definition, and can also be determined by application program developers or managers according to needs or experience values.
Or optionally, determining at least one target program for implementing the called function based on the jump protocol data, or sending a broadcast message carrying the jump protocol data by the routing service module, so that the program receiving the broadcast message determines whether the program has the capability of executing the called function according to parameter information of the called function contained in the jump protocol data; if yes, returning a confirmation message; and taking the program which returns the confirmation message as the target program.
Specifically, the routing service module sends broadcast information carrying skip protocol data; analyzing and acquiring parameter information of a called function contained in jump protocol data in the broadcast information by a program receiving the broadcast message; the program receiving the broadcast message determines whether the program has the capability of executing the called function according to the acquired parameter information; the program with the function capability of executing the called function feeds back confirmation information to the routing service module; and the routing service module determines the program for feeding back the confirmation information as a target program.
Or optionally, at least one target program for implementing the called function is determined based on the jump protocol data, or a program corresponding to parameter information of the called function included in the jump protocol data is determined based on a preset mapping relation table, and the determined program is used as the target program. Wherein, the mapping relation table records the corresponding relation between each program identifier in the current terminal equipment and the parameter information. Wherein, the program identifier in the mapping relation table includes identifiers of all program modules installed in the current terminal device, and all program modules include: the system comprises an application program, a component, a plug-in, an applet and a service program SDK for providing set service, wherein the component, the plug-in, the applet and the service program SDK are arranged in the current application program.
The mapping relation table may be pre-stored in the local storage of the terminal device, other storage devices associated with the terminal device, or a cloud. Correspondingly, when the mapping relation table needs to be used, the mapping relation table is obtained from the local terminal equipment, other storage equipment or cloud end associated with the terminal equipment in advance. The corresponding relation between each program identifier and the parameter information in the mapping relation table can be set by developers or managers of the current application program according to development requirements, and can be constructed in a user-defined mode according to the use requirements of users.
Specifically, after receiving the jump protocol data, the routing service module acquires parameter information of a called function in the jump protocol data; searching and determining a program identifier corresponding to the parameter information of the called function in a preset mapping relation table corresponding to the current terminal equipment; and taking the subprogram corresponding to the determined program identification as a target program.
Illustratively, when the called function includes a page opening operation, the corresponding parameter information includes identification information of the opened page, a page opening protocol and the like; when the called function comprises information searching operation, the corresponding parameter information comprises searching keywords, searching protocols and the like; when the called function comprises data downloading operation, the corresponding parameter information comprises downloaded content identification, downloading protocol and the like; the called function comprises garbage cleaning operation, and the parameter information of the corresponding called function comprises a garbage identifier to be cleaned, a cleaning protocol and the like; the called function comprises acceleration operation of the mobile phone, and the parameter information of the corresponding called function comprises an application identifier to be accelerated, an acceleration protocol and the like.
In an optional implementation manner of the embodiment of the present invention, for a target program located in a local system in the at least one target program, the target program is directly invoked with a process, and the jump protocol data is sent to the target program.
In another optional implementation manner of the embodiment of the present invention, for a target program located in a local system in the at least one target program, the target program is invoked in a cross-process manner through a cross-process communication module, such as an aid id l module, and the jump protocol data is sent to the target program.
In yet another optional implementation manner of the embodiment of the present invention, for a target program located at a server in the at least one target program, the jump protocol data is sent to the target program by sending a network request message to the server.
The method and the device have the advantages that the sending operation of the jump protocol data is refined into a target program for a local system, the target program is called in a cross-process mode through a cross-process communication module such as an AIDL module, and the jump protocol data is sent to the target program; aiming at the target program at the server, the jump protocol data is sent to the target program by sending the network request message to the server, so that the sending mechanism of the jump protocol data of different target programs is perfected, the jump protocol data are adapted to different categories of the target program corresponding to the current application program, the function calling scheme of the current application program is further perfected, and the user experience is improved.
EXAMPLE five
Fig. 5A is a flowchart of a function calling method in the fourth embodiment of the present invention, and the embodiment of the present invention performs optimization and improvement on the basis of the technical solutions of the foregoing embodiments.
Further, before or after executing the function calling method, adding' when detecting a function calling triggering operation in a target program interface, generating jump protocol data based on the function calling triggering operation; and sending the jump protocol data to a routing service module through a cross-process communication module, determining an application program for realizing the called function based on the jump protocol data through the routing service module, and sending the jump protocol data to the application program, so that the application program executes the called function based on the jump protocol data, and the reverse calling of the target program to the application program is realized.
A function calling method as shown in fig. 5A, includes:
s510, when a function call triggering operation is detected in the current application program interface, generating jump protocol data based on the function call triggering operation.
Taking an example of opening a specified service function of a voice broadcast service (target program) by using an assistant (application program), an exemplary description is given by referring to a schematic diagram of invoking a voice broadcast service SDK shown in fig. 5B.
When the trigger operation of the specified service function of the voice broadcast service is detected in the Baidu helper interface, the service calling module (ServiceCaller) in the Baidu helper generates jump protocol data according to the protocol followed by the voice broadcast function, the called target program identification and the service function identification of the specified service function.
Illustratively, if the protocol followed by the voice broadcasting function is "fork" protocol, the called target program is identified as "com.baidu.ttsplugin", and the function identification of the specified service function is "/tts/Speak", the jump protocol data generated by the service calling module (servicecall) in the hundred helper is "fork:// com.baidu.ttsplugin/tts/Speak". In order to facilitate data transmission between different modules, the generated jump protocol data is generally custom extension protocol data similar to Scheme. It will be appreciated that the type and content of the jump protocol data may be further extended for other complex scenarios.
S520, the jump protocol data is sent to a routing service module through a cross-process communication module such as an AIDL module, so that at least one target program for realizing the called function is determined through the routing service module based on the jump protocol data, and the jump protocol data is sent to each target program, so that the target program executes the called function based on the jump protocol data.
The routing service module is a sharable program module installed in the current terminal equipment operating system.
Jump protocol data 'fork:// com.baidu.ttsplugin/tts/Speak' generated by a service calling module (serviceCaller) is sent to a routing service module (CallRouter) of the fork SDK through a cross-process communication module. And the routing service module analyzes the jump protocol data to obtain the parameter information of the called function, including the target program identifier called by com. When the voice broadcast service SDK is installed in a local system of the terminal device, the voice broadcast service SDK is called across processes through the AIDL module to generate corresponding data, and the generated data is dispatched to a service routing module (ServiceRouter) of the voice broadcast service SDK to carry out calling and execution of specific paths of subsequent service functions such as "/tts/Speak" and the like so as to provide corresponding services.
S530, when the function calling triggering operation is detected in the target program interface, generating jump protocol data based on the function calling triggering operation.
The function call trigger operation detected in the target program interface may be a function call trigger operation automatically triggered and generated by the target program. For example, when the target program is a voice memo plug-in corresponding to the application program, and when a current reminding event recorded in the voice memo plug-in meets a set reminding condition and an event needs to be reminded, a function call trigger operation is generated according to a reminding message corresponding to the current reminding event, so that the current reminding event is reminded through the application program. For another example, when the target program is a downloading program corresponding to the application program, and after the downloading operation executed by the downloading program is completed, and it is necessary to prompt the user whether to perform subsequent operations such as starting or installing on the downloaded content, a function call trigger operation is generated according to the downloading completion information, so as to display the downloading completion information through the application program, and further prompt the user to perform subsequent processing such as starting or installing on the downloaded content.
Taking an example of downloading services such as opening an encyclopedia assistant (application program) to perform database rule files through a voice broadcast service SDK (target program), an example will be described with reference to the schematic diagram of reverse call of the voice broadcast service SDK shown in fig. 5C.
When a voice broadcast Service (SDK) installed in a local system of the terminal device detects a downloading instruction of a database rule file of the Baidu helper, a service calling module (ServiceCaller) in the SDK generates jump protocol data according to a protocol followed by a voice broadcast function, a called application program identifier and a service function identifier of a specified service function.
Illustratively, if the protocol followed by the voice broadcast function is "fork" protocol, the called application program is identified as "com. In order to facilitate data transmission between different modules, the generated hopping protocol data is generally Scheme protocol data. It will be appreciated that the type and content of the jump protocol data may be further extended for other complex scenarios.
S540, sending the jump protocol data to a routing service module through a cross-process communication module, such as an aid dl module, so as to determine, through the routing service module, an application program that implements the called function based on the jump protocol data, and sending the jump protocol data to the application program, so as to execute the called function by the application program based on the jump protocol data.
The method comprises the steps that a service calling module in the voice broadcast service SDK sends jump protocol data to a routing service module (CallRouter) through a cross-process calling module (corresponding to an AIDL module), and the routing service module determines parameter information of called functions based on the jump protocol data 'fork:// com.baidu. appsearch/download/downloadApp', wherein the parameter information comprises an application program identifier called by 'com.baidu. appsearch' and a service function identifier of a designated service function of 'download/downloadApp'. The routing service module sends the jump protocol data to an application program, namely, the hectometer assistant 'com.baidu.appsearch', calls the hectometer assistant through the cross-process communication module, then dispatches the data corresponding to the downloading function to a service routing module (ServiceRouter) in the hectometer assistant, and carries out subsequent service calling execution of specific functions such as 'download/download App' and the like after the scheduling is successful so as to provide corresponding services.
S530 to S540 may be executed before S510 to S520 or after S510 to S520, and the specific execution order of S530 to S540 and S510 to S520 is not limited in this embodiment of the present invention.
According to the embodiment of the invention, when the function calling triggering operation is detected in the target program interface through the addition, the jump protocol data is generated based on the function calling triggering operation; the jump protocol data is sent to the routing service module through the cross-process communication module, so that the routing service module determines an application program for realizing the called function based on the jump protocol data, and sends the jump protocol data to the application program, so that the application program executes the called function based on the jump protocol data, the reverse calling of the application program in a target program is realized, the bidirectional interaction between the target program and the application program is convenient to realize, the functions of the application program are further enriched, and the use experience of a user is improved.
EXAMPLE six
Fig. 6 is a structural diagram of a function calling apparatus according to a sixth embodiment of the present invention. The embodiment of the invention is suitable for the condition that the function calling triggering operation is executed in the application program interface to execute the corresponding function, and the device is realized by software and/or hardware and is specifically configured in the terminal equipment with certain data operation capability. The terminal equipment can be mobile terminals such as smart phones, tablet computers and personal computers, and can also be fixed equipment such as desktop computers.
A function calling apparatus as shown in fig. 6, comprising: a skip protocol generation module 610 and a skip protocol transmission module 620.
The jump protocol generating module 610 is configured to generate jump protocol data based on a function call trigger operation when the function call trigger operation is detected in a current application program interface;
a jump protocol sending module 620, configured to send the jump protocol data to a routing service module through a cross-process communication module, so as to determine, through the routing service module, at least one target program that implements a called function based on the jump protocol data, and send the jump protocol data to each target program, so that the target program executes the called function based on the jump protocol data;
the routing service module is a sharable program module installed in the current terminal equipment operating system.
In the embodiment of the invention, when the function calling triggering operation is detected in the current application program interface through the jumping protocol generating module, the jumping protocol data is generated based on the function calling triggering operation; and a jump protocol sending module is adopted to send jump protocol data to a routing service module through a cross-process communication module, so that at least one target program for realizing the called function is determined through the routing service module based on the jump protocol data, and the jump protocol data is sent to each target program, so that the target program executes the called function based on the jump protocol. The routing service module is a sharable program module installed in the terminal device operating system. According to the technical scheme, the routing service module arranged in the current terminal equipment operating system is used for simultaneously calling the function called by executing at least one target program, a user does not need to manually select and trigger a plurality of application programs, the flexibility and the expansibility of the application programs are improved, and further the interoperability, the diversity, the comprehensiveness and the comprehensiveness of function calling are improved.
Further, the device also comprises an execution result display module, which is used for:
and after the target program executes the called function based on the jump protocol data, returning function execution result data to the application program by the target program so as to display the received function execution result data in the application program interface.
Further, the types of the function execution result data include: at least one of teletext layout data, notification messages, video, audio, and web pages.
Further, the execution result display module, when executing to display the received function execution result data in the application program interface, is specifically configured to:
and processing the function execution result data returned by each target program, packaging the processed data in a view control, and displaying the data through the view control.
Further, the device further comprises an object program display module, which is specifically configured to:
after the function execution result data is displayed and received in the application program interface, if the triggering operation of the displayed function execution result data is detected, determining a target program corresponding to the triggered function execution result data;
if the target program is located in a local system, entering a page of the target program; and if the target program is positioned at the server, sending a data request to the server to acquire and display page data returned by the server.
Further, the jump protocol sending module 520, when executing at least one target program that is determined to implement the called function based on the jump protocol data, is specifically configured to:
determining at least one target program for realizing the called function based on target program identification information contained in the jump protocol data; alternatively, the first and second electrodes may be,
sending a broadcast message carrying the jump protocol data so that a program receiving the broadcast message determines whether the program has the capability of executing the called function according to the parameter information of the called function contained in the jump protocol data, and if so, returning a confirmation message; taking the program returning the confirmation message as a target program; alternatively, the first and second electrodes may be,
determining a program corresponding to parameter information of the called function contained in the jump protocol data based on a preset mapping relation table, and taking the determined program as a target program; wherein, the mapping relation table records the corresponding relation between each program identifier and parameter information in the current terminal equipment.
Further, if the called function includes a page opening operation, the parameter information of the called function includes identification information of a page to be opened and a page opening protocol;
if the called function comprises an information searching operation, the parameter information of the called function comprises a searching keyword and a searching protocol;
if the called function comprises data downloading operation, the parameter information of the called function comprises a content identifier to be downloaded and a downloading protocol;
if the called function comprises a garbage cleaning operation, the parameter information of the called function comprises a garbage identifier to be cleaned and a cleaning protocol;
if the called function comprises the acceleration operation of the mobile phone, the parameter information of the called function comprises the application identifier to be accelerated and the acceleration protocol.
Further, the skip protocol sending module 520, when executing sending the skip protocol data to each target program, is specifically configured to:
for a target program located in a local system in the at least one target program, calling the target program in a cross-process mode through a cross-process communication module, and sending the jump protocol data to the target program; and/or the presence of a gas in the gas,
and aiming at the target program positioned at the server side in the at least one target program, sending the jump protocol data to the target program by sending a network request message to the server side.
Further, the target program executes the called function based on the jump protocol data, and is specifically configured to:
the target program executes the called function based on the parameter information of the called function contained in the jump protocol data; alternatively, the first and second electrodes may be,
and when the target program is a service program Software Development Kit (SDK), determining other programs which need to be used when the called function is executed based on the parameter information of the called function contained in the jump protocol data, and sending the jump protocol data to the other programs so that the other programs execute the called function based on the jump protocol data.
Further, based on the parameter information of the called function included in the jump protocol data, other programs that need to be used when the called function is executed are determined, which are specifically used for:
determining a program corresponding to parameter information of the called function contained in the jump protocol data based on a preset rule base, and taking the determined program as other programs needed to be used when the called function is executed; wherein, the rule base records the corresponding relation between each program identification and parameter information in the current terminal equipment.
Further, when the function call trigger operation is detected in the current application program interface, the jump protocol generating module 610 is specifically configured to:
while displaying the current application interface, a voice command for function call, a touch operation on a screen, or an input command line is detected.
Further, the apparatus further includes a reverse call module, specifically configured to:
when a function calling triggering operation is detected in a target program interface, generating jump protocol data based on the function calling triggering operation;
sending the jump protocol data to a routing service module through a cross-process communication module, determining an application program for realizing the called function based on the jump protocol data through the routing service module, and sending the jump protocol data to the application program so as to execute the called function based on the jump protocol data by the application program.
Further, the apparatus further includes a routing service upgrade module, specifically configured to:
acquiring an update upgrade package from a server at regular time, and upgrading the routing service module by using the downloaded update upgrade package; and/or the presence of a gas in the gas,
and when the version number of the routing service module needing to be called is determined to be higher than the version number of the current routing service module, acquiring an update upgrade package from the service terminal, and upgrading the routing service module by using the downloaded update package.
Further, the types of the application programs are: an application program;
the type of the at least one target program comprises: at least one of an application program, a component, a plug-in, an applet, and a service Software Development Kit (SDK) for providing a setting service, which are provided in the current application program; the service program SDK is a sharable program module installed in the current terminal equipment operating system.
Further, the device further comprises a service program upgrading module, which is specifically configured to:
acquiring an update package from a server at regular time, and upgrading the SDK by using the downloaded update package; and/or the presence of a gas in the gas,
and when the version number of the service program SDK to be called is determined to be higher than the version number of the locally installed service program SDK, acquiring an update upgrade package from the service end, and upgrading the locally installed service program SDK by using the downloaded update package.
The function calling device provided by the embodiment of the invention can execute the function calling method provided by any embodiment of the invention, and has the corresponding function module and beneficial effect of executing the function calling method.
EXAMPLE seven
Fig. 7 is a schematic structural diagram of a terminal device according to a seventh embodiment of the present invention. Fig. 7 illustrates a block diagram of an exemplary terminal device 712 suitable for use in implementing embodiments of the present invention. The terminal device 712 shown in fig. 7 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiment of the present invention.
As shown in fig. 7, terminal device 712 is embodied in the form of a general purpose computing device. Components of terminal device 712 may include, but are not limited to: one or more processors or processing units 716, a system memory 728, and a bus 718 that couples the various system components (including the system memory 728 and the processing unit 716).
Bus 718 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, such architectures include, but are not limited to, Industry Standard Architecture (ISA) bus, micro-channel architecture (MAC) bus, enhanced ISA bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.
Terminal device 712 typically includes a variety of computer system readable media. Such media can be any available media that is accessible by terminal device 712 and includes both volatile and nonvolatile media, removable and non-removable media.
The system memory 728 may include computer system readable media in the form of volatile memory, such as Random Access Memory (RAM)730 and/or cache memory 732. Terminal device 712 may further include other removable/non-removable, volatile/nonvolatile computer system storage media. By way of example only, storage system 734 may be used to read from and write to non-removable, nonvolatile magnetic media (not shown in FIG. 7, commonly referred to as a "hard drive"). Although not shown in FIG. 7, a magnetic disk drive for reading from and writing to a removable, nonvolatile magnetic disk (e.g., a "floppy disk") and an optical disk drive for reading from or writing to a removable, nonvolatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to the bus 718 by one or more data media interfaces. Memory 728 may include at least one program product having a set (e.g., at least one) of program modules that are configured to carry out the functions of embodiments of the invention.
Program/utility 740 having a set (at least one) of program modules 742 may be stored, for instance, in memory 728, such program modules 742 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each of which examples or some combination thereof may include an implementation of a network environment. Program modules 742 generally perform the functions and/or methodologies of embodiments of the invention as described herein.
Terminal device 712 may also communicate with one or more external devices 714 (e.g., keyboard, pointing device, display 724, etc.), with one or more devices that enable a user to interact with the terminal device 712, and/or with any devices (e.g., network card, modem, etc.) that enable the terminal device 712 to communicate with one or more other computing devices. Such communication may occur through input/output (I/O) interfaces 722. Also, terminal device 712 may communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network, such as the internet) via network adapter 720. As shown, the network adapter 720 communicates with the other modules of the terminal device 712 via a bus 718. It should be appreciated that although not shown, other hardware and/or software modules may be used in conjunction with terminal device 712, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, among others.
The processing unit 716 executes various functional applications and data processing by executing at least one program of a plurality of programs stored in the system memory 728, for example, to implement a function calling method provided by an embodiment of the present invention.
Example eight
An eighth embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements a function calling method provided in any embodiment of the present invention, and the method includes: when a function calling triggering operation is detected in a current application program interface, generating jump protocol data based on the function calling triggering operation; sending the jump protocol data to a routing service module through a cross-process communication module, so as to determine at least one target program for realizing the called function based on the jump protocol data through the routing service module, and sending the jump protocol data to each target program, so that the target program executes the called function based on the jump protocol data; the routing service module is a sharable program module installed in the current terminal equipment operating system.
Computer storage media for embodiments of the invention may employ any combination of one or more computer-readable media. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
It is to be noted that the foregoing is only illustrative of the preferred embodiments of the present invention and the technical principles employed. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, although the present invention has been described in greater detail by the above embodiments, the present invention is not limited to the above embodiments, and may include other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the appended claims.

Claims (17)

1. A function calling method, comprising:
when a function calling triggering operation is detected in a current application program interface, generating jump protocol data based on the function calling triggering operation;
sending the jump protocol data to a routing service module through a cross-process communication module, determining a plurality of target programs for realizing the called functions based on the jump protocol data through the routing service module, and sending the jump protocol data to each target program so that the target programs execute the called functions based on the jump protocol data;
the routing service module is a sharable program module installed in the current terminal equipment operating system.
2. The method of claim 1, wherein the types of the plurality of target programs comprise: at least one of an application program, a component, a plug-in, an applet, and a service Software Development Kit (SDK) for providing a setting service, which are provided in the current application program; the service program SDK is a sharable program module installed in the current terminal equipment operating system.
3. The method of claim 1, wherein the target program performs the invoked function based on the jump protocol data, comprising:
the target program executes the called function based on the parameter information of the called function contained in the jump protocol data; alternatively, the first and second electrodes may be,
when the target program is the service program software development kit SDK, the service program SDK determines other programs needed to be used when the called function is executed based on the parameter information of the called function contained in the jump protocol data, and sends the jump protocol data to the other programs so that the other programs execute the called function based on the jump protocol data.
4. The method according to claim 3, wherein determining other programs to be used when executing the called function based on parameter information of the called function contained in the jump protocol data comprises:
determining a program corresponding to parameter information of the called function contained in the jump protocol data based on a preset rule base, and taking the determined program as other programs needed to be used when the called function is executed; wherein, the rule base records the corresponding relation between each program identification and parameter information in the current terminal equipment.
5. The method of claim 1, further comprising:
acquiring an update upgrade package from a server at regular time, and upgrading the routing service module by using the downloaded update upgrade package; and/or the presence of a gas in the gas,
and when the version number of the routing service module needing to be called is determined to be higher than the version number of the current routing service module, acquiring an update upgrade package from the service terminal, and upgrading the routing service module by using the downloaded update package.
6. The method of claim 2, further comprising:
acquiring an update package from a server at regular time, and upgrading the SDK by using the downloaded update package; and/or the presence of a gas in the gas,
and when the version number of the service program SDK to be called is determined to be higher than the version number of the locally installed service program SDK, acquiring an update upgrade package from the service end, and upgrading the locally installed service program SDK by using the downloaded update package.
7. The method of claim 1, wherein determining a plurality of target programs to implement the called function based on the jump protocol data comprises:
determining a plurality of target programs for realizing the called functions based on target program identification information contained in the jump protocol data; alternatively, the first and second electrodes may be,
sending a broadcast message carrying the jump protocol data so that a program receiving the broadcast message determines whether the program has the capability of executing the called function according to the parameter information of the called function contained in the jump protocol data, and if so, returning a confirmation message; taking the program returning the confirmation message as a target program; alternatively, the first and second electrodes may be,
determining a program corresponding to parameter information of the called function contained in the jump protocol data based on a preset mapping relation table, and taking the determined program as a target program; wherein, the mapping relation table records the corresponding relation between each program identifier and parameter information in the current terminal equipment.
8. The method of claim 7,
if the called function comprises a page opening operation, the parameter information of the called function comprises identification information of a page to be opened and a page opening protocol;
if the called function comprises an information searching operation, the parameter information of the called function comprises a searching keyword and a searching protocol;
if the called function comprises data downloading operation, the parameter information of the called function comprises a content identifier to be downloaded and a downloading protocol;
if the called function comprises a garbage cleaning operation, the parameter information of the called function comprises a garbage identifier to be cleaned and a cleaning protocol;
if the called function comprises the acceleration operation of the mobile phone, the parameter information of the called function comprises the application identifier to be accelerated and the acceleration protocol.
9. The method of claim 1, wherein sending the jump protocol data to each of the target programs comprises:
for a target program located in a local system in the target programs, calling the target program in a cross-process mode through a cross-process communication module, and sending the jump protocol data to the target program; and/or the presence of a gas in the gas,
and aiming at the target program positioned at the server side in the target programs, sending the jump protocol data to the target program by sending a network request message to the server side.
10. The method of claim 1, wherein detecting a function call trigger operation in the current application program interface comprises:
while displaying the current application interface, a voice command for function call, a touch operation on a screen, or an input command line is detected.
11. The method of claim 1, further comprising:
when a function calling triggering operation is detected in a target program interface, generating jump protocol data based on the function calling triggering operation;
sending the jump protocol data to a routing service module through a cross-process communication module, determining an application program for realizing the called function based on the jump protocol data through the routing service module, and sending the jump protocol data to the application program so as to execute the called function based on the jump protocol data by the application program.
12. The method according to any of claims 1-11, wherein after the target program performs the called function based on the jump protocol data, the method further comprises:
and returning the function execution result data to the application program by the target program so as to display the received function execution result data in the application program interface.
13. The method of claim 12, wherein the type of function execution result data comprises: at least one of teletext layout data, notification messages, video, audio, and web pages.
14. The method of claim 12, wherein presenting in the application program interface that the function execution result data is received comprises:
and processing the function execution result data returned by each target program, packaging the processed data in a view control, and displaying the data through the view control.
15. A function calling apparatus, comprising:
the system comprises a skip protocol generation module, a function call trigger operation generation module and a skip protocol generation module, wherein the skip protocol generation module is used for generating skip protocol data based on the function call trigger operation when the function call trigger operation is detected in a current application program interface;
a skip protocol sending module, configured to send the skip protocol data to a routing service module through a cross-process communication module, so as to determine, through the routing service module, a plurality of target programs that implement a called function based on the skip protocol data, and send the skip protocol data to each of the target programs, so that the target programs execute the called function based on the skip protocol data;
the routing service module is a sharable program module installed in the current terminal equipment operating system.
16. A terminal device, comprising:
one or more processors;
a memory for storing one or more programs;
when executed by the one or more processors, cause the one or more processors to implement a function invocation method according to any of claims 1-14.
17. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out a function calling method according to any one of claims 1 to 14.
CN201910580582.8A 2019-06-28 2019-06-28 Function calling method and device, terminal equipment and storage medium Active CN110309006B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910580582.8A CN110309006B (en) 2019-06-28 2019-06-28 Function calling method and device, terminal equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910580582.8A CN110309006B (en) 2019-06-28 2019-06-28 Function calling method and device, terminal equipment and storage medium

Publications (2)

Publication Number Publication Date
CN110309006A CN110309006A (en) 2019-10-08
CN110309006B true CN110309006B (en) 2021-06-04

Family

ID=68078012

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910580582.8A Active CN110309006B (en) 2019-06-28 2019-06-28 Function calling method and device, terminal equipment and storage medium

Country Status (1)

Country Link
CN (1) CN110309006B (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111371676B (en) * 2020-03-03 2022-04-15 腾讯科技(深圳)有限公司 Customer service function access method and related device
KR20210091328A (en) 2020-06-29 2021-07-21 바이두 온라인 네트웍 테크놀러지 (베이징) 캄파니 리미티드 Applet's voice control method, device and storage medium
CN112165430B (en) * 2020-09-24 2024-02-13 阿波罗智联(北京)科技有限公司 Data routing method, device, equipment and storage medium
CN113760382B (en) * 2020-10-15 2024-05-17 北京沃东天骏信息技术有限公司 Plug-in starting method and device, terminal equipment and storage medium
CN112596931B (en) * 2020-12-31 2023-04-07 五八有限公司 Cross-process communication method and device, electronic equipment and storage medium
CN112948824B (en) * 2021-03-31 2022-04-26 支付宝(杭州)信息技术有限公司 Program communication method, device and equipment based on privacy protection
CN115016871B (en) * 2021-12-27 2023-05-16 荣耀终端有限公司 Multimedia editing method, electronic device and storage medium
CN117290021A (en) * 2023-09-26 2023-12-26 深圳牛学长科技有限公司 SDK calling method and device, computer equipment and storage medium

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101686253A (en) * 2008-09-23 2010-03-31 华为技术有限公司 Service selecting method, device and system thereof
US9183064B2 (en) * 2011-12-30 2015-11-10 General Electric Company Intelligent mediation of messages in a healthcare product integration platform
CN103246557A (en) * 2012-02-07 2013-08-14 腾讯科技(深圳)有限公司 Method and device for calling application information in cross process mode
CN102707967A (en) * 2012-04-03 2012-10-03 陈俊 Method, equipment and system for running third-party application program
CN104636122B (en) * 2013-11-06 2018-05-18 中国移动通信集团公司 The sharing method and equipment of a kind of capability component
CN106484547B (en) * 2016-10-10 2019-12-31 Oppo广东移动通信有限公司 Multi-open application management method and device and terminal
CN107229513A (en) * 2017-05-27 2017-10-03 努比亚技术有限公司 A kind of many applicating cooperation method of works, device and computer-readable recording medium
CN107707614B (en) * 2017-08-16 2022-02-08 深圳市丰巢科技有限公司 System hop protocol-based app routing implementation method, device and storage medium
CN108021462B (en) * 2017-12-08 2019-06-04 北京百度网讯科技有限公司 Method and apparatus for calling cloud service
WO2019117767A1 (en) * 2017-12-13 2019-06-20 Telefonaktiebolaget Lm Ericsson (Publ) Method, function manager and arrangement for handling function calls
CN108647086B (en) * 2018-05-16 2022-10-21 北京安云世纪科技有限公司 Application switching method and device in android system
CN109240758B (en) * 2018-07-25 2021-10-29 武汉精测电子集团股份有限公司 Method for supporting synchronous asynchronous unified call of plug-in interface and microkernel system
CN109901827A (en) * 2019-03-13 2019-06-18 厦门美图之家科技有限公司 Using exchange method, device, electronic equipment and readable storage medium storing program for executing

Also Published As

Publication number Publication date
CN110309006A (en) 2019-10-08

Similar Documents

Publication Publication Date Title
CN110309006B (en) Function calling method and device, terminal equipment and storage medium
CN110309005B (en) Function calling method and device, terminal equipment and storage medium
US11269696B2 (en) Application processing method and apparatus
CN110955428A (en) Page display method and device, electronic equipment and medium
US20130166527A1 (en) System and methods thereof for dynamically updating the contents of a folder on a device
CN102937999A (en) Dynamic browser icon
CN111190673B (en) Page display method and device based on operation monitoring and electronic equipment
CN110704102A (en) Page jump protocol interface document generation method, system, medium and electronic device
US20230409816A1 (en) Document update method and apparatus, device, and medium
US20230297767A1 (en) Document editing method and apparatus, and electronic device
US20230409814A1 (en) Document editing method and apparatus, device, and storage medium
US20230401377A1 (en) Document creation method and apparatus, and device and storage medium
CN112416455B (en) Data processing method, device, terminal and storage medium
CN110297575B (en) Page display method and device, terminal equipment and storage medium
CN113761588A (en) Data verification method and device, terminal equipment and storage medium
CN113296762B (en) Page embedding method and device, storage medium and electronic equipment
CN112328140B (en) Image input method, device, equipment and medium thereof
CN112416374B (en) Data processing method, device, terminal and storage medium
EP3163475A1 (en) Electronic device and method of searching data records
CN111880698A (en) Information processing method and device of intelligent terminal, electronic equipment and storage medium
CN111026466A (en) File processing method and device, computer readable storage medium and electronic equipment
CN112306324B (en) Information processing method, apparatus, device and medium
KR20130138597A (en) System for data common service, apparatus and method for data common service
CN112256326B (en) Information processing method, device, equipment and storage medium
CN110609751B (en) Terminal equipment control method and device, terminal equipment and computer readable storage medium

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
GR01 Patent grant
GR01 Patent grant