A display method, electronic device and medium

By querying target nodes in electronic devices, the supported functional controls can be identified and displayed, solving the problem of large design workload for different mobile phone models and realizing personalized function display and improved user experience.

CN117971335BActive Publication Date: 2026-05-19HONOR DEVICE CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HONOR DEVICE CO LTD
Filing Date
2022-10-26
Publication Date
2026-05-19

AI Technical Summary

Technical Problem

Designing different built-in applications for different phone models significantly increases the design workload, making it impossible to effectively reduce it.

Method used

By querying target nodes in electronic devices to determine their supported functions and displaying the corresponding function controls in the user interface, the need to design dedicated built-in applications for each mobile phone model is reduced.

Benefits of technology

It enables the display of personalized function controls on different mobile phone models, reducing design workload and improving user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117971335B_ABST
    Figure CN117971335B_ABST
Patent Text Reader

Abstract

The application provides a display method, an electronic device and a medium, and relates to the technical field of terminals. The method can be applied to the electronic device, and the method comprises the following steps: the electronic device queries a target node associated with a target application, the target node being used to represent a function supported by the target application on the electronic device; and then the electronic device displays a function control corresponding to each target node obtained by the query on a user interface of the target application. In this way, the method can display different function controls for different models of electronic devices while reducing the design workload.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of terminal technology, and in particular to a display method, electronic device and medium. Background Technology

[0002] With the development of terminal technology, electronic devices such as mobile phones are becoming increasingly feature-rich and powerful. Electronic devices can present rich and varied graphical user interfaces (GUIs), displaying a variety of functional controls for user operation.

[0003] Currently, different mobile phone models often have different functions, with newer models typically offering more features than older ones. These functions are usually provided to users through functional controls in the graphical user interface (GUI) of built-in applications. This necessitates designing different built-in applications for different mobile phone models, ensuring that the functional controls displayed by these applications vary across different phone models.

[0004] However, designing different built-in applications for different phone models would greatly increase the design workload when there are many phone models. Summary of the Invention

[0005] This application provides a display method, electronic device, and medium that can display different functional controls for different models of electronic devices while reducing design workload.

[0006] To achieve the above objectives, this application adopts the following technical solution:

[0007] Firstly, this application provides a display method applicable to electronic devices, such as mobile phones, tablets, desktops, laptops, notebooks, handheld computers, netbooks, wearable electronic devices, and smartwatches. Specifically, the method includes: the electronic device querying target nodes associated with a target application, whereby the target node represents the functions supported by the target application on the electronic device; if the electronic device finds a target node, it indicates that the electronic device supports the functions corresponding to the target node; and then, the electronic device can display the functional controls corresponding to each queried target node in the user interface of the target application.

[0008] As can be seen, in this application, an electronic device can query the capabilities of nodes to obtain the functions supported by the electronic device in the target application, and then decide to display the functional controls of the supported nodes in the user interface of the target application. Thus, this method eliminates the need to design a separate built-in application for each model of electronic device. The electronic device can also display functional controls corresponding to the nodes it supports in the relevant interface of the built-in application, allowing users of different mobile phone models to experience different functions.

[0009] In some possible implementations, the electronic device can query the target node as follows: Specifically, the electronic device obtains the configuration file of the target node associated with the target application, parses the configuration file to obtain the node name and plugin library path of the target node. Then, the electronic device retrieves the plugin library of the target node from the location indicated by the plugin library path, and queries the target node based on the node name and the plugin library of the target node.

[0010] In some possible implementations, the electronic device can parse the plugin library of the target node to obtain the node query function, and then call the node query function to query the target node for the node name in the target node's plugin library.

[0011] In some possible implementations, the electronic device can query the target node associated with the target application from local resources, or from cloud resources, or simultaneously from both local and cloud resources, for example, querying from local resources first and then from cloud resources.

[0012] In some possible implementations, the electronic device may obtain the target node's configuration file from local resources as a local configuration file, or from cloud resources as a cloud configuration file.

[0013] In some possible implementations, the plugin library for the target node obtained by the electronic device from local resources can be a local plugin library, while the plugin library for the target node obtained from cloud resources can be a cloud plugin library.

[0014] In some possible implementations, the electronic device can obtain the local configuration file of the target node associated with the target application, parse the local configuration file to obtain the local node name and local plugin library path, and obtain the local plugin library of the target node based on the local plugin library path; then, it can obtain the cloud configuration file of the target node associated with the target application, parse the cloud configuration file to obtain the cloud node name and cloud plugin library path, and obtain the cloud plugin library of the target node based on the cloud plugin library path.

[0015] In some possible implementations, the electronic device includes an application layer and a media middleware post-processing framework layer. The application layer includes a target application, and the media middleware post-processing framework layer includes a node management module that queries target nodes associated with the target application. This includes: the target application sending a node query instruction to the node management module for the target node; and the node management module querying the target node after receiving the node query instruction.

