Application program processing method and electronic equipment

By introducing the observer manager to the super workbench application for signal distribution, the problem of too many IPC channels in multi-service interaction is solved, and resource conservation and communication efficiency are improved.

CN119597498AActive Publication Date: 2025-03-11HONOR DEVICE CO LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202411493397.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-23
Publication Date
2025-03-11
Estimated Expiration
2044-10-23

AI Technical Summary

Technical Problem

In super workbench applications, interactions between multiple services require the creation of a large number of IPC channels, resulting in waste of resources and duplicate names, affecting communication efficiency.

Method used

An observer manager was introduced to realize signal distribution through it to reduce the number of IPC channels. Each service only needs to register two IPC channels to realize communication between the rendering process and the main process.

Benefits of technology

It effectively reduces resource occupation, improves communication efficiency, avoids the problem of IPC channel duplication, and improves the efficiency of business development and access to super workbenches.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119597498A_ABST
    Figure CN119597498A_ABST
Patent Text Reader

Abstract

The invention provides an application program processing method and electronic equipment, and relates to the technical field of terminals. According to the invention, the number of IPC channels can be reduced. The method is applied to a desktop application running on a host process and a rendering process, and comprises an observer manager, a host process module and a user interface module. The method comprises the following steps: a rendering process determines an operation on a first service in a first user interface module; and the rendering process sends a first parameter indicating the first service to the host process on a first IPC channel corresponding to the first user interface module. The host process sends a first signal to the observer manager based on the first parameter. The host process invokes a first host process module based on the first signal. The host process sends a second signal to the rendering process on a second IPC channel different from the first IPC channel and corresponding to the first host process module. And calling a second user interface module based on the second signal through the rendering process to determine a response condition of the second signal.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of terminal technology, and in particular to an application processing method and an electronic device. Background Art

[0002] With the development of terminal technology, super workbench applications can be installed in electronic devices (such as personal computers, etc.). Among them, the super workbench application can integrate one or more services, such as smart interconnection services, note services, file management services, calendar services, etc. In this way, electronic devices can provide users with a variety of service experiences through super workbench applications.

[0003] At present, the super workbench application can implement the corresponding business through the inter-process communication (IPC) interaction between the main process and the rendering process. Among them, the main process can be used to access the underlying resources of the business, and the rendering process can be used to implement the interface display and user interface interaction logic response of the business. Exemplarily, in response to the operation of business B in the user interface (UI) module of business A, the rendering process can create an IPC channel for sending an operation request to the main process. The main process can call the corresponding main process module of business B to implement the call to the underlying resources of business B based on the operation request. Afterwards, the main process creates another IPC channel for feeding back the response of the above operation to the rendering process. Based on the response, the rendering process can display the corresponding interface through the corresponding user interface (UI) module of business B.

[0004] It can be seen that if a business in the super workbench application needs to interact with n businesses, the rendering process needs to create 2n IPC channels to send corresponding operation requests to the main process. And if n businesses need to provide feedback to the user interface, the main process needs to create another 2n IPC channels to send corresponding responses to the rendering process. Among them, the IPC channel will not be released after creation, and the creation of a large number of IPC channels will lead to a waste of resources. In addition, if there are too many IPC channels, there may be duplicate names, resulting in errors in the transmission of IPC channel information. Summary of the invention

[0005] In order to solve the above technical problems, the present application provides an application processing method and an electronic device. The technical solution provided by the present application is applied to a desktop application, which includes an observer manager, through which the signal distribution on the IPC channel of the corresponding business can be realized, effectively reducing the number of IPC channels and reducing resource waste.

[0006] In order to achieve the above technical objectives, this application provides the following technical solutions:

[0007] In a first aspect, an application processing method is provided, which is applied to a desktop application. The desktop application includes: an observer manager, one or more main process modules and one or more user interface modules, wherein a main process module and a user interface module belong to the same service, and the desktop application runs on the main process and the rendering process, wherein the main process is used to call the observer manager and the main process module, and the rendering process is used to call the user interface module. The method includes: determining the operation of a first service in a first user interface module through the rendering process, wherein the first user interface module is a user interface module. Sending a first parameter to the main process through the rendering process on a first inter-process communication IPC channel, wherein the first IPC channel is a channel corresponding to the first user interface module, and the first parameter is used to indicate the first service. Calling the observer manager through the main process based on the first parameter, and sending a first signal to the observer manager. Calling the first main process module through the main process based on the first signal, wherein the first main process module is one or more main process modules. Sending a second signal to the rendering process through the main process on a second IPC channel, wherein the second IPC channel is different from the first IPC channel, and the second IPC channel is a channel corresponding to the first main process module. Based on the second signal, the second user interface module is called through the rendering process so that the second user interface module determines the response status of the second signal. The second user interface module and the first main process module belong to the first business.

[0008] In this way, each business only needs to register two IPC channels to realize the communication of different behaviors of the business between the rendering process and the main process, effectively reducing resource usage and improving communication efficiency.

[0009] Moreover, compared to the prior art, in which each business behavior needs to register an IPC channel with the main process, the application processing method provided in the embodiment of the present application is that the same business only needs to encapsulate the public IPC channel belonging to its own business into its own observer module, and let the main process write an observer module, thereby improving the development efficiency of each business and the efficiency of business access to the super workbench.

[0010] In addition, the number of IPC channels is reduced to avoid the problem of duplicate names.

[0011] In some examples, optionally, the desktop application is, for example, a super work platform, such as an executable exe program.

[0012] According to the first aspect, the observer manager includes one or more observer modules, and one observer module corresponds to one business. Calling the observer manager based on a first parameter through a main process and sending a first signal to the observer manager includes: calling the observer module corresponding to the first business based on the first parameter through the main process and sending the first signal to the observer module corresponding to the first business.

[0013] In this way, the registered business behaviors can be distributed through the observer module corresponding to the business, thereby improving the development efficiency of each business and the efficiency of business access to the super workbench.

[0014] According to the first aspect, or any implementation of the first aspect, the first service includes a public service and / or one or more distributed services.

[0015] Exemplarily, the common service is, for example, a main UI service, such as a sidebar for displaying a super workbench, etc. Distributed services include, for example, a smart interconnection service, a note service, a document management service, and a calendar service.

[0016] According to the first aspect, or any implementation method of the first aspect above, the desktop application includes: an observer manager, a main process module of a common business, a user interface module of a common business, one or more main process modules of distributed businesses, and one or more user interface modules of distributed businesses, the main process module of the distributed business is configured in the main process module of the common business, and the user interface module of the distributed business is configured in the user interface module of the common business; the observer manager includes an observer module of the common business and one or more observer modules of distributed businesses.

[0017] According to the first aspect, or any implementation of the first aspect above, the observer module of the public service is registered after the main process module of the public service is started; the observer module of the distributed service is registered after the user interface module and the main process module of the distributed service are called.

[0018] Optionally, the call between modules can also be described as calling, loading, pulling up, etc.

[0019] In this way, different distributed services share the relevant resources of the public service.

[0020] According to the first aspect, or any implementation of the first aspect above, the desktop application includes: an observer manager, one or more main process modules of distributed services, and one or more user interface modules of distributed services; the observer manager includes one or more observer modules of distributed services.

[0021] According to the first aspect, or any implementation of the first aspect above, the observer module of the distributed service is registered after being called by the user interface module and the main process module of the distributed service.

[0022] In this way, public resources can also be excluded from desktop applications.

[0023] Thus, compared with the prior art, where each business behavior needs to register an IPC channel with the main process, the application processing method provided by the embodiment of the present application only requires the same business to encapsulate the public channel belonging to its own business (such as the IPC channel shared by the business) into its own observer module, and write an observer module registration in the main process, thereby improving the development efficiency of each business and the efficiency of business access to the super workbench. In addition, the reduction in the number of IPC channels avoids the problem of duplicate names.

[0024] According to the first aspect, or any implementation of the first aspect, the first user interface module is different from the second user interface module. Alternatively, the second user interface module at least includes the first user interface module.

[0025] In this way, the response of the UI module can be implemented in the UI module or in other UI modules.

[0026] According to the first aspect, or any implementation of the first aspect above, the number of IPC channels of each user interface module on the rendering process is 1, and different user interface modules have different IPC channels on the rendering process. The number of IPC channels of each main process module on the main process is 1, and different main process modules have different IPC channels on the main process.

[0027] In this way, each business only needs to register two IPC channels to realize the communication of different behaviors of the business between the rendering process and the main process, effectively reducing resource usage and improving communication efficiency.

[0028] In a second aspect, an application processing device is provided, which is applied to a desktop application. The application processing device includes: a module for executing the method described in the first aspect and any possible implementation thereof.

[0029] In a third aspect, a computer device is provided. The computer device includes: a processor and a memory. The memory is coupled to the processor, and the memory is used to store computer program code. The computer program code includes computer instructions. When the processor reads the computer instructions from the memory, the computer device executes the method of the first aspect or any one of the implementations of the first aspect.

[0030] In a fourth aspect, an electronic device is provided. The electronic device includes: a processor and a memory. The memory is coupled to the processor, and the memory is used to store computer program code. The computer program code includes computer instructions. When the processor reads the computer instructions from the memory, the electronic device executes the method of the first aspect or any one of the implementations of the first aspect.

[0031] In a fifth aspect, an electronic device is provided, which has the function of implementing the method described in the first aspect and any possible implementation thereof. The function can be implemented by hardware, or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions.

[0032] In a sixth aspect, a computer-readable storage medium is provided. The computer-readable storage medium stores a computer program (also referred to as an instruction or code), and when the computer program is executed by an electronic device, the electronic device executes the method of the first aspect or any one of the implementations of the first aspect.

[0033] According to a seventh aspect, a computer program product is provided. When the computer program product is run on an electronic device, the electronic device executes the method according to the first aspect or any one of the embodiments of the first aspect.

[0034] According to an eighth aspect, a circuit system is provided, the circuit system comprising a processing circuit, wherein the processing circuit is configured to execute the method of the first aspect or any one of the embodiments of the first aspect.

[0035] In the ninth aspect, a chip system is provided, comprising at least one processor and at least one interface circuit, wherein the at least one interface circuit is used to perform transceiver functions and send instructions to the at least one processor, and when the at least one processor executes the instructions, the at least one processor executes the method of the first aspect or any one of the embodiments of the first aspect.

[0036] The technical effects of the aforementioned aspects can be referenced to each other and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] Figure 1A A schematic diagram of the Electron structure provided in an embodiment of the present application;

[0038] Figure 1B A schematic diagram of the super workbench interface provided in an embodiment of the present application;

[0039] Figure 2 A process function diagram provided for an embodiment of the present application;

[0040] Figure 3 Schematic diagram 1 of the interaction between modules provided in the embodiment of the present application;

[0041] Figure 4 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present application;

[0042] Figure 5 Inter-module interaction diagram provided for the embodiment of the present application Figure 2 ;

[0043] Figure 6 Inter-module interaction diagram provided for the embodiment of the present application Figure 3 ;

[0044] Figure 7 Inter-module interaction diagram provided for the embodiment of the present application Figure 4 ;

[0045] Figure 8 A flowchart of an application processing method provided in an embodiment of the present application;

[0046] Fig. 9 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application;

[0047] Fig.10 A schematic diagram of a possible product form of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0048] The technical solutions in the embodiments of the present application are described below in conjunction with the drawings in the embodiments of the present application. Among them, in the description of the embodiments of the present application, the terms used in the following embodiments are only for the purpose of describing specific embodiments, and are not intended to be limitations of the present application. As used in the specification and the appended claims of the present application, the singular expressions "a kind", "said", "above", "the", and "this" are intended to also include expressions such as "one or more", unless there is a clear contrary indication in the context. It should also be understood that in the following embodiments of the present application, "at least one", "one or more" refer to one or more (including two). The term "and / or" is used to describe the association relationship of associated objects, indicating that three relationships can exist; for example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone, wherein A and B can be singular or plural. The character " / " generally indicates that the associated objects before and after are in a "or" relationship.

[0049] References to "one embodiment" or "some embodiments" etc. described in this specification mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in other embodiments", etc. that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The term "connection" includes direct connection and indirect connection, unless otherwise specified. "First", "second" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated.

[0050] In the embodiments of the present application, words such as "exemplarily" or "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design described as "exemplarily" or "for example" in the embodiments of the present application should not be interpreted as having priority or advantage over other embodiments or designs. Specifically, the use of words such as "exemplarily" or "for example" is intended to present related concepts in a specific way.

[0051] To facilitate understanding, the technical concepts involved in the embodiments of the present application are first introduced below.

[0052] 1. Process

[0053] A process is an application's running activity on a certain data set, and is the basic unit for resource allocation and scheduling in an operating system (such as Windows). Each process occupies a piece of memory space, and an application runs on the operating system in the form of one or more processes to achieve corresponding functions.

[0054] 2. Main process

[0055] The main process is the core of the Electron application, responsible for creating the application window, handling the application life cycle (such as startup, shutdown, etc.), interacting with the system, etc. The main process uses the Node.js module to perform these tasks, and there is only one instance. The main process usually contains the entry file of the application (such as main.js).

[0056] 3. Rendering process

[0057] The rendering process is responsible for displaying the user interface of the application. Each window has an independent rendering process. The rendering process uses web technologies such as HTML, CSS, and JavaScript to create the user interface. The rendering processes are isolated from each other and cannot communicate directly, but can communicate through the main process.

[0058] That is to say, the main process mainly carries the logic and management of the application, while the rendering process is mainly responsible for the display and interaction of the user interface.

[0059] 4. Electron

[0060] Electron is an optional technology stack for implementing cross-platform desktop applications on the front end. It is currently used to build cross-platform applications. Electron has extensive community support and a sufficient number of plug-ins, such as Figure 1A As shown in the figure, Electron is composed of Chromium, Node.js, and Native API. Chromium and Node.js use inter-process communication (IPC) to build feature-rich desktop applications. For example, Figure 1B The Super Workbench application shown.

[0061] Among them, in the Electron framework, there can be a main process and one or more rendering processes. The main process can be created by starting a local website service (http server) based on Node.js, that is, the http server started by Node.js can be used as the main process. When creating the main process through Node.js, the configuration information required for creating the main process can also be obtained through the Native API. The rendering process can be based on Chromium to achieve rendering.