[0016] In some possible implementations, the media middleware post-processing framework also includes a local resource management module and a cloud resource management module; querying target nodes associated with the target application includes: obtaining the local configuration file of the target node from the local resource management module, parsing the local configuration file to obtain the local node name and local plugin library path of the target node, obtaining the local plugin library based on the local plugin library path, loading and parsing the local plugin library to obtain the interface of the local plugin library for querying the existence of the node, and passing the local node name to the interface of the local plugin library for querying the existence of the node to query the target node; obtaining the cloud configuration file of the target node from the cloud resource management module, parsing the cloud configuration file to obtain the cloud node name and cloud plugin library path of the target node, obtaining the cloud plugin library based on the cloud plugin library path, loading and parsing the cloud plugin library to obtain the interface of the cloud plugin library for querying the existence of the node, and passing the cloud node name to the interface of the cloud plugin library for querying the existence of the node to query the target node.

[0017] In a second aspect, this application provides an electronic device, which includes a memory and a processor; the memory is used to store a computer program; the processor is used to execute the computer program in the memory to implement the method described in any possible implementation of the first aspect.

[0018] Thirdly, this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in any possible implementation of the first aspect.

[0019] Fourthly, this application provides a computer program product that, when run on a computer, causes the computer to perform the method described in any possible implementation of the first aspect.

[0020] The technical solution of this application has the following beneficial effects:

[0021] This application provides a display method. The method includes an electronic device querying target nodes associated with a target application. These target nodes represent the functions supported by the target application on the electronic device. If the electronic device finds a target node, it indicates that the electronic device supports the functions corresponding to that target node. The electronic device can then display the functional controls corresponding to each queried target node in the user interface of the target application. In this method, the electronic device can obtain the functions supported by the electronic device on the target application by querying the capabilities of nodes, and then decide which node functional controls to display in the user interface of the target application. Thus, this method eliminates the need to design separate built-in applications for each model of electronic device. The electronic device can also display functional controls corresponding to the nodes it supports in the relevant interface of the built-in application based on the nodes it supports, allowing users of different mobile phone models to experience different functions. Attached Figure Description

[0022] Figure 1 A schematic diagram illustrating the composition of an electronic device provided in an embodiment of this application;

[0023] Figure 2 A schematic diagram of the software structure of an electronic device provided in an embodiment of this application;

[0024] Figure 3 A flowchart illustrating a demonstration method provided in an embodiment of this application;

[0025] Figure 4 A schematic diagram illustrating an application for opening a gallery;

[0026] Figure 5A A schematic diagram of a gallery interface provided in an embodiment of this application;

[0027] Figure 5B A schematic diagram of a photo album interface provided in an embodiment of this application;

[0028] Figure 5C A schematic diagram illustrating a photo display interface provided in an embodiment of this application;

[0029] Figure 5D This is a schematic diagram of an editing interface provided in an embodiment of this application. Detailed Implementation

[0030] The terms "first," "second," and "third," etc., used in this application specification, claims, and drawings are used to distinguish different objects, not to limit a specific order.

[0031] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0032] To ensure clarity and conciseness in the description of the following embodiments, a brief introduction to the related technologies is given first:

[0033] A media platform post-processing framework integrates various media data processing functions. Different functions are manifested through different nodes; that is, different nodes provide different functionalities. In some examples, the capabilities of nodes in the media platform post-processing framework vary across different electronic devices. Application-layer applications can use the media platform post-processing framework to query the capabilities supported by electronic devices and invoke relevant capabilities to achieve various functions, such as video editing and image capture. In some examples, electronic devices can dynamically display functional controls; therefore, different users will experience different functionalities depending on the electronic device.

[0034] Generally, to facilitate user experience, electronic devices such as mobile phones come pre-installed with several applications, such as cameras, gallery, phone, SMS, browsers, and universal remote controls. Different phone models often have different functions, with newer models typically offering more features than older ones. For example, to increase the popularity of newer phone models, they often include more diverse functions in their gallery. For instance, if phone 1 is a version older than phone 2, its built-in gallery might offer filter functionality, while phone 2's gallery might not. For example, phone 1 might display filter controls in the photo editing interface after the user selects a photo from the gallery, allowing them to add filters to the photo. Phone 2, however, would not display these filter controls in its editing interface. For example, both phone 1 and phone 2 can display the function controls for adding filters in their editing interfaces, but phone 1 has more filter options than phone 2. For instance, phone 1 supports filter 1, filter 2, and filter 3, while phone 2 only supports filter 1 and filter 2 and does not support filter 3.

[0035] Currently, different built-in applications need to be designed for different mobile phone models, which will greatly increase the design workload as the number of mobile phone models increases.

[0036] In view of this, this application provides a display method that can be applied to an electronic device, enabling the electronic device to display functional controls corresponding to its own model. Specifically, the electronic device can receive a trigger operation for a target application and launch the target application based on the trigger operation. After the target application is launched, the electronic device can query the nodes (i.e., functions) it supports from local resources and / or cloud resources, and then display the functional controls corresponding to the nodes it supports on the relevant interface of the target application.

[0037] In this way, instead of designing a separate built-in application for each model of mobile phone, a universal built-in application can be designed. The mobile phone can display the corresponding functional controls on the relevant interface of the built-in application based on the nodes it supports, allowing users of different mobile phone models to experience different functions.

[0038] In some embodiments, the electronic device may also be a tablet computer, desktop computer, laptop computer, ultra-mobile personal computer (UMPC), handheld computer, netbook, personal digital assistant (PDA), wearable electronic device, smartwatch, etc. This application does not impose any special limitations on the specific form of the aforementioned electronic device. In this embodiment, the structure of the electronic device can be as follows: Figure 1 As shown, Figure 1 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.

[0039] like Figure 1 As shown, the electronic device may include a processor 110, internal memory 121, antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, sensor module 180, display screen 194, etc. The sensor module 180 may include a touch sensor 180K, etc.

[0040] It is understood that the structure illustrated in this embodiment does not constitute a specific limitation on the electronic device. In other embodiments, the electronic device may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0041] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). Different processing units may be independent devices or integrated into one or more processors. For example, in this application, after a target application installed on the electronic device is started, processor 110 may query target nodes associated with the target application. These target nodes represent the functions supported by the target application on the electronic device. If a target node associated with the target application is found, the corresponding functional controls are displayed in the user interface of the target application.

[0042] The controller can serve as the nerve center and command center of an electronic device. Based on the instruction opcode and timing signals, the controller generates operation control signals to control the fetching and execution of instructions.

[0043] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can retrieve it directly from the memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.

[0044] In some embodiments, the processor 110 may include one or more interfaces. Interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.

[0045] The I2C interface is a bidirectional synchronous serial bus, including a serial data line (SDA) and a serial clock line (SCL). In some embodiments, the processor 110 may include multiple I2C buses. The processor 110 can couple to touch sensors such as the touch sensor 180K through different I2C bus interfaces. For example, the processor 110 can couple to the touch sensor 180K through the I2C interface, enabling the processor 110 and the touch sensor 180K to communicate via the I2C bus interface, thus realizing the touch function of the electronic device. Based on the touch function of the electronic device, after the user touches the application icon displayed on the electronic device, the electronic device can launch the application.

[0046] The UART interface is a universal serial data bus used for asynchronous communication. This bus can be a bidirectional communication bus. It converts the data to be transmitted between serial and parallel communication. In some embodiments, the UART interface is typically used to connect the processor 110 and the wireless communication module 160.

[0047] The MIPI interface can be used to connect the processor 110 to peripheral devices such as the display screen 194. The MIPI interface includes a camera serial interface (CSI) and a display serial interface (DSI). In some embodiments, the processor 110 and the camera communicate via the CSI interface to enable the electronic device's shooting function. The processor 110 and the display screen 194 communicate via the DSI interface to enable the electronic device's display function. For example, based on the display function, the electronic device can display a relevant interface.

[0048] The GPIO interface can be configured via software. It can be configured as a control signal or a data signal. In some embodiments, the GPIO interface can be used to connect the processor 110 to a camera, display screen 194, wireless communication module 160, sensor module 180, etc. The GPIO interface can also be configured as an I2C interface, I2S interface, UART interface, MIPI interface, etc.

[0049] It is understood that the interface connection relationships between the modules illustrated in this embodiment are merely illustrative and do not constitute a limitation on the structure of the electronic device. In other embodiments of this application, the electronic device may also employ different interface connection methods or combinations of multiple interface connection methods as described in the above embodiments.

[0050] The wireless communication function of electronic devices can be realized through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor and baseband processor, etc.

[0051] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in the electronic device can be used to cover one or more communication frequency bands. Different antennas can also be reused to improve antenna utilization. For example, antenna 1 can be reused as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in conjunction with a tuning switch.

[0052] The mobile communication module 150 can provide solutions for wireless communication applications including 2G / 3G / 4G / 5G in electronic devices. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1. In some embodiments, at least some functional modules of the mobile communication module 150 may be housed in processor 110. In some embodiments, at least some functional modules of the mobile communication module 150 and at least some modules of the processor 110 may be housed in the same device.

[0053] The modem processor may include a modulator and a demodulator. The modulator modulates the low-frequency baseband signal to be transmitted into a mid-to-high frequency signal. The demodulator demodulates the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After processing by the baseband processor, the low-frequency baseband signal is transmitted to the application processor. The application processor displays images or videos via the display screen 194. In some embodiments, the modem processor may be a separate device. In other embodiments, the modem processor may be independent of the processor 110 and may be housed within the same device as the mobile communication module 150 or other functional modules.

[0054] The wireless communication module 160 can provide solutions for wireless communication applications in electronic devices, including wireless local area networks (WLANs) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, performs frequency modulation and filtering of the electromagnetic wave signals, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, perform frequency modulation and amplification, and convert them into electromagnetic waves for radiation via antenna 2.

[0055] In some embodiments, antenna 1 of the electronic device is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, enabling the electronic device to communicate with networks and other devices via wireless communication technology. The wireless communication technology may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time-Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technologies. The GNSS may include Global Positioning System (GPS), Global Navigation Satellite System (GLONASS), BeiDou Navigation Satellite System (BDS), Quasi-Zenith Satellite System (QZSS), and / or Satellite Based Augmentation Systems (SBAS).