[0062] In the Electron framework, the main process and the rendering process are different processes, and the context is isolated, that is, the main process and the rendering process exist in two independent context environments, and the main process and the rendering process can communicate through IPC. For example, users can use the graphical user interface (GUI) to implement native file drag / drop, and use the GUI to access devices (such as Bluetooth, universal serial bus (USB) and other serial devices) and other interactive behaviors, which can be achieved through IPC.

[0063] That is to say, Electron allows the development of desktop GUI applications using Node.js (as the backend) and Chromium (as the frontend). Electron can be used to build cross-platform desktop applications with HTML, CSS, and JavaScript by combining Chromium and Node.js into a running environment. Among them, desktop applications built based on Electron can be packaged as applications for MAC, Windows, and Linux systems, thereby meeting the startup, display, and system configuration requirements of different operating systems, and achieving better visual performance and interactive experience.

[0064] like Figure 2 As shown in the figure, the core mechanism that enables Electron to achieve efficient and stable operation is the dual-process mechanism of the main process and the rendering process. Among them, Electron uses the main process to manage the life cycle of desktop applications, and mainly uses the application programming interface (API) provided by Node.js to access the underlying resources of the system, such as the file system. Each window in the desktop application built based on the Electron framework corresponds to a rendering process, which is mainly responsible for building and displaying the user interface and processing the user's interaction logic. The main process and the rendering process interact through the IPC channel.

[0065] When users want to implement interactive behaviors with desktop applications, they usually use a two-way communication method from the rendering process to the main process through the GUI, that is, the rendering process accesses the main process through the GUI to implement the functions corresponding to the interactive behaviors. In Electron, since the main process and the rendering process communicate through IPC, the methods defined in the main process cannot be directly accessed in the rendering process. This is because the main process and the rendering process run in different contexts. Therefore, in order to access the methods defined in the main process in the rendering process, different interfaces need to be registered to achieve communication with Node.js and Native API. The more methods the rendering process accesses to the main process, the more interfaces need to be registered, resulting in a large amount of code writing and low development efficiency, which in turn makes subsequent development and maintenance difficult.

[0066] In order to make the purpose, technical solutions and advantages of the embodiments of the present application clearer, the relevant scenarios involved in the embodiments of the present application will be described below in conjunction with the drawings in the specification.

[0067] In an embodiment of the present application, a super workbench application (application, APP) can be constructed through the Electron framework, and the super workbench APP is a desktop application, such as an executable (executable, exe) program. Among them, the exe program is an executable program file for executing instructions and data for a series of tasks on a computer. The exe file can be loaded and executed by the operating system, containing compiled computer instructions and data. The exe file can be used as a running carrier of the program to store various resources required by the program, such as images, audio, video, etc. In addition, exe files are also commonly used in installation programs. When a user double-clicks an exe file, the operating system reads the instructions in the file and executes them in sequence, thereby starting the corresponding application or process.

[0068] For example, Figure 1B As shown, the Super Workbench APP can be applied to a personal computer (PC), can realize global device interconnection and service intercommunication, and can communicate with notes, calendars, and global collection data on mobile phones and tablet computers (portable android device, PDA), providing users with a global interconnection and aggregated office service entrance on the PC side, thereby improving users' office and learning efficiency.

[0069] Figure 1B A schematic diagram of the interface of a super workbench provided in an embodiment of the present application. Exemplarily, the super workbench integrates one or more services, such as smart interconnection service, note service, file management service, calendar service, etc., without limitation. Of course, the super workbench may also include services other than the above services, such as smart search, artificial intelligence (AI) subtitles, etc., without limitation. For example, Figure 1B As shown, the super workbench interface displays a smart interconnection service logo 11, a note service logo 12, a file management service logo 14, and a calendar service logo 13.

[0070] In some examples, a user can use the super workbench to operate one or more services integrated in the super workbench.

[0071] For example, users can use the smart interconnection service integrated in the super workbench to achieve device collaboration based on MagicRing (trust ring) technology. For example, for devices A and B based on the trust ring technology, after the user performs part of the work in the smart interconnection service integrated in the super workbench in device A, he can continue to work in the smart interconnection service integrated in the super workbench in device B.

[0072] Another example is the integrated file management service (hereinafter referred to as the file management service) and note service of the super workbench. When the super workbench displays the file management service interface, it receives the user's operation of modifying the document, saves the modified content, and notifies the note service of the modification operation. Afterwards, the super workbench needs to switch to display the note service interface to facilitate the user to confirm the modification of the document content.

[0073] In some embodiments, as described above, the super workbench is built based on Electron, and the Electron framework may include a main process and a rendering process. Among them, the core mechanism by which Electron can achieve efficient and stable operation is the dual-process mechanism of the main process and the rendering process.

[0074] For example, Figure 3 As shown, the super workbench includes a workbench main process and a workbench UI module. The workbench main process module integrates the main process modules of multiple businesses (such as the smart interconnection main process module, the note main process module, the document management main process module, the calendar main process module, etc.), and the workbench UI module integrates the UI modules of multiple businesses (such as the smart interconnection UI module, the note UI module, the document management UI module, the calendar UI module, etc.). The workbench main process module is used to call the main process, and the workbench UI module is used to call the rendering process. For example, the workbench main process module and the workbench UI module communicate through an IPC channel.

[0075] like Figure 3 As shown, for example, in the document modification scenario of the above example, the document management UI module determines that the two businesses corresponding to the modification are the document management business and the note-taking business based on the user's modification of the document, and the corresponding document management main process module and note-taking main process module need to be triggered. Then, the workbench UI module creates IPC channel A (as shown in label ①) in response to the operation in the document management UI module, and implements the rendering process to send a document management business request to the main process through the IPC channel A. The main process calls the corresponding document management main process module according to the request; and, the workbench UI module creates IPC channel B (as shown in label ②) in response to the operation in the document management UI module, and implements the rendering process to send a note-taking business request to the main process through the IPC channel B. The main process calls the corresponding note-taking main process module according to the request. Correspondingly, if both the document management business and the note-taking business may generate corresponding feedback, the workbench main process module creates an IPC channel C (as shown in label ③) according to the response of the document management business, and uses the IPC channel C to enable the main process to send feedback on the document management business to the rendering process; the workbench main process module creates an IPC channel D (as shown in label ④) according to the response of the note-taking business, and uses the IPC channel D to enable the main process to send feedback on the note-taking business to the rendering process.

[0076] It can be seen that if a business in the super workbench needs to interact with n businesses, the rendering process needs to create 2n IPC channels to send the corresponding business requests to the main process. And if n businesses need to provide feedback to the user interface, the main process needs to create another 2n IPC channels to send the corresponding responses to the rendering process.

[0077] Among them, the IPC channel is not released after creation, and the creation of a large number of IPC channels leads to a waste of resources. In addition, when there are too many IPC channels, when registering IPC channels through the registration module, duplicate names may occur, resulting in IPC channel information transmission errors. In addition, when there are multiple IPC channels communicating simultaneously in the super workbench, if there is a problem with the IPC channel, it is difficult to determine the source of the problem because there are too many IPC channels.