[0056] In some examples, based on wireless communication technology for electronic devices, the electronic devices can download corresponding files from the cloud, such as cloud configuration files.

[0057] Electronic devices implement display functions through a GPU, a display screen 194, and an application processor. The GPU is a microprocessor for image processing, connecting the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations and for graphics rendering. The processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information.

[0058] Display screen 194 is used to display images, videos, etc. Display screen 194 includes a display panel. The display panel may be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a miniature LED, a microLED, a quantum dot light-emitting diode (QLED), etc. In some embodiments, the electronic device may include one or N displays 194, where N is a positive integer greater than 1.

[0059] The display screen 194 of an electronic device can display a series of graphical user interfaces (GUIs), which serve as the main screen of the electronic device. Generally, the size of the display screen 194 is fixed, and only a limited number of controls can be displayed on it. A control is a GUI element, a software component contained within an application, that controls all data processed by the application and interactive operations related to that data. Users can interact with controls through direct manipulation, thereby reading or editing information related to the application. Generally, controls can include visual interface elements such as icons, buttons, menus, tabs, text boxes, dialog boxes, status bars, navigation bars, and widgets. In some examples, the functional controls displayed by the electronic device may differ depending on the functions it supports.

[0060] Internal memory 121 can be used to store computer executable program code, which includes instructions. Processor 110 executes various functional applications and data processing of the electronic device by running the instructions stored in internal memory 121. For example, in this embodiment, processor 110 can query the nodes it supports by executing the instructions stored in internal memory 121, and then display the corresponding functional controls of the supported nodes on the relevant interface of the target application. Internal memory 121 may include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function (such as sound playback function, image playback function, etc.), etc. The data storage area may store data created during the use of the electronic device (such as audio data, phone book, etc.). In addition, internal memory 121 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc. Processor 110 executes various functional applications and data processing of the electronic device by running the instructions stored in internal memory 121 and / or instructions stored in memory disposed in the processor.

[0061] In addition, an operating system runs on top of these components. Examples include Apple's iOS, Google's Android, and Microsoft's Windows. Applications can be installed and run on this operating system.

[0062] The operating system of an electronic device can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This application uses the layered architecture Android system as an example to illustrate the software structure of an electronic device.

[0063] like Figure 2 As shown, this figure is a schematic diagram of the software structure of an electronic device provided in an embodiment of this application.

[0064] A layered architecture divides software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. In some embodiments, the Android system is layered from top to bottom as follows: application layer, media middleware post-processing framework layer, application framework layer, hardware abstraction layer, and kernel layer.

[0065] The application layer can include a series of applications, such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, and SMS applications. In this embodiment, the above applications include a node query module and a control update module. Figure 2As shown, both the gallery and camera modules include a node query module and a control display module. The application-layer node query module sends query commands to the media platform post-processing framework layer and retrieves the query results; the control display module displays the corresponding functional controls in the relevant application interfaces based on the query results.

[0066] The media middleware post-processing framework layer includes a node management module, a local resource management module, and a cloud resource management module. The node management module queries the local or cloud resource management modules for the nodes supported by the mobile phone and returns the results to the application layer. The node management module includes: a node query submodule, a resource management submodule, a plugin loading submodule, a plugin parsing submodule, an XML parsing submodule, and a node capability information table. The local resource management module includes a local plugin library and local XML files. The cloud resource management module includes a cloud plugin library, cloud XML files, and a resource download submodule, etc. These modules will be described in detail later.

[0067] The application framework layer provides application programming interfaces (APIs) and a programming framework for applications in the application layer. The application framework layer includes predefined functions. It may include a window manager, content provider, view system, phone manager, resource manager, notification manager, etc.

[0068] The window manager is used to manage windowed applications. It can retrieve screen size, determine the presence of a status bar, lock the screen, and capture screenshots, among other things.

[0069] Content providers store and retrieve data, making that data accessible to applications. This data may include videos, images, audio, made and received phone calls, browsing history and bookmarks, phone books, etc.

[0070] A view system includes visual controls, such as controls for displaying text and controls for displaying images. View systems can be used to build applications. A display interface can consist of one or more views. For example, a display interface including a text notification icon can include views for displaying text and views for displaying images. In some examples, the view system can display corresponding functional controls based on nodes supported by the phone itself.

[0071] A phone manager is used to provide communication functions for electronic devices. For example, it manages call status (including connection and disconnection).

[0072] The file explorer provides applications with various resources, such as localized strings, icons, images, layout files, video files, and more.

[0073] The notification manager allows applications to display notifications in the status bar. These notifications can be used to deliver informational messages and can disappear automatically after a short pause, requiring no user interaction. For example, the notification manager can be used to notify users of completed downloads or message alerts. The notification manager can also display notifications as icons or scrolling text in the top status bar, such as notifications from background applications, or as dialog boxes on the screen. Examples include displaying text messages in the status bar, emitting sounds, vibrating electronic devices, and flashing indicator lights.