[0078] Therefore, the embodiment of the present application provides an application processing method, which is applied to a desktop application, and the desktop application includes an observer manager. In this way, each business only needs to register two IPC channels in the main process, and the observer manager can realize signal distribution on the IPC channel of the corresponding business, thereby effectively reducing the number of IPC channels and reducing resource waste.

[0079] Optionally, the application processing method provided in the present application can be applied to the electronic device 100. Optionally, the electronic device 100 can be, for example, a personal computer, a tablet computer, a mobile phone, an ultra-mobile personal computer (UMPC), a netbook, a personal digital assistant (PDA), an artificial intelligence (AI) device or other terminal device, and the operating system installed in the electronic device 100 includes but is not limited to Or other operating systems. This application does not limit the specific type of the electronic device 100 or the installed operating system.

[0080] Optionally, Figure 4 A schematic diagram of the hardware structure of the electronic device 100 provided in an embodiment of the present application.

[0081] like Figure 4 As shown, the electronic device 100 includes at least one processor 401 , a communication line 402 , a memory 403 , at least one communication interface 404 , an output device 405 , and an output device 406 . The memory 403 may also be included in the processor 401 .

[0082] The processor 401 may be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of the program of the present application.

[0083] The communication link 402 may include a pathway to transmit information between the above-mentioned components.

[0084] Communication interface 404, used to communicate with other devices. In the embodiment of the present application, the communication interface can be a module, a circuit, a bus, an interface, a transceiver or other device capable of implementing a communication function, used to communicate with other devices. Optionally, when the communication interface is a transceiver, the transceiver can be an independently arranged transmitter, which can be used to send information to other devices, and the transceiver can also be an independently arranged receiver, which is used to receive information from other devices. The transceiver can also be a component that integrates the functions of sending and receiving information, and the embodiment of the present application does not limit the specific implementation of the transceiver.

[0085] The memory 403 may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage, magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory may exist independently and be connected to the processor via a communication line 402. The memory may also be integrated with the processor.

[0086] The memory 403 is used to store computer-executable instructions for implementing the solution of the present application, and the execution is controlled by the processor 401. The processor 401 is used to execute the computer-executable instructions stored in the memory 403, thereby implementing the application processing method provided in the following embodiment of the present application.

[0087] Optionally, the computer-executable instructions in the embodiments of the present application may also be referred to as application code, instructions, computer program or other names, which are not specifically limited in the embodiments of the present application.

[0088] In a specific implementation, as an embodiment, the processor 401 may include one or more CPUs, such as Figure 4 CPU0 and CPU1 in.

[0089] In a specific implementation, as an embodiment, the electronic device 100 may include multiple processors, such as Figure 4 401 and processor 407 in the embodiment of the present invention. Each of these processors may be a single-CPU processor or a multi-CPU processor. The processor herein may refer to one or more devices, circuits, and / or processing cores for processing data (e.g., computer program instructions).

[0090] The output device 405 communicates with the processor 401 and can display information in a variety of ways. For example, the output device 405 can be a display screen, which is used to display images, videos, etc. The display screen includes a display panel. The display panel can be manufactured using a liquid crystal display (LCD), such as an organic light-emitting diode (OLED), an active matrix organic light-emitting diode or an active matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), Mini-led, Micro-led, Micro-oled, quantum dot light emitting diodes (QLED), etc. In some embodiments, the electronic device 100 may include 1 or N display screens, where N is a positive integer greater than 1. The input device 406 communicates with the processor 401 and can receive user input in a variety of ways. For example, the input device 406 can be a mouse, a keyboard, a touch screen device, or a sensor device, etc.

[0091] It is understandable that the embodiments of the present application are as follows Figure 4 The structure does not constitute the only limitation on the implementation of the structure of the electronic device 100. In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown in the figure, or combine some components, or split some components, or arrange the components differently. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.

[0092] The following uses the electronic device 100 as a PC as an example to describe in detail the application processing method provided in the embodiment of the present application.

[0093] In some embodiments, a super work platform application is installed in the PC, and the super work platform is, for example, a desktop application, such as an executable exe program. To simplify the description, the super work platform application is described as a super work platform below.

[0094] In some examples, the super work platform is designed as a whole using a distributed architecture. Optionally, the super work platform provides a common workbench main process module and a common workbench UI module (also described as a rendering process module). Among them, the workbench main process module can be used to implement common behaviors such as creating windows, registering channels, and storing packaged resources. The workbench UI module can be used to implement system-level pages such as rendering and displaying sidebars, title bar buttons, and setting functions. Optionally, the super work platform can provide multiple services, each of which can provide a main process module of its own business, and integrate the main process module of its own business as a dependency library into the above-mentioned workbench main process module to provide corresponding capabilities for the workbench main process module. In addition, each business can also provide a UI module for its own business, and integrate the UI module as a business component into the above-mentioned workbench UI module to provide corresponding capabilities for the workbench UI module.

[0095] Optionally, the service may include one or more implementation modes of, for example, an application, a web page, a web page plug-in, etc.

[0096] For example, Figure 5 As shown in Figure 1, the super work platform includes the work platform main process module and the work platform UI module. The services integrated in the super work platform include smart interconnection services, note services, document management services, and calendar services. Figure 5 As shown, the workbench main process module can integrate the smart interconnection main process module provided by the smart interconnection service, the note main process module provided by the note service, the document management main process module provided by the document management service, and the calendar main process module provided by the calendar service. The workbench UI module can integrate the smart interconnection UI module provided by the smart interconnection service, the note UI module provided by the note service, the document management UI module provided by the document management service, and the calendar UI module provided by the calendar service.

[0097] It should be understood that the workbench main process module and the workbench UI module, as common modules, can also implement common behaviors of various businesses and display system-level pages. Figure 1B In the super work platform interface shown, a sidebar 15 is also displayed while displaying the interface of the smart interconnection service.

[0098] In this way, through the design of distributed architecture, independent development based on business can be realized, and the business development results can be integrated into the public module, so that the business can be connected with the super work platform, reducing the difficulty of business development and expansion. In addition, the independent development and maintenance of each business can also avoid the redundancy of the entire super work platform.

[0099] In some embodiments, the super work platform integrates multiple businesses, so in the process of business implementation, interactions between multiple modules may be involved. As mentioned above, the rendering process and the main process communicate through the IPC channel. Then, in order to reduce the number of IPC channels corresponding to the super work platform, an observer manager can be configured in the work platform main process module.

[0100] Optionally, when the workbench main process module is started and a new service is added, the service registers a corresponding observer module with the workbench main process module. The service includes a public service and / or one or more distributed services. The public service includes, for example, the public capabilities provided by the super work platform. The distributed service includes, for example, the services integrated in the super work platform such as the above-mentioned smart interconnection service, note service, document management service, calendar service, etc.

[0101] Optionally, the observer manager may be used to manage observer modules corresponding to various services.

[0102] Optionally, during the registration process, the observer module corresponding to each service may also register the ability to obtain IPC communication of the corresponding service. Optionally, each service registers two IPC channels belonging to its own service with its own observer module to realize the communication from the rendering process to the main process, and the two-way inter-process communication from the main process to the rendering process.