[0074] The application layer and application framework layer run in a virtual machine. The virtual machine executes the Java files of the application layer and application framework layer as binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection.

[0075] System libraries can include multiple functional modules. For example: surface manager, media libraries, 3D graphics processing libraries (e.g., OpenGL ES), 2D graphics engines (e.g., SGL), etc.

[0076] The Surface Manager is used to manage the display subsystem and provides the blending of 2D and 3D layers for multiple applications.

[0077] The media library supports playback and recording of various common audio and video formats, as well as still image files. It supports multiple audio and video encoding formats, such as MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG.

[0078] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.

[0079] A 2D graphics engine is a graphics engine for 2D drawing.

[0080] The kernel layer is the layer between hardware and software. The kernel layer can contain display drivers, camera drivers, audio drivers, sensor drivers, etc.

[0081] It should be noted that although the embodiments of this application are illustrated using the Android system as an example, the basic principles are also applicable to electronic devices based on operating systems such as iOS and Windows.

[0082] To make the technical solution of this application clearer and easier to understand, the following is combined with... Figure 2 and Figure 3 This application will now describe a demonstration method provided by an embodiment. For example... Figure 3The figure is a flowchart illustrating a method provided in an embodiment of this application, the method comprising:

[0083] S301, The electronic device starts the target application.

[0084] The target application can be any application in the aforementioned application layer, such as a gallery application or a camera application. For ease of understanding, the following description uses a mobile phone as the electronic device and a gallery application as the target application as an example to introduce the technical solution of this application.

[0085] In some examples, electronic devices can receive a user's touch on the icon of a target application on the main interface, thus launching the target application. For example... Figure 4 As shown in the figure, this is a schematic diagram of opening a gallery application according to an embodiment of this application. The touch sensor 180K of the mobile phone can receive the user's touch operation on the icon of the target application on the main interface of the mobile phone and report it to the processor 110. The processor 110 can respond to the touch operation and display the user interface of the target application on the display screen 194. In addition, in this embodiment of the application, the mobile phone can also launch the gallery application and display the user interface of the gallery application on the display screen 194 through other means. For example, when the mobile phone is in a black screen, locked screen, or a user interface of a certain application, the processor 110 can respond to the user's voice command or shortcut operation, launch the gallery application, and display the user interface of the gallery application on the display screen 194.

[0086] S302, The target application sends a node query command to the node management module.

[0087] The node query command is used to query the nodes supported by the current electronic device. A node refers to a function supported by the electronic device or a capability possessed by the electronic device. For example, if the electronic device supports a filter function, then there is a filter node corresponding to the filter function in the electronic device; if the electronic device does not support a filter function, then there is no filter node corresponding to the filter function in the electronic device.

[0088] In some examples, after the target application, i.e. the gallery, is launched, the gallery's node query module will send a request to the node management module of the media platform's post-processing framework layer.

[0089] In some embodiments, different applications may have different node query commands. For example, the node query commands for the gallery include node query command 1 and node query command 2; the node query commands for the camera may include node query command 3 and node query command 4, etc. Node query command 1 may be a command to query filter nodes, node query command 2 may be a command to query one-click image generation nodes, node query command 3 may be a command to query burst shooting nodes, and node query command 4 may be a command to query dual-channel shooting nodes.

[0090] It should be noted that the aforementioned filter node refers to the function of adding filters to an image, the one-click image generation node refers to the function of generating a video with one click, the burst shooting node refers to the function of continuously shooting multiple photos, and the dual-channel shooting node refers to the function of shooting using two cameras. The node query instructions 1-4 mentioned above are merely illustrative examples; the target application may have one or more node query instructions, and this application embodiment does not limit this. In some examples, the node query instruction sent by the target application may be a target node query instruction. A target node query instruction is an instruction used to query whether a target node exists, and may be a query to determine whether an electronic device supports the function corresponding to the target node.

[0091] In some embodiments, after receiving node query instructions 1 and 2 corresponding to the gallery, the gallery's node query module will send node query instructions 1 and 2 to the node management module. In some examples, the node query module may send node query instructions 1 and 2 to the node management module sequentially, or simultaneously.

[0092] S303. The node management module obtains the local configuration file of the target node from the local resource management module through the resource management submodule.

[0093] The resource management submodule manages both local and cloud resources. Based on query requests from the node query submodule, it can retrieve the configuration file of the target node. The target node's configuration file must include at least the node name and the path to its plugin library. The target node's configuration file can be either a local configuration file or a cloud configuration file. In some examples, the configuration file retrieved by the resource management submodule from the local resource management module is the local configuration file, and the configuration file retrieved from the cloud resource management module is the cloud configuration file.

[0094] The local resource management module is used to maintain the local plugin library and local configuration files (such as XML files). The local plugin library includes a collection of nodes. If the target node is in the node collection of the local plugin library, it means that the electronic device supports the function corresponding to the target node. If the target node is not in the node collection of the local plugin library, it means that the electronic device does not support the function corresponding to the target node.