[0103] Optionally, in the process of notifying the observer manager to execute, a parameter may be passed to the observer manager to indicate which different services need to send signals to, so as to implement the observer manager to distribute the signals. Optionally, the parameter is, for example, a service identifier. In this way, multiple behaviors of the same service communicate based on the same IPC channel, and the observer manager may also be used to distribute signals to different services, thereby reducing the number of IPC channels and improving communication efficiency.

[0104] Optionally, when the UI module initiates IPC communication to a certain business, the UI module will send the parameters of the business to be operated to the workbench main process module through the IPC channel of its own business. Based on the parameters, the workbench main process module sends a first signal to the observer module corresponding to the certain business to trigger the call to the main process module corresponding to the certain business. Optionally, the UI module can also register a callback event with the workbench main process module. In this way, in response to the callback event, the main process module corresponding to the certain business can also determine whether corresponding feedback is required for the first signal. For example, when corresponding feedback is required, the main process module corresponding to the certain business can also send a second signal to the corresponding UI module through another IPC channel corresponding to the certain business.

[0105] Based on the following Figure 5 The distributed architecture of the example super work platform gives a detailed introduction to the implementation of the observer manager.

[0106] In some embodiments, a service may have one behavior, and the one behavior may be implemented based on the IPC channel registered with the service.

[0107] For example, when the super platform is started for the first time or a new service is added to the super platform, the corresponding service can register with the workbench main process module through the registration module. For example, register the corresponding observer module in the observer manager of the workbench main process module. Figure 5 As shown, the observer manager of the workbench main process module includes the main UI observer module corresponding to the public business, the note observer module corresponding to the note business, the document management observer module corresponding to the document management business, etc. It should be understood that Figure 5 The smart interconnection observer module corresponding to the smart interconnection service and the calendar observer module corresponding to the calendar service are not shown.

[0108] When the document management UI module initiates communication with the workbench main process module for the first time, an IPC channel A is created (as shown in mark ①). The rendering process sends parameters to the main process through the IPC channel A. The parameters can point to the business that the document management UI module needs to call. Among them, the inter-process communication initiated by the document management UI module can use the IPC channel A. For example, the main process determines that the indicated business is the note business based on the parameter. Then, the main process can send a first signal to the note observer module. The note observer module can call the note main process module based on the first signal. In this way, the rendering process uses the IPC channel corresponding to the document management business to realize communication with the main process, thereby realizing access to the underlying resources of the note business.

[0109] If the document management service has registered a callback event, then Figure 5As shown, when the main process module of the note initiates communication with the rendering module for the first time, an IPC channel B is created (as shown in mark ②), and the main process sends a callback to the rendering process through the IPC channel B. For example, the trigger interface displays the page content corresponding to the note business.

[0110] It should be understood that the workbench main process module is the note-taking main process module provided by the note-taking service, and the workbench UI module integrates the document management UI module provided by the document management service. The IPC communication between the rendering process and the main process realizes the interaction between the workbench UI module and the workbench main process module. Then, Figure 5 In the figure, the IPC channel shown by symbol ① should be understood as the inter-process communication between the rendering process corresponding to the workbench UI module and the main process corresponding to the workbench main process module, and the IPC channel shown by symbol ② should be understood as the inter-process communication between the main process corresponding to the workbench main process module and the rendering process corresponding to the workbench UI module. The arrow between the note observer module and the note main process module indicates that the observer module calls the corresponding module through a signal, rather than indicating an IPC channel. Other examples include Figure 3 , Figure 6 , Figure 7 For the meaning of the arrows between modules, please refer to the above Figure 5 The relevant content will not be elaborated on here.

[0111] In addition, the super workbench can also include other modules, such as napi, uikit, interface, logger, etc. Among them, napi is the full name of Node-API, which is the API for Node.js, allowing native modules to be built and interacted in a consistent way in different versions of Node.js. UIkit is a framework that is mainly used for user interface design of system applications. It provides various UI components and tools to help developers create application interfaces. Interface can be an application programming interface (API) used to store common constants used by the main process and rendering process. Logger is a tool or module used to record application runtime information. It is usually used for debugging and monitoring. It can record errors, warnings and other important events for developers to analyze.

[0112] In other embodiments, a service may have multiple behaviors, and the multiple behaviors may be implemented based on the IPC channel registered with the service.

[0113] For example, based on the above Figure 5 As mentioned above, the observer modules corresponding to each business have been registered in the observer manager, and the IPC channel A corresponding to the document management UI module (as shown in mark ①) and the IPC channel B corresponding to the note main process module (as shown in mark ②) have been created. Figure 6As shown, the rendering process determines the operations of the document management service and the note service in the document management UI module, that is, the current operation corresponds to two business behaviors. Then, the rendering process sends parameters 1 and 2 to the main process through the IPC channel A of the document management service. The main process sends signal 1 to the document management observer module according to parameter 1 to trigger the document management observer module to call the document management main process module; and the main process sends signal 2 to the note observer module according to parameter 2 to trigger the note observer module to call the note main process module.

[0114] Optionally, in response to the registration of the callback event, the main process can feedback the response of signal 2 to the rendering process through the IPC channel B of the note service (as shown by label ②), and the note UI module can obtain the response of signal 2. In response to the registration of the callback event, the main process can also create an IPC channel C (as shown by label ③), and feedback the response of signal 1 to the rendering process through the IPC channel C, and the document management UI module can obtain the response of signal 1.

[0115] In this way, each business only needs to register two IPC channels to realize the communication of different behaviors of the business between the rendering process and the main process, effectively reducing resource usage and improving communication efficiency.

[0116] Moreover, compared to the prior art, in which each business behavior needs to register an IPC channel with the main process, the application processing method provided in the embodiment of the present application is that the same business only needs to encapsulate the public channels belonging to its own business (such as the IPC channel shared by the business) into its own observer module, and only needs to write a registration for the observer module in the main process, thereby improving the development efficiency of each business and the efficiency of business access to the super workbench.

[0117] In addition, the number of IPC channels is reduced to avoid the problem of duplicate names.

[0118] In some other embodiments, multiple services may have the same behavior, and the same behavior may be implemented based on IPC channels registered with different services.

[0119] For example, based on the above Figure 5 As mentioned above, the observer modules corresponding to each business have been registered in the observer manager, and the IPC channel A corresponding to the document management UI module (as shown in mark ①) and the IPC channel B corresponding to the note main process module (as shown in mark ②) have been created. Figure 7As shown, the rendering process determines the operation of the note business in the document management UI module. Then, the rendering process sends parameter 2 to the main process through the IPC channel A of the document management business. The main process sends signal 2 to the note observer module based on parameter 2 to trigger the note observer module to call the note main process module. In addition, the rendering process determines the operation of the note business in the note UI module. When the note UI module initiates communication with the workbench main process module for the first time, an IPC channel D is created (as shown in label ④). Through this IPC channel D, the rendering process sends parameters to the main process. The parameters can point to the business that the note UI module needs to call. Then, the rendering process sends parameter 2 to the main process through the IPC channel D of the note business. The main process sends signal 2 to the note observer module based on parameter 2 to trigger the note observer module to call the note main process module.

[0120] Optionally, in response to the registration of the callback event, the main process can feedback the response status of signal 2 to the rendering process through the IPC channel B of the note service (as shown in label ②), and the note UI module can obtain the response status of signal 2.