[0095] In some examples, after receiving a node query command, the node management module can obtain the local configuration file of the filter node from the local resource management module, or it can obtain the local configuration file of the one-click sharding node from the local resource management module.

[0096] It should be noted that the node management module obtains configuration files for which nodes are related to the target application, or if the target application has multiple nodes to be queried, then after the target application starts, it queries these multiple nodes. For ease of description, the following explanation will use the node management module retrieving filter nodes from the local resource management module as an example.

[0097] S304. The node management module parses the local configuration file of the target node.

[0098] The local configuration file contains information such as the target node's name and plugin library path. After the node management module obtains the target node's local configuration file, the XML parsing submodule can parse it to obtain the target node's name and local plugin library path. For example, the XML parsing submodule can parse the filter node's local configuration file to obtain the filter node's name and local plugin library path.

[0099] In some examples, the filter node name may include Filter 1 (blur), Filter 2 (defog), and Filter 3 (LUT), and the local plugin library path may include the local plugin library paths for Filter 1, Filter 2, and Filter 3. These paths may be the same or different. The filter node names indicate that the electronic device may support the aforementioned blur, defog, and LUT filter functions. Next, to further determine whether the electronic device supports these filter functions, further verification within the plugin library is required.

[0100] S305. The node management module obtains the local plugin library of the target node from the local resource management module through the resource management sub-module.

[0101] After the node management module parses the local configuration file, it can obtain the node name and the local plugin library path of the target node. The resource management submodule can then retrieve the plugin library from the local resource management module based on this local plugin library path. For example, if the node name is "virtual" and the local plugin library path is "virtual local plugin library path", the resource management submodule can obtain the virtual plugin library based on this virtual local plugin library path.

[0102] S306. The node management module loads and parses the plugin library of the target node.

[0103] Loading refers to loading the plugin library into the target application's process. The plugin loading submodule in the node management module is used to load the plugin library of the target node into the target application's process. Parsing refers to parsing the plugin library of the target node to obtain an interface for querying whether the node exists. For example, it could be `createMediaNodeByName(std::string nodeName)`. The plugin parsing submodule in the node management module is used to parse the plugin library to obtain this interface. Then, the plugin parsing submodule can pass the target node's name to this query interface to check if the target node exists in the plugin library.

[0104] In some embodiments, after parsing the plugin library, the parsing submodule can obtain a node query function. This node query function is used to check whether a corresponding node exists in the plugin library. For example, the node query function can be called to search for the target node in the plugin library using the target node's name, thereby obtaining the query result of whether the plugin library includes the target node. It should be noted that the interface used to check whether a node exists can be a specific form of the node query function.

[0105] During the query process, the plugin library maintains a set of multiple nodes. After the node name of the target node is passed to the interface of the plugin library, the node name of the target node is compared with the node names in the set. If the node name of the target node exists in the set, it means that the plugin library includes the target node, that is, the electronic device supports the function corresponding to the target node; otherwise, it does not support it.

[0106] It should be noted that the node names compared during the query process are merely examples. Those skilled in the art can select appropriate content for comparison based on actual needs to determine whether the target node is included in the plugin library.

[0107] In some examples, the plugin loading submodule can load the bokeh plugin library into the gallery process. Then, the plugin parsing submodule parses the bokeh plugin library to obtain the interface for querying whether a node exists. After obtaining the interface for querying whether a node exists, the plugin parsing submodule passes the node name, such as bokeh, to the interface for querying whether a node exists, and then obtains the result that the bokeh node exists in the bokeh plugin library.

[0108] In other examples, the plugin loading submodule can load the defogging plugin library into the gallery process. Then, the plugin parsing submodule parses the defogging plugin library to obtain the interface for querying whether a node exists. After obtaining the interface for querying whether a node exists, the plugin parsing submodule passes the node name, such as "defogging," to the interface for querying whether a node exists, and then obtains the result that the defogging plugin library contains the defogging node.

[0109] The aforementioned defogging plugin library and blurring plugin library can be the same plugin library, meaning the paths of the defogging plugin library and the blurring plugin library are the same. Of course, the aforementioned defogging plugin library and blurring plugin library can be different plugin libraries, meaning the paths of the defogging plugin library and the blurring plugin library are different.

[0110] After determining whether a target node exists in the plugin library, the plugin parsing submodule can record the existing target node in the node capability information table. In some examples, the node capability information table may look like Table 1 below:

[0111] Node Name Does it support? Blur yes LUT no Defogging yes … …

[0112] After obtaining the node capability information table, the node query submodule can determine the node capabilities supported by the electronic device based on this table. The node name of the target node described in S303-S306 can be the local node name.

[0113] S307. The node management module obtains the cloud configuration file of the target node from the cloud resource management module through the resource management sub-module.

[0114] The above-described S303 describes how the resource management submodule obtains the local configuration file of the target node from the local resource management module. In S307, the resource management submodule can also obtain the cloud configuration file of the target node from the cloud resource management module.