[0121] In this way, when multiple services point to the same behavior, the rendering process and the main process can also achieve inter-process communication through the IPC channel corresponding to the service. In this way, when a problem occurs in the IPC channel, it is also easy to determine the source of the problem.

[0122] Among them, the above text takes the interaction between the rendering process and the main process to realize the scenario of distributed business (such as smart interconnection business, note business, document management business, calendar business) as an example to introduce the relevant content of the IPC channel. For example, in an example scenario, the super work platform opens some documents and modifies them according to user operations, then switches to the note interface, and then the user instructs to close the super work platform. In this case, the super work platform needs to jump to the document management business interface, confirm the save of the unsaved documents, and then close the super work platform. In this process, the rendering process determines the operation of the document management business in the note UI module, and sends parameter 1 (such as the document management business identifier) ​​indicating the document management business to the main process through the IPC channel corresponding to the note UI module (such as one of the IPC channels of the note business). The main process sends a signal 1 to the document management observer module based on the parameter 1 of the document management business to trigger the document management observer module to call the document management main process module to save the document.

[0123] Optionally, as described above, the super work platform is also integrated with public services, such as main UI services, such as the sidebar for displaying the super workbench. Then, the interaction between the rendering process and the main process can also realize the main UI service. For example, in an example scenario, an account is logged in in the public UI module. After the account is logged in, it is necessary to notify the note service. The note display can turn on a pop-up box for cloud synchronization to prompt the user. Among them, for example, the workbench UI module integrates a public UI module. In this process, the rendering process determines the operation of the note service in the public UI module, and sends parameter 2 (such as a note service identifier) ​​indicating the note service to the main process through the IPC channel corresponding to the public UI module (such as one of the IPC channels of the public service). The main process sends a signal 2 to the note observer module based on the parameter 2 of the note service to trigger the note observer module to call the note main process module to achieve account synchronization. In addition, the public UI module registers the corresponding callback event. Then, after the note main process module realizes the synchronization of the account, the main process can feedback the response status of signal 2 to the rendering process through the IPC channel corresponding to the note main process module (such as the second IPC channel of the note business). The note UI module can obtain the response status of signal 2 and realize the pop-up box displaying cloud synchronization.

[0124] The following is a detailed description of the process by which desktop applications run on the main process and the rendering process.

[0125] Figure 8 A flowchart of an application processing method provided in an embodiment of the present application. Among them, an application processing method provided in an embodiment of the present application is applied to a desktop application. Optionally, the desktop application includes: an observer manager, one or more main process modules and one or more user interface modules, a main process module and a user interface module belong to the same business, the desktop application runs on the main process and the rendering process, the main process is used to call the observer manager and the main process module, and the rendering process is used to call the user interface module.

[0126] It should be noted that this method does not Figure 8 The specific order described below is a limitation, and it should be understood that in other embodiments, the order of some steps in the method can be interchanged according to actual needs, or some steps can be omitted or deleted. The method includes the following steps:

[0127] S801: Determine an operation on a first service in a first user interface module through a rendering process.

[0128] Among them, the first user interface module is a user interface module.

[0129] Optionally, the first service includes a public service and / or one or more distributed services.

[0130] For example, Figure 5 As shown, the first user interface module is, for example, a document management UI module. Public services are, for example, main UI services, such as a sidebar for displaying a super workbench, etc. Distributed services include, for example, smart interconnection services, note services, document management services, and calendar services.

[0131] Optionally, the desktop application is, for example, a super work platform, such as an executable exe program.

[0132] In some embodiments, the desktop application includes: an observer manager, a main process module of a common business, a user interface module of a common business, one or more main process modules of distributed businesses, and one or more user interface modules of distributed businesses, the main process module of the distributed business is configured in the main process module of the common business, and the user interface module of the distributed business is configured in the user interface module of the common business; the observer manager includes an observer module of a common business and one or more observer modules of distributed businesses.

[0133] In some examples, the observer module of the common service is registered after the main process module of the common service is started; the observer module of the distributed service is registered after the user interface module and the main process module of the distributed service are called.

[0134] Optionally, the call between modules can also be described as calling, loading, pulling up, etc.

[0135] For example, Figure 5 As shown, the super work platform includes an observer manager, a workbench main process module for a common business, a workbench UI module for a common business, main process modules for multiple distributed businesses (such as smart interconnection business, note business, document management business, calendar business) and UI modules for multiple distributed businesses. Among them, the main process module of the distributed business is configured in the workbench main process module of the common business, and the UI module of the distributed business is configured in the workbench UI module of the common business. The observer manager includes an observer module for a common business (such as the main UI observer module) and multiple observer modules for distributed businesses.

[0136] Optionally, the main UI observer module of the public service is registered after the main workbench process module of the public service is started. The observer module of the distributed service is registered after the UI module of the distributed service and the main workbench process module are called. For example, the note observer module of the note service is registered after the note UI module of the note service and the main workbench process module are called.

[0137] In this way, different distributed services share the relevant resources of the public service.

[0138] In other embodiments, the desktop application includes: an observer manager, one or more main process modules of distributed services, and one or more user interface modules of distributed services; the observer manager includes one or more observer modules of distributed services.

[0139] In some examples, the observer module of the distributed business is registered after the user interface module and the main process module of the distributed business are called.

[0140] In this way, public resources can also be excluded from desktop applications.

[0141] Thus, compared with the prior art, where each business behavior needs to register an IPC channel with the main process, the application processing method provided by the embodiment of the present application only requires the same business to encapsulate the public channel belonging to its own business (such as the IPC channel shared by the business) into its own observer module, and write an observer module registration in the main process, thereby improving the development efficiency of each business and the efficiency of business access to the super workbench. In addition, the reduction in the number of IPC channels avoids the problem of duplicate names.

[0142] S802: Send a first parameter to the main process through the rendering process on the first inter-process communication IPC channel.

[0143] The first IPC channel is a channel corresponding to the first user interface module, and the first parameter is used to indicate the first service.

[0144] In some embodiments, the number of IPC channels of each user interface module in the rendering process is 1, and the IPC channels of different user interface modules in the rendering process are different.

[0145] For example, Figure 5 As shown, when the document management UI module initiates communication with the workbench main process module for the first time, an IPC channel A is created (as shown in mark ①). The IPC channel A is used, for example, as the first IPC communication to implement the rendering process sending the first parameter to the main process. The first parameter can point to the service that the document management UI module needs to call. Among them, the inter-process communication initiated by the document management UI module can use the IPC channel A. For example, the first adoption number is the identifier of the note service, and the main process determines that the indicated service is the note service based on the first parameter.

[0146] As another example, Figure 7As shown, the rendering process determines the operation of the note service in the document management UI module. Then, the rendering process sends parameter 2 to the main process through the IPC channel A of the document management service. The main process sends signal 2 to the note observer module according to parameter 2 to trigger the note observer module to call the note main process module. In addition, the rendering process determines the operation of the note service in the note UI module. When the note UI module initiates communication with the workbench main process module for the first time, an IPC channel D is created (as shown in mark ④), and the rendering process sends parameters to the main process through the IPC channel D, and the parameters can point to the service that the note UI module needs to call. Then, the rendering process sends parameter 2 to the main process through the IPC channel D of the note service. The main process sends signal 2 to the note observer module according to parameter 2 to trigger the note observer module to call the note main process module. Among them, IPC channel A and IPC channel D are different IPC channels corresponding to different user interface modules.