[0115] The cloud resource management module is used to maintain the cloud plugin library and cloud configuration files (such as XML files). The cloud plugin library includes a set of nodes. If the target node is in the node set of the cloud plugin library, it means that the electronic device supports the function corresponding to the target node. If the target node is not in the node set of the cloud plugin library, it means that the electronic device does not support the function corresponding to the target node.

[0116] For ease of understanding, this section will use the example of the resource management submodule obtaining the cloud configuration file of the face recognition node from the cloud resource management module.

[0117] S308, the node management module parses the cloud configuration file of the target node.

[0118] Similarly, the cloud configuration file carries information such as the target node's name and the cloud plugin library path. After the node management module obtains the target node's cloud configuration file, the XML parsing submodule can parse it to obtain the target node's name and the cloud plugin library path. For example, the XML parsing submodule can parse the cloud configuration file of a face recognition node to obtain the face recognition node's name and the cloud plugin library path. In some examples, the face recognition node's name indicates that the electronic device may support the aforementioned face recognition functions. Next, to further determine whether the electronic device supports the face recognition function, further verification in the plugin library is required.

[0119] S309. The node management module obtains the cloud plugin library of the target node from the cloud resource management module through the resource management sub-module.

[0120] After the node management module parses the cloud configuration file, it can obtain the node name and cloud plugin library path of the target node. The resource management submodule can then retrieve the plugin library from the cloud resource management module based on this path. For example, if the node name is "face recognition" and the cloud plugin library path is the face recognition cloud plugin library path, the resource management submodule can obtain the face recognition plugin library based on this path.

[0121] S310, the node management module loads and parses the plugin library of the target node.

[0122] In some examples, the plugin loading submodule can load the face recognition plugin library into the library's process. Then, the plugin parsing submodule parses the face recognition plugin library to obtain the interface for querying whether a node exists. After obtaining the interface for querying whether a node exists, the plugin parsing submodule passes the node name, such as "face recognition," to the interface for querying whether a node exists, and then obtains the result that the face recognition node exists in the face recognition plugin library.

[0123] After determining whether a target node exists in the plugin library, the plugin parsing submodule can record the existing target node in the node capability information table. For example, after determining that a target node exists in the cloud plugin library, the component disassembly parsing submodule can record the target node, such as face recognition, in the table above, resulting in Table 2 as follows:

[0124] Node Name Does it support? Blur yes LUT no Defogging yes Facial recognition yes … …

[0125] After obtaining the node capability information table, the node query submodule can determine the node capabilities supported by the electronic device based on the node capability information table.

[0126] In some examples, the electronic device can also update the nodes it supports based on the cloud resource management module. For example, it can add more nodes to the cloud plugin library or delete existing nodes, thereby adjusting the functions supported by the electronic device. The resource download submodule in the cloud resource management module can update the cloud plugin library and cloud configuration files maintained by the cloud resource management module, such as modifying the cloud configuration files and the cloud plugin library.

[0127] It should be noted that the above embodiments are only used as examples of electronic devices obtaining local configuration files and local plugin libraries from the local resource management module and obtaining cloud configuration files and cloud plugin libraries from the cloud resource management module. In some examples, local configuration files and local plugin libraries may be obtained only from the local resource management module, or cloud configuration files and cloud plugin libraries may be obtained only from the cloud resource management module.

[0128] Furthermore, in the above embodiments, the electronic device first obtains the local configuration file and local plugin library from the local resource management module, and then obtains the cloud configuration file and cloud plugin library from the cloud resource management module. This is merely an illustrative example. In other embodiments, the cloud configuration file and cloud plugin library can be obtained first from the cloud resource management module, and then the local configuration file and local plugin library can be obtained from the local resource management module.

[0129] Among them, the node name of the target node introduced in S307-S310 can be the cloud node name.

[0130] S311, The node management module returns the identifier of the target node to the target application.

[0131] The identifier of a target node can be its name or other characters that can be used to uniquely identify the target node.

[0132] The target application maintains a mapping between identifiers and functions. After receiving the identifier of a target node from the node management module, the target application's node query submodule can obtain the function corresponding to that identifier based on the mapping, and then determine whether the electronic device supports the function corresponding to that identifier. In some examples, the node management module can also send a node capability information table to the target application's node query submodule, such as sending Table 2 mentioned above. Based on this, the node query submodule can determine the functions supported by the electronic device through Table 2. For example, these include filter functions and face recognition functions, where the filter function can specifically be a blurring function and a defogging function.

[0133] S312. Based on the trigger operation on the image, the target application displays the functional controls corresponding to the target node in the interface.

[0134] The trigger action can be a click, a long press, or other similar action. After the target application is launched, the electronic device can display the relevant interface of that application, such as... Figure 5A As shown in the figure, this is a schematic diagram of a gallery interface provided in an embodiment of this application. The gallery interface includes multiple albums, such as album 410, album 420, and album 430. A user can click on album 410, and after receiving the user's click operation on album 410, the electronic device can display the photos included in album 410.

[0135] like Figure 5B As shown, this figure is a schematic diagram of a photo album interface provided in an embodiment of this application. The photo album interface includes multiple photos, such as photo 411, photo 412, and photo 413. Users can select photos by clicking on them. For example, if a user clicks on photo 411, the electronic device can zoom in on photo 411 and display editing controls.

[0136] like Figure 5C As shown in the figure, this is a schematic diagram of a photo display interface provided in an embodiment of this application. The photo display interface includes an editing control 440. After the user clicks the editing control 440, the electronic device can display an editing interface for the photo.

[0137] like Figure 5D As shown in the figure, this is a schematic diagram of an editing interface provided in an embodiment of this application. During the display of this editing interface, the electronic device can determine the nodes it supports based on Table 2 above, and then determine the functional controls displayed in the editing interface based on the nodes it supports. As shown in Table 2, the nodes supported by the electronic device include blurring, defogging, and face recognition. Therefore, the editing interface can display a blurring control 441 corresponding to the blurring node, a defogging control 442 corresponding to the defogging node, and a face recognition control 443 corresponding to the face recognition node. Among these, the blurring control 441, defogging control 442, and face recognition control 443 are all functional controls. The blurring control 441 is used to blur the photo, the defogging control 442 is used to defog the photo, and the face recognition control 443 is used to recognize faces in the photo and mark them to indicate the location of the faces to the user.

[0138] It should be noted that the functions of the above-mentioned blurring control 441, defogging control 442 and face recognition control 443 are merely illustrative examples, and those skilled in the art can make further designs and adjustments based on actual needs.

[0139] Based on the above description, before displaying the functional controls in the application's interface, the electronic device can first query its supported nodes from local or cloud resources. Specifically, it first obtains the target node's configuration file from local or cloud resources, and then parses the configuration file to obtain the node name and plugin library path. Next, the electronic device obtains the target node's plugin library based on this plugin library path, loads and parses the plugin library to confirm whether it supports the target node, and then records the target node's information (node ​​name and whether it is supported). For example, it can record the nodes supported by the electronic device, which can be recorded in a node capability information table. This node capability information table records the correspondence between the electronic device's nodes and whether the electronic device supports them. Finally, the electronic device can display the functional controls corresponding to the supported nodes based on the nodes supported by the electronic device in the node capability information table. It is evident that this application embodiment achieves the dynamic display of different functional controls, allowing users of different electronic devices to experience different functions. Furthermore, through the above solution, there is no need to design separately for different applications; the electronic device, based on its own processing logic, can also dynamically display functional controls, reducing the workload of application design.

[0140] This embodiment also provides a computer-readable storage medium including instructions that, when executed on an electronic device, cause the electronic device to perform... Figure 3 The relevant methods and steps are described in the above embodiments to implement the methods described.

[0141] This embodiment also provides a computer program product containing instructions that, when run on an electronic device, cause the electronic device to perform actions such as... Figure 3 The relevant methods and steps are described in the above embodiments to implement the methods described.

Claims

1. A display method, characterized in that, Applied to electronic devices, the electronic devices include an application layer and a media middleware post-processing framework layer. The application layer includes a gallery application, and the media middleware post-processing framework layer includes a node management module, a local resource management module, and a cloud resource management module. The method includes: Upon receiving the operation to launch the gallery application, the gallery application sends a node query instruction to the node management module; Upon receiving the node query instruction, the node management module obtains the local configuration file of the target node from the local resource management module. The local configuration file contains the local node name and local plugin library path of the target node. The node management module parses the local configuration file to obtain the local node name and local plugin library path of the target node; The node management module obtains the local plugin library based on the local plugin library path, loads and parses the local plugin library to obtain a first interface of the local plugin library for querying whether the target node exists, and passes the node name of the target node to the first interface to query whether the target node exists in the local plugin library. Upon receiving the node query instruction, the node management module obtains the cloud configuration file of the target node from the cloud resource management module. The cloud configuration file carries the node name and cloud plugin library path of the target node. The node management module parses the cloud configuration file to obtain the node name and cloud plugin library path of the target node. Based on the cloud plugin library path, the node management module obtains the cloud plugin library, loads and parses the cloud plugin library to obtain a second interface of the cloud plugin library for querying whether the target node exists. The node name of the target node is transmitted to the second interface to query whether the target node exists in the cloud plugin library. The target node is used to characterize the functions supported by the gallery application on the electronic device; the node name of the target node includes blurring, defogging, LUT, and face recognition. Obtain the node to be displayed; the node to be displayed is the target node for which the electronic device supports the corresponding function; the node to be displayed is the target node existing in the cloud plugin library and the target node existing in the local plugin library; The user interface of the gallery application displays the functional controls corresponding to each node to be displayed obtained from the query.

2. An electronic device, characterized in that, include: Memory and processor; The memory stores one or more computer programs, the one or more computer programs including instructions; when the instructions are executed by the processor, the electronic device performs the method as described in claim 1.

3. A computer storage medium, characterized in that, Includes computer instructions that, when the computer instructions are executed in an electronic device, cause the electronic device to perform the method as described in claim 1.