[0147] In this way, each business only needs to register one IPC channel to realize the communication of different behaviors of the business from the rendering process to the main process, effectively reducing resource usage and improving communication efficiency.

[0148] S803: Call the observer manager based on the first parameter through the main process, and send a first signal to the observer manager.

[0149] Among them, the observer manager in the main process module is used to manage observer modules corresponding to multiple services.

[0150] In some embodiments, the observer manager includes one or more observer modules, and one observer module corresponds to one business. Calling the observer manager based on a first parameter through a main process and sending a first signal to the observer manager includes: calling the observer module corresponding to the first business based on the first parameter through the main process and sending the first signal to the observer module corresponding to the first business.

[0151] S804: Call the first main process module based on the first signal through the main process.

[0152] Wherein, the first main process module is one or more main process modules;

[0153] For example, Figure 5 As shown, the main process calls the note observer module corresponding to the note service based on the first parameter, and sends a first signal to the note observer module corresponding to the note service. The note observer module calls the note main process module based on the first signal.

[0154] In this way, the registered business behaviors can be distributed through the observer module corresponding to the business, thereby improving the development efficiency of each business and the efficiency of business access to the super workbench.

[0155] S805: Send a second signal to the rendering process on the second IPC channel through the main process.

[0156] Among them, the second IPC channel is different from the first IPC channel, and the second IPC channel is a channel corresponding to the first main process module.

[0157] In some embodiments, the number of IPC channels of each main process module on the main process is 1, and the IPC channels of different main process modules on the main process are different.

[0158] For example, Figure 5 As shown, if the document management service has registered a callback event, then when the main process module of the note initiates communication with the rendering module for the first time, an IPC channel B is created (as shown in mark ②), and the main process sends a callback to the rendering process through the IPC channel B, such as the second signal.

[0159] In another exemplary embodiment, in response to the registration of the callback event, the main process can feedback the response of signal 2 to the rendering process through the IPC channel B of the note service (as shown by mark ②), and the note UI module can obtain the response of signal 2. In response to the registration of the callback event, the main process can also create an IPC channel C (as shown by mark ③), and feedback the response of signal 1 to the rendering process through the IPC channel C, and the document management UI module can obtain the response of signal 1.

[0160] In this way, each business only needs to register one IPC channel to realize the communication of different behaviors of the business from the main process to the rendering process, effectively reducing resource usage and improving communication efficiency.

[0161] S806: Calling a second user interface module based on the second signal through the rendering process, so that the second user interface module determines a response status of the second signal.

[0162] The second user interface module and the first main process module both belong to the first service.

[0163] In some embodiments, the first user interface module is different from the second user interface module. Alternatively, the second user interface module at least includes the first user interface module.

[0164] For example, Figure 5 In the scenario shown, the first user interface module is a document management UI module, and the second user interface module is a note-taking UI module.

[0165] As another example, Figure 6 In the scenario shown, the first user interface module is a document management UI module, and the second user interface module is a document management UI module and a note UI module.

[0166] In this way, the response of the UI module can be implemented in the UI module or in other UI modules.

[0167] In some schemes, multiple embodiments of the present application can be combined, and the combined scheme can be implemented. Optionally, some operations in the process of each method embodiment are optionally combined, and / or the order of some operations is optionally changed. In addition, the execution order between the steps of each process is only exemplary and does not constitute a restriction on the execution order between the steps. There can also be other execution orders between the steps. It is not intended to indicate that the execution order is the only order in which these operations can be performed. A person of ordinary skill in the art will think of a variety of ways to reorder the operations described herein. In addition, it should be noted that the process details involved in a certain embodiment of this article are also applicable to other embodiments in a similar manner, or different embodiments can be used in combination.

[0168] In addition, some steps in the method embodiment may be equivalently replaced by other possible steps. Alternatively, some steps in the method embodiment may be optional and may be deleted in certain usage scenarios. Alternatively, other possible steps may be added to the method embodiment.

[0169] Furthermore, the various method embodiments may be implemented separately or in combination.

[0170] Combination of the above Figure 5-Figure 8 The application processing method provided by the embodiment of the present application is described in detail. Fig. 9 and Fig.10 The electronic device provided by the embodiments of the present application is described in detail.

[0171] In one possible design, Fig. 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. Fig. 9 As shown, the electronic device 900 may include: a processing unit 901, a transceiver unit 902, and a display unit 903. The electronic device 900 may be used to implement the functions of the electronic device involved in the above method embodiment. Optionally, the electronic device is installed with a desktop application. Among them, the electronic device 900 can be implemented as an application processing device, which is applied to a desktop application.

[0172] Optionally, the processing unit 901 is used to support the electronic device 900 to execute Figure 8 S801-S806 in.

[0173] Optionally, the transceiver unit 902 is used to support the electronic device 900 to receive user operations.

[0174] Optionally, the display unit 903 is used to support the electronic device 900 to implement interface display.

[0175] Among them, the transceiver unit may include a receiving unit and a sending unit, and may be implemented by a transceiver or a transceiver-related circuit component, and may be a transceiver or a transceiver module. The operations and / or functions of each unit in the electronic device 900 are respectively to implement the corresponding process of the application processing method described in the above method embodiment. All relevant contents of each step involved in the above method embodiment can be referred to the functional description of the corresponding functional unit, and for the sake of brevity, they will not be repeated here.

[0176] Optionally, Fig. 9 The electronic device 900 shown may also include a storage unit ( Fig. 9 (not shown), the storage unit stores a program or instruction. When the processing unit 901, the transceiver unit 902 and the display unit 903 execute the program or instruction, Fig. 9 The electronic device 900 shown can execute the application processing method described in the above method embodiment.

[0177] Fig. 9 The technical effects of the electronic device 900 shown can refer to the technical effects of the application processing method described in the above method embodiment, and will not be repeated here.

[0178] In addition to being in the form of the electronic device 900, the technical solution provided in the present application may also be a functional unit or chip in the electronic device, or a device used in conjunction with the electronic device.

[0179] Fig.10 A schematic diagram of a possible product form of an electronic device 100 provided in an embodiment of the present application.

[0180] As a possible product form, the electronic device 100 described in the embodiment of the present application may be a communication device.

[0181] The communication device includes a processor 1001. Optionally, the communication device also includes a transceiver 1002, a memory 1003 and a bus. The processor 1001 is used to execute Figure 8 S801-S806 in, and / or other processing operations that the electronic device 100 needs to perform in the embodiment of the present application.

[0182] As another possible product form, the electronic device 100 described in the embodiment of the present application can also be implemented by a general-purpose processor or a dedicated processor, also known as a chip.

[0183] The chip includes: a processing circuit 1001. Optionally, the communication device also includes a transceiver pin 1002. The processing circuit 1001 is used to execute Figure 8 S801-S806 in, and / or other processing operations that the electronic device 100 needs to perform in the embodiment of the present application.

[0184] An embodiment of the present application also provides a chip system, including: a processor, the processor is coupled to a memory, the memory is used to store programs or instructions, when the program or instructions are executed by the processor, the chip system implements the method in any of the above method embodiments.

[0185] Optionally, the processor in the chip system may be one or more. The processor may be implemented by hardware or by software. When implemented by hardware, the processor may be a logic circuit, an integrated circuit, etc. When implemented by software, the processor may be a general-purpose processor implemented by reading software code stored in a memory.

[0186] Optionally, the memory in the chip system may also be one or more. The memory may be integrated with the processor or may be separately arranged with the processor, which is not limited in the embodiments of the present application. Exemplarily, the memory may be a non-transient processor, such as a read-only memory ROM, which may be integrated with the processor on the same chip or may be arranged on different chips respectively. The embodiments of the present application do not specifically limit the type of memory and the arrangement of the memory and the processor.

[0187] Exemplarily, the chip system can be a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on chip (SoC), a central processor unit (CPU), a network processor (NP), a digital signal processor (DSP), a microcontroller unit (MCU), a programmable logic device (PLD) or other integrated chips.

[0188] It should be understood that each step in the above method embodiment can be completed by an integrated logic circuit of hardware in a processor or by instructions in the form of software. The method steps disclosed in the embodiments of the present application can be directly embodied as being executed by a hardware processor, or by a combination of hardware and software modules in a processor.

[0189] An embodiment of the present application also provides a computer-readable storage medium, in which a computer program is stored. When the computer program runs on a computer, the computer executes the above-mentioned related steps to implement the application processing method in the above-mentioned embodiment.

[0190] The embodiment of the present application also provides a computer program product. When the computer program product is run on a computer, the computer is caused to execute the above-mentioned related steps to implement the application processing method in the above-mentioned embodiment.

[0191] In addition, an embodiment of the present application further provides a device. The device may be a component or a module, and the device may include one or more processors and a memory connected to each other. The memory is used to store a computer program. When the computer program is executed by one or more processors, the device executes the application processing method in each of the above method embodiments.

[0192] Among them, the device, computer-readable storage medium, computer program product or chip provided in the embodiments of the present application are used to execute the corresponding methods provided above. Therefore, the beneficial effects that can be achieved can refer to the beneficial effects in the corresponding methods provided above, and will not be repeated here.

[0193] The steps of the method or algorithm described in conjunction with the disclosure of the embodiments of the present application can be implemented in hardware or by executing software instructions by a processor. The software instructions can be composed of corresponding software modules, and the software modules can be stored in random access memory (RAM), flash memory, read only memory (ROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, mobile hard disks, CD-ROMs or any other form of storage medium known in the art. An exemplary storage medium is coupled to a processor so that the processor can read information from the storage medium and can write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an application specific integrated circuit (ASIC).

[0194] Through the description of the above implementation methods, those skilled in the art can clearly understand that for the convenience and simplicity of description, only the division of the above functional modules is used as an example. In practical applications, the above functions can be assigned to different functional modules as needed; that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. The specific working process of the system, device and unit described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0195] In the several embodiments provided in the present application, it should be understood that the disclosed method can be implemented in other ways. The device embodiments described above are merely schematic. For example, the division of the modules or units is only a logical function division, and there may be other division methods in actual implementation; for example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of modules or units, which can be electrical, mechanical or other forms.

[0196] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0197] Computer-readable storage media include, but are not limited to, any of the following: a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and other media that can store program codes.

[0198] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. An application processing method, characterized in that: Applied to a desktop application, the desktop application includes: an observer manager, one or more main process modules and one or more user interface modules, a main process module and a user interface module belong to the same service, the desktop application runs on the main process and the rendering process, the main process is used to call the observer manager and the main process module, and the rendering process is used to call the user interface module; The method comprises: Determine, by means of the rendering process, an operation on a first service in a first user interface module, wherein the first user interface module is a user interface module; Sending a first parameter to the main process through the rendering process on a first inter-process communication IPC channel, where the first IPC channel is a channel corresponding to the first user interface module, and the first parameter is used to indicate the first service; Calling the observer manager based on the first parameter through the main process, and sending a first signal to the observer manager; Calling a first main process module based on the first signal by the main process, where the first main process module is one or more main process modules; Sending a second signal to the rendering process through the main process on a second IPC channel, where the second IPC channel is different from the first IPC channel, and the second IPC channel is a channel corresponding to the first main process module; Based on the second signal, the second user interface module is called through the rendering process so that the second user interface module determines the response of the second signal, and the second user interface module and the first main process module belong to the first business.

2. The method according to claim 1, characterized in that The observer manager includes one or more observer modules, and one observer module corresponds to one service; The calling the observer manager based on the first parameter by the main process and sending a first signal to the observer manager includes: The observer module corresponding to the first service is called by the main process based on the first parameter, and the first signal is sent to the observer module corresponding to the first service.

3. The method according to claim 1 or 2, characterized in that: The first service includes a public service and / or one or more distributed services.

4. The method according to any one of claims 1 to 3, characterized in that The desktop application includes: the observer manager, a main process module of a common business, a user interface module of a common business, one or more main process modules of distributed businesses and one or more user interface modules of distributed businesses, the main process module of the distributed business is configured in the main process module of the common business, and the user interface module of the distributed business is configured in the user interface module of the common business; the observer manager includes an observer module of a common business and one or more observer modules of distributed businesses.

5. The method according to claim 4, characterized in that The observer module of the public service is registered after the main process module of the public service is started; the observer module of the distributed service is registered after the user interface module and the main process module of the distributed service are called.

6. The method according to any one of claims 1 to 3, characterized in that The desktop application includes: the observer manager, one or more main process modules of distributed services and one or more user interface modules of distributed services; the observer manager includes one or more observer modules of distributed services.

7. The method according to claim 6, characterized in that The observer module of the distributed service is registered after being called by the user interface module and the main process module of the distributed service.

8. The method according to any one of claims 1 to 7, characterized in that The first user interface module is different from the second user interface module; Alternatively, the second user interface module at least includes the first user interface module.

9. The method according to any one of claims 1 to 8, characterized in that The number of IPC channels of each user interface module on the rendering process is 1, and different user interface modules have different IPC channels on the rendering process; The number of IPC channels of each main process module on the main process is 1, and the IPC channels of different main process modules on the main process are different.

10. An application processing device, characterized in that: Applied to desktop applications, the application processing device includes: a module for executing the method according to any one of claims 1-9.

11. A computer device, characterized in that: include: A memory and a processor, wherein the memory is used to store computer programs or instructions, and the processor is used to call the computer program or instructions in the memory to execute the method according to any one of claims 1 to 9.

12. A computer-readable storage medium, characterized in that: The method comprises a computer program or an instruction, which, when executed on a computer, causes the computer to execute the method according to any one of claims 1 to 9.

13. A computer program product, characterized in that The computer program product comprises: a computer program or instructions, and when the computer program or instructions are run on a computer, the computer is caused to perform the method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Inter-process communication method and device

    CN103631664A

  • Data processing method and device, electronic equipment and storage medium

    CN115525401A

  • Event communication management method based on APP and related equipment thereof

    CN118075731A

  • Message transmission method and device, equipment and storage medium

    CN118672795A

  • IPC communication method and device among multiple processes, computer equipment and medium

    CN118819880A