Application icon display method and apparatus, storage medium, and electronic device

By drawing and calculating the arrangement position of application icons in three-dimensional space, the problem of the inability to realize the three-dimensional icon display in the prior art is solved, and a more accurate three-dimensional icon display is achieved.

WO2025162002A1PCT designated stage Publication Date: 2025-08-07BOE TECHNOLOGY GROUP CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/073016
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-02-04
Filing Date
2025-01-17
Publication Date
2025-08-07

AI Technical Summary

Technical Problem

The existing desktop icon display method can only support two-dimensional icon display, and the display of three-dimensional icons cannot be realized.

Method used

The three-dimensional display of application icons is achieved by drawing application icons in three-dimensional space and calculating their arrangement positions.

Benefits of technology

It realizes the three-dimensional display of application icons, improving the accuracy of icon arrangement and display.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025073016_07082025_PF_FP_ABST
    Figure CN2025073016_07082025_PF_FP_ABST
Patent Text Reader

Abstract

The present disclosure relates to the technical field of human-computer interaction, and relates to an application icon display method and apparatus, a storage medium, and an electronic device. The method comprises: determining a target application list, wherein the target application list comprises target applications to be displayed and target program attribute information of the target applications; on the basis of the target program attribute information, drawing application icons of the target applications in a three-dimensional space; calculating icon arrangement positions of the application icons in the three-dimensional space, and arranging the application icons on the basis of the icon arrangement positions to obtain an icon arrangement result; and on the basis of the icon arrangement result, displaying the application icons of the target applications in sequence. The present disclosure achieves three-dimensional display of application icons.
Need to check novelty before this filing date? Find Prior Art

Description

Application icon display method and device, storage medium, and electronic device

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This disclosure claims priority to Chinese patent application number 202410160312.2, filed on February 4, 2024, entitled “Method and device for displaying application icons, storage medium, and electronic device,” the entire contents of which are incorporated herein by reference. Technical Field

[0003] The embodiments of the present disclosure relate to the field of human-computer interaction technology, and in particular, to a method for displaying an application icon, a device for displaying an application icon, a computer-readable storage medium, and an electronic device. Background Art

[0004] The existing method for displaying desktop icons can only support the display of two-dimensional icons and cannot realize the display of three-dimensional icons. Summary of the Invention

[0005] According to one aspect of the present disclosure, a method for displaying an application icon is provided, comprising:

[0006] Determine a target application list; wherein the target application list includes target applications to be displayed and target application attribute information of the target applications;

[0007] Drawing an application icon of the target application in a three-dimensional space according to the target application attribute information;

[0008] Calculating an icon arrangement position of the application icons in a three-dimensional space, and arranging the application icons based on the icon arrangement position to obtain an icon arrangement result;

[0009] Based on the icon arrangement result, the application icons of the target application are displayed in sequence.

[0010] In an exemplary embodiment of the present disclosure, determining a target application list includes:

[0011] Obtaining a list of original applications installed in the terminal device, and obtaining original program attribute information of the original applications in the original application list; wherein the original program attribute information includes at least one of an application package name, an application whitelist attribute, an application name, an application image logo, and an application display attribute;

[0012] The original application is filtered according to the application whitelist attribute to obtain a target application, and a target application list is generated according to the target application.

[0013] In an exemplary embodiment of the present disclosure, drawing an application icon of the target application in a three-dimensional space according to the target application attribute information includes:

[0014] Obtaining the application name and application image logo in the target program attribute information, and determining the name texture to be drawn according to the application name;

[0015] Determining the icon image texture to be drawn according to the application image flag, and determining the outer border and background color of the application icon;

[0016] Generate an icon material according to the name texture, icon image texture, outer border, and background color, and load an original icon model corresponding to the application icon;

[0017] The icon material is rendered into the original icon model in a three-dimensional space to obtain an application icon of the target application.

[0018] In an exemplary embodiment of the present disclosure, the application icons include a first application icon, a second application icon, a third application icon, ..., an Nth application icon, where N is the total number of application icons;

[0019] Calculating the layout position of the application icon in the three-dimensional space includes:

[0020] Creating a preset human eye position and a preset gaze point direction in the three-dimensional space, and determining a first icon arrangement position of a first application icon according to the preset human eye position and the preset gaze point direction;

[0021] Based on the first icon arrangement position, the second icon arrangement position, the third icon arrangement position, ..., the Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon are determined.

[0022] In an exemplary embodiment of the present disclosure, creating a preset human eye position and a preset gaze point direction in the three-dimensional space includes:

[0023] Constructing a three-dimensional space coordinate system in the three-dimensional space; wherein the three-dimensional space coordinate system includes an X coordinate axis, a Y coordinate axis, and a Z coordinate axis;

[0024] Determining a preset human eye position based on the origin coordinates of the three-dimensional space coordinate system;

[0025] The preset gaze point direction is determined based on the direction of the Z coordinate axis in the three-dimensional space coordinate system; wherein the preset gaze point direction is from the positive direction of the Z coordinate axis to the negative direction of the Z coordinate axis.

[0026] In an exemplary embodiment of the present disclosure, determining a first icon arrangement position of a first application icon according to a preset human eye position and a preset gaze point direction includes:

[0027] Determining a circular visual area of ​​the human eye in the three-dimensional space according to the preset human eye position, and determining a radius of the circular visual area according to the preset human eye position;

[0028] A first icon arrangement position of a first application icon is determined according to the radius of the circular visual area, the preset human eye position, and the preset gaze point direction.

[0029] In an exemplary embodiment of the present disclosure, determining the second icon arrangement position, the third icon arrangement position, ..., the Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon based on the first icon arrangement position includes:

[0030] Determine the number of icon rows and icon columns required for arranging the application icons according to the total number of application icons, and construct an icon position matrix according to the number of icon rows and icon columns;

[0031] Establishing an association relationship between matrix elements in the icon position matrix and each of the application icons, and determining a positional relationship between a second application icon, a third application icon, ..., an Nth application icon, and the first application icon based on the association relationship;

[0032] The second icon arrangement position, the third icon arrangement position, ..., the Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon are determined according to the position relationship and the first icon arrangement position.

[0033] In an exemplary embodiment of the present disclosure, the positional relationship includes any one of the following:

[0034] In the same row as the first application icon, in the same column as the first application icon, and in different rows and columns than the first application icon;

[0035] Wherein, determining the second icon arrangement position, the third icon arrangement position, ..., the Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon according to the position relationship and the first icon arrangement position includes:

[0036] Classify the second application icon, the third application icon, ..., the Nth application icon according to the positional relationship, to obtain a first icon classification result in the same row as the first application icon, and / or a second icon classification result in the same column as the first application icon, and / or a third icon classification result in a different row and column than the first application icon;

[0037] Calculating a row icon arrangement position of the application icons in the first icon classification result according to the first icon arrangement position and a preset position angle;

[0038] Calculating a column icon arrangement position of the application icons in the second icon classification result according to the first icon arrangement position and a preset row spacing;

[0039] According to the row icon arrangement positions and / or column icon arrangement positions, other icon arrangement positions of the application icons in the third icon classification result are calculated.

[0040] In an exemplary embodiment of the present disclosure, the application icons in the first icon classification result include a first row of icons, a second row of icons, ..., an Mth row of icons;

[0041] Calculating the row icon arrangement position of the application icons in the first icon classification result according to the first icon arrangement position and a preset position angle includes:

[0042] Calculate a first X-axis offset and a first Z-axis offset of the first row of icons on the X-axis based on a preset position angle and a radius of the circular viewing area;

[0043] Calculating a first row arrangement position of the first row of icons according to the first icon arrangement position, the first X-axis offset, and the first Z-axis offset;

[0044] Calculate a second X-axis offset of the second row of icons on the X-axis and a second Z-axis offset of the second row of icons on the Z-axis based on the preset position angle and the radius of the circular viewing area;

[0045] Calculating a second row arrangement position of the second row of icons based on the first row arrangement position, the second X-axis offset, and the second Z-axis offset;

[0046] The calculation process of the second row arrangement position is looped sequentially to obtain other row arrangement positions of other application program icons in the first icon classification result.

[0047] In an exemplary embodiment of the present disclosure, the application icons in the second icon classification result include icons in a first column, icons in a second column, ..., icons in a Jth column;

[0048] Calculating the column icon arrangement position of the application icons in the second icon classification result according to the first icon arrangement position and the preset row spacing includes:

[0049] Calculating a first Y-axis offset of the first column of icons on the Y-axis based on a preset row spacing, and calculating a first column arrangement position of the first column of icons according to the first icon arrangement position and the first Y-axis offset;

[0050] Calculating a second Y-axis offset of the second column of icons on the Y-axis based on a preset row spacing, and calculating a second column arrangement position of the second column of icons based on the first column arrangement position and the second Y-axis offset;

[0051] The calculation process of the second column arrangement position is looped sequentially to obtain other column arrangement positions of other application program icons in the second icon classification result.

[0052] In an exemplary embodiment of the present disclosure, after displaying the application icons based on the icon arrangement result, the method for displaying the application icons further includes:

[0053] Performing an interactive operation on the application icon based on an external device, so as to control a target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation; and / or

[0054] An interactive operation is performed on the application icon based on the current gaze point position of the human eye, so as to control the target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation.

[0055] In an exemplary embodiment of the present disclosure, performing an interactive operation on the application icon based on an external device to control a target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation includes:

[0056] receiving a first interaction ray emitted by the external device, and determining whether there is a first intersection between an icon rectangle where the application icon is located in the three-dimensional space and the first interaction ray;

[0057] When it is determined that there is a first intersection, taking the application icon as a target icon, and determining a first operation instruction to be executed by a target application corresponding to the target icon based on a first relative position of the first intersection in the icon rectangle;

[0058] A first instruction execution message sent by the external device is received, and in response to the first instruction execution message, a target application is controlled to execute a first operation instruction.

[0059] In an exemplary embodiment of the present disclosure, performing an interactive operation on the application icon based on the current gaze point position of a human eye, so as to control a target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation, includes:

[0060] Obtaining a current gaze point position of a human eye in three-dimensional space, and determining a second interaction ray emitted by the human eye based on the current gaze point position and a preset human eye position in three-dimensional space;

[0061] Determine whether there is a second intersection point between the icon rectangle where the application icon is located in the three-dimensional space and the second interaction ray;

[0062] When it is determined that there is a second intersection, taking the application icon as the target icon, and determining a second operation instruction to be executed by the target application corresponding to the target icon based on a second relative position of the second intersection in the icon rectangle;

[0063] In response to a touch operation on a preset interactive control, the target application is controlled to execute a second operation instruction.

[0064] In an exemplary embodiment of the present disclosure, the method for displaying an application icon further includes:

[0065] Obtaining the initial position and initial orientation of the target icon, and determining the center point of the icon rectangle where the target icon is located;

[0066] Determining a virtual ray of the target icon based on the center point; wherein the virtual ray points to the center point of the target icon and is perpendicular to the rectangular plane where the icon rectangle is located;

[0067] Calculating a first ray angle between the virtual ray and the first interaction ray;

[0068] A second instruction execution message sent by the external device is received, and in response to the second instruction execution message, the target icon is controlled to rotate from an initial position and an initial orientation to a target position and a target orientation corresponding to the first ray angle.

[0069] According to one aspect of the present disclosure, there is provided a device for displaying application icons, comprising:

[0070] An application list determination module, configured to determine a target application list; wherein the target application list includes target applications to be displayed and target application attribute information of the target applications;

[0071] An application icon drawing module, configured to draw an application icon of the target application in a three-dimensional space according to the target application attribute information;

[0072] an application icon arrangement module, configured to calculate an icon arrangement position of the application icons in a three-dimensional space, and arrange the application icons based on the icon arrangement position to obtain an icon arrangement result;

[0073] The application icon display module is used to display the application icons of the target application in sequence based on the icon arrangement result.

[0074] According to one aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the computer program implements any one of the above-mentioned methods for displaying application icons.

[0075] According to one aspect of the present disclosure, there is provided an electronic device, including:

[0076] processor; and

[0077] a memory for storing executable instructions of the processor;

[0078] The processor is configured to execute any one of the above-mentioned methods for displaying application icons by executing the executable instructions.

[0079] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0080] The accompanying drawings are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification, are used to explain the principles of the present disclosure. Obviously, the drawings described below are only some embodiments of the present disclosure, and those skilled in the art can derive other drawings based on these drawings without inventive effort.

[0081] FIG1 schematically shows a flow chart of a method for displaying an application icon according to an exemplary embodiment of the present disclosure.

[0082] FIG2 schematically shows an example diagram of the structure of an application icon according to an exemplary embodiment of the present disclosure.

[0083] FIG3 schematically illustrates an example diagram of the position of a human eye in a coordinate system space composed of X, Y, and Z according to an example embodiment of the present disclosure.

[0084] FIG4 schematically shows an example diagram of a scene viewed from the Z-axis toward the negative direction of the Z-axis according to an example embodiment of the present disclosure.

[0085] FIG5 schematically illustrates an example scenario in which a user's eye gaze ray forms a vertical angle with each icon plane according to an example embodiment of the present disclosure.

[0086] FIG6 schematically illustrates an example scenario in which icons are distributed on a circle centered on the user's eyes according to an exemplary embodiment of the present disclosure.

[0087] FIG7 schematically illustrates a scenario example of a specific calculation process of icon arrangement positions according to an exemplary embodiment of the present disclosure.

[0088] FIG8 schematically shows an example diagram of a scene of interaction through human eye gaze points according to an example embodiment of the present disclosure.

[0089] FIG9 schematically illustrates an example scene diagram of a three-dimensional relationship between a human eye's gaze point and an application icon according to an exemplary embodiment of the present disclosure.

[0090] FIG10 schematically shows an example diagram of a scene of interaction through a handle controller according to an example embodiment of the present disclosure.

[0091] FIG11 schematically illustrates an example diagram of a scene of a virtual ray corresponding to an application icon according to an exemplary embodiment of the present disclosure.

[0092] FIG12 schematically shows an example diagram of a scenario of rotating an application icon according to an exemplary embodiment of the present disclosure.

[0093] FIG13 schematically shows a block diagram of a device for displaying application icons according to an exemplary embodiment of the present disclosure.

[0094] FIG14 schematically illustrates an electronic device for implementing the above-mentioned method for displaying application icons according to an exemplary embodiment of the present disclosure. DETAILED DESCRIPTION

[0095] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that the present disclosure will be more comprehensive and complete and will fully convey the concepts of the example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present disclosure. However, those skilled in the art will appreciate that the technical solutions of the present disclosure may be practiced while omitting one or more of the specific details, or that other methods, components, devices, steps, etc. may be employed. In other cases, well-known technical solutions are not shown or described in detail to avoid obscuring various aspects of the present disclosure.

[0096] In addition, the accompanying drawings are merely schematic illustrations of the present disclosure and are not necessarily drawn to scale. Identical reference numerals in the figures denote identical or similar parts, and thus repetitive descriptions thereof will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities that do not necessarily correspond to physically or logically separate entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.

[0097] This exemplary embodiment first provides a method for displaying application icons. This method can be run on a terminal device. Of course, those skilled in the art can also run the method disclosed herein on other platforms as needed, and this exemplary embodiment does not specifically limit this. Specifically, referring to FIG1 , the method for displaying application icons can include the following steps:

[0098] Step S110. Determine a target application list; wherein the target application list includes target applications to be displayed and target application attribute information of the target applications;

[0099] Step S120. Draw an application icon of the target application in a three-dimensional space according to the target application attribute information;

[0100] Step S130: Calculate the icon arrangement positions of the application icons in the three-dimensional space, and arrange the application icons based on the icon arrangement positions to obtain an icon arrangement result;

[0101] Step S140: Based on the icon arrangement result, the application icons of the target application are displayed in sequence.

[0102] In the above-mentioned method for displaying application icons, on the one hand, the application icon of the target application is drawn in the three-dimensional space according to the target program attribute information; then the icon arrangement position of the application icon in the three-dimensional space is calculated, and the application icons are arranged based on the icon arrangement position to obtain the icon arrangement result; finally, based on the icon arrangement result, the application icons of the target application are displayed in sequence, thereby realizing the three-dimensional display of the application icons and solving the problem that the display of three-dimensional icons cannot be realized in the prior art; on the other hand, since the icon arrangement position of the application icon in the three-dimensional space can be calculated, and the application icons are arranged based on the icon arrangement position to obtain the icon arrangement result, the accuracy of the obtained icon arrangement result and the accuracy of the displayed application icons are improved.

[0103] Hereinafter, the method for displaying application icons according to the exemplary embodiments of the present disclosure will be explained and illustrated in detail with reference to the accompanying drawings.

[0104] First, the terms involved in the exemplary embodiments of the present disclosure are explained and illustrated.

[0105] VR: Virtual Reality, generally refers to VR operating systems and devices.

[0106] XR: Extended Reality, extended implementation technology, is a general term for VR and MR (Mix reality, mixed display), which includes the concept of VR.

[0107] OpenGL ES: OpenGL is a graphics drawing interface standard, and OpenGL ES is a graphics drawing interface standard for mobile devices.

[0108] Launcher: The desktop launcher is the first app you see after entering a mobile system (such as Android, iOS, etc.). The corresponding app is called Launcher, which is a special app.

[0109] Shader: Shader program is written in Shader Language, and its syntax is similar to C language.

[0110] Secondly, the technical implementation principles of the exemplary embodiments of the present disclosure are explained and illustrated. Specifically, the method for displaying application icons described in the exemplary embodiments of the present disclosure proposes a three-dimensional launcher system based on OpenGL ES technology, which can be used in VR / XR systems. Furthermore, in actual application, the three-dimensional launcher system proposed in the exemplary embodiments of the present disclosure includes functions commonly included in two-dimensional launchers, such as app icon lists and interactions. Moreover, since the launcher involved in the exemplary embodiments of the present disclosure is in three-dimensional space, the specific implementation is different from that of a two-dimensional launcher.

[0111] Based on the above, the app icons of the 3D launcher proposed in the exemplary embodiments of the present disclosure are drawn using OpenGL ES shaders. Multiple icons are arranged in three dimensions in three dimensions using a specific algorithm. The interaction method is not the "click" interaction of traditional 2D app icons, but rather interaction through handle rays or gaze points in the VR / XR 3D space. Furthermore, in actual application, in order to achieve 3D display of the target application icon, it is necessary to involve mobile Android development, VR / XR development, OpenGL ES development, shader development, Java development, etc. In addition, 3D launchers are generally implemented using the Unity engine or Unreal Engine. Furthermore, since OpenGL ES is a built-in 3D graphics interface of the Android system, a 3D launcher implemented using OpenGL ES is both lightweight and tightly integrated with the system, making it easy to call the Android system's own interfaces. Therefore, the application icon display method described in the exemplary embodiments of the present disclosure can be applied to terminal devices equipped with VR systems and is suitable for VR device systems with low computing power.

[0112] The following will further explain and illustrate the display method of the application icon shown in Figure 1. Specifically:

[0113] In step S110 , a target application list is determined; wherein the target application list includes target applications to be displayed and target application attribute information of the target applications.

[0114] Specifically, the specific determination process of the target application list can be achieved in the following way: first, obtain the original application list installed in the terminal device, and obtain the original program attribute information of the original application in the original application list; wherein, the original program attribute information includes at least one of the application package name, application whitelist attribute, application name, application picture logo, and application display attribute; secondly, filter the original application according to the application whitelist attribute to obtain the target application, and generate the target application list according to the target application. That is, in the actual application process, in order to realize the display of the application icon, it is necessary to start the system first; wherein, the system recorded here refers to the operating system where the application is located; secondly, after the operating system is started, the system application (App) information list can be loaded; wherein, the system App information list recorded here refers to the list of all original applications that have been installed in the operating system; in the process of loading the original application list, the Android system can be used through Android The interface provided by the SDK obtains the list of all App information installed in the current system and the original program attribute information of the original application in the original application list; wherein, the original program attribute information may include the name of the current App (application name), application package name, application icon (picture) logo and other information; further, after the operating system is started, the preset whitelist information needs to be loaded; it should be noted here that the reason for loading the preset whitelist information is that not every system App needs to be displayed on the Launcher, and in order to facilitate the control of which Apps can be displayed on the Launcher, and in order to customize the App name and icon (picture), the App information list loaded in the previous step needs to be processed according to the preset whitelist information; therefore, the whitelist information recorded here includes which Apps can be displayed, whether customized names and icons are required, and some other information; further, based on the whitelist information and the original application list, the target application list can be obtained.

[0115] In an example embodiment, the specific processing process of App list information loading and whitelist mechanism can be implemented as follows: First, for loading App list information, for example, in an Android system, the Android application program interface can be used to obtain the information list of all Apps installed in the system: context.getPackageManager().getInstalledPackages(0); at the same time, after obtaining the information list of all Apps, all the installed Apps obtained can be processed, and the above list can be filtered and modified by using a preset processing method (such as local preset or loading from a remote server). Among them, each item of the preset App list information contains the following necessary information: a) packageName: package name, which is the unique identification string of the App; b) isWhite: whether it is in the whitelist, if it is, it is displayed in the Launcher, otherwise it is not displayed; c) customName: custom name, if it is not empty, it replaces the default name of the App; d) customIcon: custom icon, if it is not empty, it replaces the default icon image of the App; e) isFullScreenMode: whether it is full-screen display, if it is false, it is displayed as a 2D App in three-dimensional space, otherwise it is displayed in an independent full-screen manner; therefore, according to the preset information, you can control which apps installed in the system can be displayed, as well as each app's custom display name, custom icon, whether it is displayed in full screen, etc.

[0116] In step S120 , an application icon of the target application is drawn in a three-dimensional space according to the target application attribute information.

[0117] Specifically, in the actual application process, after determining the list of apps to be displayed (target applications), it is necessary to draw the entry icons and app names of these apps in the three-dimensional space of the Launcher. Furthermore, according to the target program attribute information, drawing the application icon of the target application in the three-dimensional space can be achieved in the following way: obtaining the application name and application image logo in the target program attribute information, and determining the name texture to be drawn according to the application name; determining the icon image texture to be drawn according to the application image logo, and determining the outer border and background color of the application icon; generating an icon material according to the name texture, icon image texture, outer border and background color, and loading the original icon model corresponding to the application icon; rendering the icon material into the original icon model in the three-dimensional space to obtain the application icon of the target application.

[0118] The following will explain and illustrate the specific drawing process of the application icon in conjunction with Figure 2. Specifically, as shown in Figure 2, the components of the application icon recorded here may include an icon texture 200, an outer border 210, a background color 220, an application image logo 230, and an application name 240. At the same time, the application icon recorded here is not a "picture" as a whole, but a texture (Texture) drawn by a Shader (which can be regarded as a code program), and the drawn texture (Texture) can ultimately be regarded as a dynamically generated image that can be attached to the surface of a three-dimensional world model to achieve the purpose of three-dimensional display of the application icon.

[0119] Furthermore, in the application icon shown in Figure 2, the icon texture 200 refers to the texture finally drawn by the Shader program, which is square (or rectangular) in size and has a size of S0; the outer border 210 refers to the outermost border (Border), and the color can be customized; the background color 220 refers to the background color (Background Color) of the application icon. In actual application, the background color can be defined according to actual needs; the application picture logo 230 refers to the icon picture of the App, which is drawn as a texture of the Shader. The application icon logo is also square and has a size of S1; the application name 240 refers to the name of the App, which is also drawn as a texture of the Shader, and has a size of H1*Ws; since the name of the App is dynamic and changing, the application name can be generated by using text to generate a picture. For example, in the Android system, text can be drawn into a picture by drawing with Canvas, thereby generating a picture corresponding to the text.

[0120] In step S130 , the icon arrangement positions of the application icons in the three-dimensional space are calculated, and the application icons are arranged based on the icon arrangement positions to obtain an icon arrangement result.

[0121] In this example embodiment, first, the icon arrangement positions of the application icons in the three-dimensional space are calculated; wherein, the application icons recorded here may include the first application icon, the second application icon, the third application icon, ..., the Nth application icon, where N is the total number of application icons. Furthermore, in the actual application process, referring to FIG3 , in the three-dimensional space, the coordinate system space composed of X, Y, and Z, assuming that the user's eyes 300 are at the positive position of the Z axis and looking in the negative direction of the Z axis (the gaze direction is shown as the dotted line in FIG3 ), some application icons 311, 312, and 313 are placed on the plane composed of X and Y, then these application icons are all in the plane composed of X and Y; however, this placement method does not make the application icons present a three-dimensional effect; in order to solve this problem, the following implementation scheme is proposed:

[0122] First, referring to FIG4 , assume that the user's eyes are positioned in the positive direction of the Z axis and looking in the negative direction of the Z axis, and simplify the specific arrangement process of the application icons shown in FIG3 to the application icon arrangement scenario diagram shown in FIG4 . Second, assume that application icons 311, 312, and 313 are all "facing" the user's eyes 300; that is, the rectangular plane containing the application icons and the ray of the user's eyes 300 looking at the icons form a vertical angle as shown in FIG5 , where the vertical angle can be represented by 501, 502, and 503 in FIG5 . Furthermore, in actual application, assume that the center points of the application icons are distributed on the same circle as shown in FIG6 , where the circle is centered at the user's eyes 300. Furthermore, in the example scenario diagram shown in FIG6 , the final arrangement of the application icons is presented in the form of an arc arrangement, and the position and rotation angle of each application icon in three-dimensional space must be calculated according to a certain algorithm.

[0123] Based on this, when calculating the icon arrangement positions of application icons in three-dimensional space, the specific calculation of the icon arrangement positions can be converted into calculating the spatial coordinate position of application icon 702 shown in Figure 7. Under this premise, it can be known that calculating the icon arrangement positions of the application icons in three-dimensional space can be achieved by the following method: first, creating a preset human eye position and a preset gaze point direction in the three-dimensional space, and determining a first icon arrangement position of the first application icon based on the preset human eye position and the preset gaze point direction; second, based on the first icon arrangement position, determining the second icon arrangement position, third icon arrangement position, ..., Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon. That is to say, in the actual application process, in order to obtain the icon layout position of the application icon in the three-dimensional space, it is first necessary to determine the position of the human eye and the direction of the human eye's gaze point; under the premise of determining the position of the human eye and the direction of the human eye's gaze point, determine the first icon layout position of the first application icon, and then determine the layout positions of other icons in turn; from this, it can be seen that when calculating the spatial coordinate position of the application icon 702 shown in Figure 7, the spatial coordinate position of the application icon 701 is known; the angle 703 between the application icon 701 and the application icon 702 is pre-set and therefore also known.

[0124] In an exemplary embodiment, creating a preset human eye position and a preset gaze point direction in the three-dimensional space can be achieved as follows: first, constructing a three-dimensional space coordinate system in the three-dimensional space; wherein the three-dimensional space coordinate system includes an X-coordinate axis, a Y-coordinate axis, and a Z-coordinate axis; secondly, determining the preset human eye position based on the origin coordinates of the three-dimensional space coordinate system; then, determining the preset gaze point direction based on the direction of the Z-coordinate axis in the three-dimensional space coordinate system; wherein the preset gaze point direction is from the positive direction of the Z-coordinate axis to the negative direction of the Z-coordinate axis; further, the three-dimensional space coordinate system recorded here can refer to the coordinate system space composed of X, Y, and Z shown in Figure 3; the preset human eye position recorded here can refer to 300 in Figure 3; the preset gaze point direction recorded here can refer to the dotted line direction in Figure 3.

[0125] In an example embodiment, determining the first icon arrangement position of the first application icon based on a preset human eye position and a preset gaze point direction can be achieved as follows: first, determining the circular visual area of ​​the human eye in the three-dimensional space based on the preset human eye position, and determining the radius of the circular visual area based on the preset human eye position; second, determining the first icon arrangement position of the first application icon based on the radius of the circular visual area, the preset human eye position, and the preset gaze point direction. Specifically, in actual application, in order to enable the application icon to present a three-dimensional display effect, it is first necessary to determine the display area corresponding to the application icon; wherein the display area recorded here is the circular visual area of ​​the human eye in the three-dimensional space; after the circular visual area and the center position of the circle are determined, the radius of the circular visual area can be determined based on the circular visual area and the center position of the circle, and then the first icon arrangement position of the application icon 701 is determined.

[0126] In an exemplary embodiment, based on the first icon arrangement position, determining the second icon arrangement position, third icon arrangement position, ..., Nth application icon of the second application icon, the Nth application icon of the third application icon, ..., the Nth application icon of the second icon arrangement position, can be achieved in the following manner: according to the total number of application icons, determining the number of icon rows and icon columns required for arrangement of each application icon, and constructing an icon position matrix according to the number of icon rows and icon columns; establishing an association relationship between the matrix elements in the icon position matrix and each application icon, and based on the association relationship, determining the positional relationship between the second application icon, the third application icon, ..., the Nth application icon and the first application icon; according to the positional relationship and the first icon arrangement position, determining the second icon arrangement position, third icon arrangement position, ..., Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon. That is to say, in order to accurately obtain the specific icon arrangement position of each application icon, after the first icon arrangement position is determined, the specific icon arrangement position of other application icons can be determined based on the positional relationship between other application icons and the first application icon; at the same time, the positional relationship recorded here may include being in the same row as the first application icon, in the same column as the first application icon, and in different rows and columns than the first application icon, etc.

[0127] In an example embodiment, determining the second icon arrangement position, the third icon arrangement position, ..., the Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon based on the position relationship and the first icon arrangement position can be achieved as follows: classifying the second application icon, the third application icon, ..., the Nth application icon based on the position relationship to obtain a first icon classification result that is in the same row as the first application icon, and / or a second icon classification result that is in the same column as the first application icon, and / or a third icon classification result that is in a different row and column than the first application icon; calculating the row icon arrangement position of the application icons in the first icon classification result based on the first icon arrangement position and a preset position angle; calculating the column icon arrangement position of the application icons in the second icon classification result based on the first icon arrangement position and a preset row spacing; calculating other icon arrangement positions of the application icons in the third icon classification result based on the row icon arrangement position and / or the column icon arrangement position. Among them, the application icons in the first icon classification result recorded here may include the first row of icons, the second row of icons,..., the Mth row of icons; the application icons in the second icon classification result recorded here include the first column of icons, the second column of icons,..., the Jth column of icons; that is to say, in the actual application process, the icon arrangement position of each row of application icons or the icon arrangement position of each column of application icons can be calculated separately, and finally the icon arrangement position of all application icons can be obtained.

[0128] In an example embodiment, calculating the row icon arrangement position of application icons in the first icon classification result based on the first icon arrangement position and a preset position angle can be achieved as follows: first, based on the preset position angle and the radius of the circular viewing area, calculating the first X-axis offset of the first row of icons on the X-coordinate axis and the first Z-axis offset on the Z-coordinate axis; secondly, calculating the first row arrangement position of the first row of icons based on the first icon arrangement position, the first X-axis offset and the first Z-axis offset; then, based on the preset position angle and the radius of the circular viewing area, calculating the second X-axis offset of the second row of icons on the X-coordinate axis and the second Z-axis offset on the Z-coordinate axis; further, calculating the second row arrangement position of the second row of icons based on the first row arrangement position, the second X-axis offset and the second Z-axis offset; finally, looping the calculation process of the second row arrangement position in sequence to obtain other row arrangement positions of other application icons in the first icon classification result.

[0129] Below, the specific calculation process of the first row arrangement position of the first row of icons in the first classification result (that is, the icon arrangement position of the application icon 702) will be explained and illustrated in conjunction with Figure 7. Specifically, referring to Figure 7, since the spatial coordinate position of the application icon 701 is known; the angle 703 between the application icon 701 and the application icon 702 is also known; and the application icon 701 and the application icon 702 are in the same row, so the values ​​on the Y axis are the same and they are at the same height; further, the application icon 701 and the application icon 702 are both distributed on the same circular visual area with the user's current eye position as the center point, and the planes where the application icon 701 and the application icon 702 are located are both tangent planes of the circular visual area, and the tangent point is at the center point of the application icon; under this premise, the spatial position of the application icon 702 can be calculated as follows:

[0130] Referring to FIG. 7 , the spatial coordinates (x1, y1, z1) of the application icon 701 are known; the angle a 703 is known; and the radius R of the circle is known. Based on FIG. 7 , the following conclusions can be drawn:

[0131] First, M+N=R; wherein M is shown as 704 and N is shown as 705; therefore, if the value of N is calculated, the spatial position of the application icon 702 can be obtained; wherein the specific calculation process of N is:

[0132] From Cos(a)=M / R, we get: M=Cos(a)*R;

[0133] Therefore, N = R - Cos(a)*R = R(1-Cos(a)). Since R and a are both known, the value of N is solved;

[0134] Furthermore, since Sin(a)=Q / R, then: Q=Sin(a)*R. Since R and a are both known, the value of Q has been solved; where Q is shown in 706.

[0135] At this point, the spatial position of the application icon 702 has been solved, namely: (x1+Q, y1, z1-N).

[0136] In an example embodiment, the column icon arrangement position of the application icons in the second icon classification result is calculated based on the first icon arrangement position and the preset row spacing, which can be achieved as follows: based on the preset row spacing, the first Y-axis offset of the first column icon on the Y-coordinate axis is calculated, and the first column arrangement position of the first column icon is calculated based on the first icon arrangement position and the first Y-axis offset; based on the preset row spacing, the second Y-axis offset of the second column icon on the Y-coordinate axis is calculated, and the second column arrangement position of the second column icon is calculated based on the first column arrangement position and the second Y-axis offset; the calculation process of the second column arrangement position is looped sequentially to obtain other column arrangement positions of other application icons in the second icon classification result.

[0137] The following explains the specific calculation process for the first column layout position of the first column of icons in the second icon classification result. Specifically, assuming: the number of rows is M, the number of columns is N, and the row spacing is D; then, for each row of icons, draw them one by one according to the above algorithm; when wrapping, the first icon of the new row can be obtained by the first icon of the previous row. That is, assuming: the spatial position of the first icon in the previous row is (x1, y1, z1), then the spatial position of the first icon in the new row is (x1, y1-D, z1). For the new row, continue to draw them one by one according to the above algorithm.

[0138] At this point, the specific calculation process of the icon arrangement position of the application icon in the three-dimensional space has been fully realized; further, after obtaining the icon arrangement position, the application icons can be arranged based on the icon arrangement position to obtain the icon arrangement result.

[0139] In step S140 , based on the icon arrangement result, the application icons of the target application are displayed in sequence.

[0140] Specifically, after obtaining the icon arrangement result, the application icons can be displayed in sequence based on their positions in the icon arrangement result. Furthermore, after displaying the application icons, the displayed application icons can also be interacted with. Among them, the specific interactive operation process of the application icons can be implemented in the following ways: one implementation method is: based on an external device, the application icon is interactively operated, so as to control the target application corresponding to the application icon to execute the operation instruction corresponding to the interactive operation based on the interactive operation; another implementation method is: based on the current gaze point position of the human eye, the application icon is interactively operated, so as to control the target application corresponding to the application icon to execute the operation instruction corresponding to the interactive operation based on the interactive operation. That is to say, when interacting with the application icons, the interaction can be achieved through the gaze point of the human eye, or through the external device.

[0141] Furthermore, in the actual application process, the specific process of determining the interaction mode for interactive operations on the application can be achieved in the following way: first, detect whether an external device is connected to the terminal device; wherein, the external device here can be a handle controller; secondly, if a handle controller is connected, the interaction mode is the ray interaction mode; if the handle controller is not connected, the interaction mode is the gaze point interaction mode; at the same time, different interaction modes have different interaction processing methods during the interaction process; specifically, in the actual application process, in the handle controller ray interaction mode, if the current ray intersects with an icon, the user clicks the "OK" button of the handle controller, then the "click" behavior of the current icon is triggered: start the App; in the gaze point interaction mode, if the gaze point is in the internal area of ​​an icon, and the user clicks the "OK" button, then the "click" behavior of the current icon is triggered: start the App.

[0142] The following will explain and illustrate the specific interaction implementation processes of different interaction methods.

[0143] In an example embodiment, an interactive operation is performed on the application icon based on the current gaze point position of the human eye, so as to control the target application corresponding to the application icon to execute the operation instruction corresponding to the interactive operation based on the interactive operation. This can be achieved in the following manner: the current gaze point position of the human eye in the three-dimensional space is obtained, and the second interactive ray emitted by the human eye is determined based on the current gaze point position and the preset human eye position in the three-dimensional space; it is determined whether there is a second intersection between the icon rectangle where the application icon is located in the three-dimensional space and the second interactive ray; when it is determined that there is a second intersection, the application icon is used as the target icon, and based on the second relative position of the second intersection in the icon rectangle, the second operation instruction to be executed by the target application corresponding to the target icon is determined; in response to the touch operation on the preset interactive control, the target application is controlled to execute the second operation instruction.

[0144] Specifically, in actual application, when the device is not connected to an external handle controller, it is controlled by gaze point by default; at the same time, an example diagram of a user interacting with an application icon by gaze point can be seen in Figure 8. In Figure 8, 800 represents the visible area (screen display area). At the center point of the visible area (i.e., the intersection of the horizontal and vertical centers of the visible area), there is an indicator (usually a circle or other arbitrary shape) 810, which is called the gaze point. Furthermore, when the user controls the device (usually a VR / XR head display device) to the left, the gaze point will slowly be directly above a certain application icon 820. At this time, the application icon is the controlled object. Typically, the gaze point and the application icon are distributed in three-dimensional space. Specifically, as shown in FIG9 , they are distributed at different positions on the Z axis. Furthermore, in FIG9 , when the gaze point is at position 1 (901), it intersects with the application icon 902. That is, the line connecting the user's eye point and the gaze point 901 intersects with the icon 902 at point 903. When the gaze point is at position 904, there is no intersection. Therefore, determining whether the gaze point intersects with an icon can be transformed into determining whether a ray (i.e., the ray formed by the line connecting the user's eye point and the gaze point) intersects with a rectangular area (i.e., the icon area). The specific calculation process can be implemented based on computer graphics and will not be elaborated here. Furthermore, after obtaining the intersection point, the specific relative position of the intersection point within the icon can be determined. Furthermore, when the user presses the OK button on the device at this time, the corresponding operation can be triggered.

[0145] In an example embodiment, performing an interactive operation on the application icon based on an external device to control the target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation can be achieved as follows: receiving a first interactive ray emitted by the external device, and determining whether there is a first intersection between the icon rectangle where the application icon is located in the three-dimensional space and the first interactive ray; when it is determined that there is a first intersection, using the application icon as the target icon, and determining the first operation instruction to be executed by the target application corresponding to the target icon based on the first relative position of the first intersection in the icon rectangle; receiving a first instruction execution message sent by the external device, and controlling the target application to execute the first operation instruction in response to the first instruction execution message.

[0146] Specifically, in actual application, the ray interaction of the handle controller is similar to the gaze point interaction, except that the rays of the gaze point interaction are emitted from the user's eye position, while the rays of the handle controller are emitted from the spatial position of the handle. Further, referring to Figure 10, when the user's eyes are at a certain spatial position and the handle controller is at position 1 (1001), the ray (1002) emitted by the handle controller has an intersection 1004 with the application icon 1003, while the ray (1006) emitted by the handle controller at position 2 (1005) does not intersect with the application icon 1003.

[0147] It's important to note that for both gaze-based and controller-based interaction, the key issue is finding the intersection point between the ray and the icon's rectangle. This problem has various known solutions in graphics and OpenGL ES technology, and we won't go into detail here. Furthermore, once the intersection point is determined, its specific relative position within the icon can be determined. Furthermore, when the user presses the OK button on the device at this point, the corresponding action can be triggered.

[0148] Furthermore, in actual application, when interacting with the application icon through a handle controller or the gaze point of the human eye, when the ray intersects with an icon, the rotation effect of the icon can be triggered by a certain algorithm. Specifically, it can be achieved in the following ways: obtaining the initial position and initial orientation of the target icon, and determining the center point of the icon rectangle where the target icon is located; determining the virtual ray of the target icon based on the center point; wherein the virtual ray points to the center point of the target icon and is perpendicular to the rectangular plane where the icon rectangle is located; calculating the first ray angle between the virtual ray and the first interaction ray; receiving a second instruction execution message sent by the external device, and in response to the second instruction execution message, controlling the target icon to rotate from the initial position and initial orientation to the target position and target orientation corresponding to the first ray angle.

[0149] Specifically, first, referring to FIG11 , in actual application, each application icon 1101 has an initial position and orientation, so there is an independent virtual ray 1102, which points to the center point of the icon and is perpendicular to the rectangular plane of the icon; secondly, referring to FIG12 , in the gaze point interaction mode or the handle controller interaction model, there is an angle C between the ray and the virtual ray, which is 1201 shown in FIG12 , and the unit of the angle C is degrees; when the ray intersects with the rectangular area where the application icon is located, the application icon is allowed to rotate from the current rotation angle to the position of C degrees within a certain period of time, which is 1202 shown in FIG12 ; when the ray has no intersection with the rectangular area of ​​the icon, the icon returns to its original orientation. In this way, the rotation effect of the application icon in three-dimensional space can be achieved.

[0150] The following are embodiments of the apparatus disclosed herein, which can be used to implement the method embodiments disclosed herein. For details not disclosed in the apparatus embodiments disclosed herein, please refer to the method embodiments disclosed herein.

[0151] The exemplary embodiments of the present disclosure also provide a device for displaying application icons. Specifically, as shown in FIG13 , the device for displaying application icons may include an application list determination module 1310, an application icon drawing module 1320, an application icon arrangement module 1330, and an application icon display module 1340.

[0152] The application list determination module 1310 may be used to determine a target application list; wherein the target application list includes target applications to be displayed and target application attribute information of the target applications;

[0153] The application icon drawing module 1320 may be configured to draw an application icon of the target application in a three-dimensional space according to the target application attribute information;

[0154] The application icon arrangement module 1330 may be used to calculate the icon arrangement positions of the application icons in a three-dimensional space, and arrange the application icons based on the icon arrangement positions to obtain an icon arrangement result;

[0155] The application icon display module 1340 may be configured to display the application icons of the target application in sequence based on the icon arrangement result.

[0156] In an exemplary embodiment of the present disclosure, determining a target application list includes: obtaining a list of original applications installed in a terminal device, and obtaining original program attribute information of the original applications in the original application list; wherein the original program attribute information includes at least one of an application package name, an application whitelist attribute, an application name, an application picture logo, and an application display attribute; filtering the original applications according to the application whitelist attribute to obtain target applications, and generating a target application list based on the target applications.

[0157] In an exemplary embodiment of the present disclosure, an application icon of the target application is drawn in a three-dimensional space according to the target program attribute information, including: obtaining the application name and application picture logo in the target program attribute information, and determining the name texture to be drawn according to the application name; determining the icon picture texture to be drawn according to the application picture logo, and determining the outer border and background color of the application icon; generating an icon material according to the name texture, icon picture texture, outer border and background color, and loading the original icon model corresponding to the application icon; rendering the icon material into the original icon model in the three-dimensional space to obtain the application icon of the target application.

[0158] In an exemplary embodiment of the present disclosure, the application icons include a first application icon, a second application icon, a third application icon, ..., the Nth application icon, where N is the total number of application icons; wherein, calculating the icon arrangement positions of the application icons in the three-dimensional space includes: creating a preset human eye position and a preset gaze point direction in the three-dimensional space, and determining a first icon arrangement position of the first application icon based on the preset human eye position and the preset gaze point direction; based on the first icon arrangement position, determining the second icon arrangement position, the third icon arrangement position, ..., the Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon.

[0159] In an exemplary embodiment of the present disclosure, a preset human eye position and a preset gaze point direction are created in the three-dimensional space, including: constructing a three-dimensional space coordinate system in the three-dimensional space; wherein the three-dimensional space coordinate system includes an X-coordinate axis, a Y-coordinate axis, and a Z-coordinate axis; based on the origin coordinates of the three-dimensional space coordinate system, determining the preset human eye position; based on the direction of the Z-coordinate axis in the three-dimensional space coordinate system, determining the preset gaze point direction; wherein the preset gaze point direction is from the positive direction of the Z-coordinate axis to the negative direction of the Z-coordinate axis.

[0160] In an exemplary embodiment of the present disclosure, the first icon arrangement position of the first application icon is determined according to a preset human eye position and a preset gaze point direction, including: determining the circular visual area of ​​the human eye in the three-dimensional space according to the preset human eye position, and determining the radius of the circular visual area according to the preset human eye position; determining the first icon arrangement position of the first application icon according to the radius of the circular visual area, the preset human eye position and the preset gaze point direction.

[0161] In an exemplary embodiment of the present disclosure, based on the first icon arrangement position, the second icon arrangement position, the third icon arrangement position, ..., the Nth application icon, are determined, including: according to the total number of application icons, the number of icon rows and the number of icon columns required to arrange each of the application icons are determined, and an icon position matrix is ​​constructed according to the number of icon rows and the number of icon columns; an association relationship is established between the matrix elements in the icon position matrix and each of the application icons, and based on the association relationship, the positional relationship between the second application icon, the third application icon, ..., the Nth application icon and the first application icon is determined; according to the positional relationship and the first icon arrangement position, the second icon arrangement position, the third icon arrangement position, ..., the Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon is determined.

[0162] In an exemplary embodiment of the present disclosure, the position relationship includes any one of the following: being in the same row as the first application icon, being in the same column as the first application icon, and being in different rows and columns than the first application icon; wherein, based on the position relationship and the first icon arrangement position, determining the second icon arrangement position, the third icon arrangement position, ..., the Nth application icon, includes: classifying the second application icon, the third application icon, ..., the Nth application icon according to the position relationship, and obtaining the second application icon, the third application icon, ..., the Nth application icon, and the Nth application icon according to the position relationship. The first icon classification result in which the application icons are in the same row, and / or the second icon classification result in the same column as the first application icon, and / or the third icon classification result in a different row and column than the first application icon; calculating the row icon arrangement position of the application icons in the first icon classification result based on the first icon arrangement position and a preset position angle; calculating the column icon arrangement position of the application icons in the second icon classification result based on the first icon arrangement position and a preset row spacing; calculating other icon arrangement positions of the application icons in the third icon classification result based on the row icon arrangement position and / or column icon arrangement position.

[0163] In an exemplary embodiment of the present disclosure, the application icons in the first icon classification result include a first row of icons, a second row of icons, ..., an Mth row of icons; wherein, the row icon arrangement position of the application icons in the first icon classification result is calculated based on the first icon arrangement position and a preset position angle, including: calculating a first X-axis offset of the first row of icons on the X-coordinate axis and a first Z-axis offset on the Z-coordinate axis based on the preset position angle and the radius of the circular visual area; calculating a first row arrangement position of the first row of icons based on the first icon arrangement position, the first X-axis offset, and the first Z-axis offset; calculating a second X-axis offset of the second row of icons on the X-coordinate axis and a second Z-axis offset on the Z-coordinate axis based on the preset position angle and the radius of the circular visual area; calculating a second row arrangement position of the second row of icons based on the first row arrangement position, the second X-axis offset, and the second Z-axis offset; and repeating the calculation process of the second row arrangement position in sequence to obtain other row arrangement positions of other application icons in the first icon classification result.

[0164] In an exemplary embodiment of the present disclosure, the application icons in the second icon classification result include a first column of icons, a second column of icons, ..., a Jth column of icons; wherein, based on the first icon arrangement position and a preset row spacing, the column icon arrangement position of the application icons in the second icon classification result is calculated, including: based on the preset row spacing, calculating the first Y-axis offset of the first column of icons on the Y-coordinate axis, and calculating the first column arrangement position of the first column of icons based on the first icon arrangement position and the first Y-axis offset; based on the preset row spacing, calculating the second Y-axis offset of the second column of icons on the Y-coordinate axis, and calculating the second column arrangement position of the second column of icons based on the first column arrangement position and the second Y-axis offset; the calculation process of the second column arrangement position is looped in sequence to obtain other column arrangement positions of other application icons in the second icon classification result.

[0165] In an exemplary embodiment of the present disclosure, the display device for the application icon may further include:

[0166] a first interactive operation module, which may be used to perform an interactive operation on the application icon based on an external device, so as to control a target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation; and / or

[0167] The second interactive operation module can be used to perform interactive operations on the application icon based on the current gaze point position of the human eye, so as to control the target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation.

[0168] In an exemplary embodiment of the present disclosure, an interactive operation is performed on the application icon based on an external device to control the target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation, including: receiving a first interactive ray emitted by the external device, and determining whether there is a first intersection between the icon rectangle where the application icon is located in the three-dimensional space and the first interactive ray; when it is determined that there is a first intersection, taking the application icon as the target icon, and determining the first operation instruction to be executed by the target application corresponding to the target icon based on the first relative position of the first intersection in the icon rectangle; receiving a first instruction execution message sent by the external device, and controlling the target application to execute the first operation instruction in response to the first instruction execution message.

[0169] In an exemplary embodiment of the present disclosure, an interactive operation is performed on the application icon based on the current gaze point position of a human eye, so as to control the target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation, including: obtaining the current gaze point position of the human eye in three-dimensional space, and determining a second interactive ray emitted by the human eye based on the current gaze point position and a preset human eye position in the three-dimensional space; judging whether there is a second intersection between the icon rectangle where the application icon is located in the three-dimensional space and the second interactive ray; when it is determined that there is a second intersection, taking the application icon as the target icon, and determining the second operation instruction to be executed by the target application corresponding to the target icon based on the second relative position of the second intersection in the icon rectangle; and controlling the target application to execute the second operation instruction in response to a touch operation on a preset interactive control.

[0170] In an exemplary embodiment of the present disclosure, the display device for the application icon may further include:

[0171] A center point determination module may be used to obtain the initial position and initial orientation of the target icon and determine the center point of the icon rectangle where the target icon is located;

[0172] A virtual ray determination module may be configured to determine a virtual ray of the target icon based on the center point; wherein the virtual ray points to the center point of the target icon and is perpendicular to the rectangular plane where the icon rectangle is located;

[0173] A first ray angle calculation module, which can be used to calculate the first ray angle between the virtual ray and the first interaction ray;

[0174] The application icon rotation module can be used to receive a second instruction execution message sent by the external device, and in response to the second instruction execution message, control the target icon to rotate from an initial position and initial orientation to a target position and target orientation corresponding to the first ray angle.

[0175] The specific details of each module in the above-mentioned display device for application icons have been described in detail in the corresponding display method for application icons, so they will not be repeated here.

[0176] It should be noted that although several modules or units of the device for action execution are mentioned in the detailed description above, this division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be concretized in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided into multiple modules or units to be concretized.

[0177] Furthermore, although the steps of the method of the present disclosure are described in a particular order in the accompanying drawings, this does not require or imply that the steps must be performed in this particular order, or that all steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps.

[0178] In an exemplary embodiment of the present disclosure, an electronic device capable of implementing the above method is also provided.

[0179] Those skilled in the art will appreciate that various aspects of the present disclosure may be implemented as systems, methods, or program products. Therefore, various aspects of the present disclosure may be implemented in the following forms: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software implementations, which may be collectively referred to herein as "circuits," "modules," or "systems."

[0180] An electronic device 1400 according to this embodiment of the present disclosure is described below with reference to FIG 14. The electronic device 1400 shown in FIG 14 is merely an example and should not limit the functions and scope of use of the embodiments of the present disclosure.

[0181] As shown in FIG14 , electronic device 1400 is implemented as a general-purpose computing device. Components of electronic device 1400 may include, but are not limited to, the aforementioned at least one processing unit 1410, the aforementioned at least one storage unit 1420, a bus 1430 connecting various system components (including storage unit 1420 and processing unit 1410), and a display unit 1440.

[0182] The storage unit stores a program code, and the program code can be executed by the processing unit 1410, so that the processing unit 1410 performs the steps described in the "Exemplary Method" section of the present specification according to various exemplary embodiments of the present disclosure. For example, the processing unit 1410 can execute step S110 as shown in Figure 1: determine a target application list; wherein the target application list includes target applications to be displayed and target program attribute information of the target application; step S120: draw the application icon of the target application in three-dimensional space according to the target program attribute information; step S130: calculate the icon arrangement position of the application icon in three-dimensional space, and arrange the application icons based on the icon arrangement position to obtain an icon arrangement result; step S140: based on the icon arrangement result, display the application icons of the target application in sequence.

[0183] The storage unit 1420 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 14201 and / or a cache memory unit 14202 , and may further include a read-only memory unit (ROM) 14203 .

[0184] The storage unit 1420 may also include a program / utility 14204 having a set (at least one) of program modules 14205, such program modules 14205 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.

[0185] The bus 1430 may represent one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.

[0186] Electronic device 1400 can also communicate with one or more external devices 1500 (e.g., a keyboard, pointing device, Bluetooth device, etc.), one or more devices that enable a user to interact with electronic device 1400, and / or any device that enables electronic device 1400 to communicate with one or more other computing devices (e.g., a router, modem, etc.). Such communication can occur via input / output (I / O) interface 1450. Furthermore, electronic device 1400 can communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network such as the Internet) via network adapter 1460. As shown, network adapter 1460 communicates with other modules of electronic device 1400 via bus 1430. It should be understood that, although not shown, other hardware and / or software modules can be used in conjunction with electronic device 1400, including but not limited to microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0187] Through the description of the above embodiments, it is easy for those skilled in the art to understand that the example embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the embodiments of the present disclosure.

[0188] In exemplary embodiments of the present disclosure, a computer-readable storage medium is also provided, on which is stored a program product capable of implementing the aforementioned methods of this specification. In some possible implementations, various aspects of the present disclosure may also be implemented in the form of a program product comprising program code. When the program product is executed on a terminal device, the program code is configured to cause the terminal device to execute the steps described in the "Exemplary Methods" section of this specification according to various exemplary embodiments of the present disclosure.

[0189] According to an embodiment of the present disclosure, a program product for implementing the above-mentioned method can be a portable compact disc read-only memory (CD-ROM) and include program code, and can be run on a terminal device, such as a personal computer. However, the program product of the present disclosure is not limited thereto. In this document, a readable storage medium can be any tangible medium containing or storing a program, which can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0190] The program product may be implemented in any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or component, or any combination thereof. More specific examples (a non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.

[0191] A computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, which carries readable program code. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium that can transmit, propagate, or transfer a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0192] The program code embodied on the readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.

[0193] The program code for performing the operations of the present disclosure may be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java, C++, and the like, as well as conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a stand-alone software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving a remote computing device, the remote computing device may be connected to the user computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0194] Furthermore, the figures above are merely illustrative of the processes included in the methods according to exemplary embodiments of the present disclosure and are not intended to be limiting. It is readily understood that the processes illustrated in the figures above do not indicate or limit the temporal order of these processes. Furthermore, it is readily understood that these processes may be executed synchronously or asynchronously, for example, in multiple modules.

[0195] Other embodiments of the present disclosure will readily occur to those skilled in the art after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow from the general principles of the present disclosure and include common knowledge or customary techniques in the art not invented herein. The specification and examples are to be considered as exemplary only, with the true scope and spirit of the present disclosure being indicated by the claims.

Claims

1. A method for displaying an application icon, characterized in that: include: Determine a target application list; wherein the target application list includes target applications to be displayed and target application attribute information of the target applications; Drawing an application icon of the target application in a three-dimensional space according to the target application attribute information; Calculating an icon arrangement position of the application icons in a three-dimensional space, and arranging the application icons based on the icon arrangement position to obtain an icon arrangement result; Based on the icon arrangement result, the application icons of the target application are displayed in sequence.

2. The method for displaying an application icon according to claim 1, wherein: Identify a list of target applications, including: Obtaining a list of original applications installed in the terminal device, and obtaining original program attribute information of the original applications in the original application list; wherein the original program attribute information includes at least one of an application package name, an application whitelist attribute, an application name, an application image logo, and an application display attribute; The original application is filtered according to the application whitelist attribute to obtain a target application, and a target application list is generated according to the target application.

3. The method for displaying an application icon according to claim 1, wherein: Drawing an application icon of the target application in a three-dimensional space according to the target application attribute information includes: Obtaining the application name and application image logo in the target program attribute information, and determining the name texture to be drawn according to the application name; Determining the icon image texture to be drawn according to the application image flag, and determining the outer border and background color of the application icon; Generate an icon material according to the name texture, icon image texture, outer border, and background color, and load an original icon model corresponding to the application icon; The icon material is rendered into the original icon model in a three-dimensional space to obtain an application icon of the target application.

4. The method for displaying an application icon according to claim 1, wherein: The application icons include a first application icon, a second application icon, a third application icon, ..., an Nth application icon, where N is the total number of application icons; Calculating the layout position of the application icon in the three-dimensional space includes: Creating a preset human eye position and a preset gaze point direction in the three-dimensional space, and determining a first icon arrangement position of a first application icon according to the preset human eye position and the preset gaze point direction; Based on the first icon arrangement position, the second icon arrangement position, the third icon arrangement position, ..., the Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon are determined.

5. The method for displaying an application icon according to claim 4, wherein: Creating a preset human eye position and a preset gaze point direction in the three-dimensional space includes: Constructing a three-dimensional space coordinate system in the three-dimensional space; wherein the three-dimensional space coordinate system includes an X coordinate axis, a Y coordinate axis, and a Z coordinate axis; Determining a preset human eye position based on the origin coordinates of the three-dimensional space coordinate system; The preset gaze point direction is determined based on the direction of the Z coordinate axis in the three-dimensional space coordinate system; wherein the preset gaze point direction is from the positive direction of the Z coordinate axis to the negative direction of the Z coordinate axis.

6. The method for displaying an application icon according to claim 4, wherein: Determining a first icon arrangement position of a first application icon according to a preset human eye position and a preset gaze point direction includes: Determining a circular visual area of the human eye in the three-dimensional space according to the preset human eye position, and determining a radius of the circular visual area according to the preset human eye position; A first icon arrangement position of a first application icon is determined according to the radius of the circular visual area, the preset human eye position, and the preset gaze point direction.

7. The method for displaying an application icon according to claim 4, wherein: Determining the second icon arrangement position, the third icon arrangement position, ..., the Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon based on the first icon arrangement position includes: Determine the number of icon rows and icon columns required for arranging the application icons according to the total number of application icons, and construct an icon position matrix according to the number of icon rows and icon columns; Establishing an association relationship between matrix elements in the icon position matrix and each of the application icons, and determining a positional relationship between a second application icon, a third application icon, ..., an Nth application icon, and the first application icon based on the association relationship; The second icon arrangement position, the third icon arrangement position, ..., the Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon are determined according to the position relationship and the first icon arrangement position.

8. The method for displaying an application icon according to claim 7, wherein: The position relationship includes any of the following: In the same row as the first application icon, in the same column as the first application icon, and in different rows and columns than the first application icon; Wherein, determining the second icon arrangement position, the third icon arrangement position, ..., the Nth icon arrangement position of the second application icon, the third application icon, ..., the Nth application icon according to the position relationship and the first icon arrangement position includes: Classify the second application icon, the third application icon, ..., the Nth application icon according to the positional relationship, to obtain a first icon classification result in the same row as the first application icon, and / or a second icon classification result in the same column as the first application icon, and / or a third icon classification result in a different row and column than the first application icon; Calculating a row icon arrangement position of the application icons in the first icon classification result according to the first icon arrangement position and a preset position angle; Calculating a column icon arrangement position of the application icons in the second icon classification result according to the first icon arrangement position and a preset row spacing; According to the row icon arrangement positions and / or column icon arrangement positions, other icon arrangement positions of the application icons in the third icon classification result are calculated.

9. The method for displaying an application icon according to claim 8, wherein: The application icons in the first icon classification result include icons in a first row, icons in a second row, ..., icons in an Mth row; Calculating the row icon arrangement position of the application icons in the first icon classification result according to the first icon arrangement position and a preset position angle includes: Calculate a first X-axis offset and a first Z-axis offset of the first row of icons on the X-axis based on a preset position angle and a radius of the circular viewing area; Calculating a first row arrangement position of the first row of icons according to the first icon arrangement position, the first X-axis offset, and the first Z-axis offset; Calculate a second X-axis offset of the second row of icons on the X-axis and a second Z-axis offset of the second row of icons on the Z-axis based on the preset position angle and the radius of the circular viewing area; Calculating a second row arrangement position of the second row of icons based on the first row arrangement position, the second X-axis offset, and the second Z-axis offset; The calculation process of the second row arrangement position is looped sequentially to obtain other row arrangement positions of other application program icons in the first icon classification result.

10. The method for displaying an application icon according to claim 8, wherein: The application icons in the second icon classification result include icons in the first column, icons in the second column, ..., icons in the Jth column; Calculating the column icon arrangement position of the application icons in the second icon classification result according to the first icon arrangement position and the preset row spacing includes: Calculating a first Y-axis offset of the first column of icons on the Y-axis based on a preset row spacing, and calculating a first column arrangement position of the first column of icons according to the first icon arrangement position and the first Y-axis offset; Calculating a second Y-axis offset of the second column of icons on the Y-axis based on a preset row spacing, and calculating a second column arrangement position of the second column of icons based on the first column arrangement position and the second Y-axis offset; The calculation process of the second column arrangement position is looped sequentially to obtain other column arrangement positions of other application program icons in the second icon classification result.

11. The method for displaying an application icon according to claim 1, wherein: After displaying the application icons based on the icon arrangement result, the method for displaying the application icons further includes: Performing an interactive operation on the application icon based on an external device, so as to control a target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation; and / or An interactive operation is performed on the application icon based on the current gaze point position of the human eye, so as to control the target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation.

12. The method for displaying an application icon according to claim 11, wherein: Performing an interactive operation on the application icon based on an external device to control a target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation includes: receiving a first interaction ray emitted by the external device, and determining whether there is a first intersection between an icon rectangle where the application icon is located in the three-dimensional space and the first interaction ray; When it is determined that there is a first intersection, taking the application icon as a target icon, and determining a first operation instruction to be executed by a target application corresponding to the target icon based on a first relative position of the first intersection in the icon rectangle; A first instruction execution message sent by the external device is received, and in response to the first instruction execution message, a target application is controlled to execute a first operation instruction.

13. The method for displaying an application icon according to claim 11, wherein: Performing an interactive operation on the application icon based on the current gaze point position of the human eye, so as to control a target application corresponding to the application icon to execute an operation instruction corresponding to the interactive operation based on the interactive operation, including: Obtaining a current gaze point position of a human eye in three-dimensional space, and determining a second interaction ray emitted by the human eye based on the current gaze point position and a preset human eye position in three-dimensional space; Determine whether there is a second intersection point between the icon rectangle where the application icon is located in the three-dimensional space and the second interaction ray; When it is determined that there is a second intersection, taking the application icon as the target icon, and determining a second operation instruction to be executed by the target application corresponding to the target icon based on a second relative position of the second intersection in the icon rectangle; In response to a touch operation on a preset interactive control, the target application is controlled to execute a second operation instruction.

14. The method for displaying an application icon according to claim 12, wherein: The method for displaying the application icon further includes: Obtaining the initial position and initial orientation of the target icon, and determining the center point of the icon rectangle where the target icon is located; Determining a virtual ray of the target icon based on the center point; wherein the virtual ray points to the center point of the target icon and is perpendicular to the rectangular plane where the icon rectangle is located; Calculating a first ray angle between the virtual ray and the first interaction ray; A second instruction execution message sent by the external device is received, and in response to the second instruction execution message, the target icon is controlled to rotate from an initial position and an initial orientation to a target position and a target orientation corresponding to the first ray angle.

15. A device for displaying an application icon, characterized in that: include: An application list determination module, configured to determine a target application list; wherein the target application list includes target applications to be displayed and target application attribute information of the target applications; An application icon drawing module, configured to draw an application icon of the target application in a three-dimensional space according to the target application attribute information; an application icon arrangement module, configured to calculate an icon arrangement position of the application icons in a three-dimensional space, and arrange the application icons based on the icon arrangement position to obtain an icon arrangement result; The application icon display module is used to display the application icons of the target application in sequence based on the icon arrangement result.

16. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method for displaying an application icon according to any one of claims 1 to 14 is implemented.

17. An electronic device, characterized in that: include: processor; as well as a memory for storing executable instructions of the processor; The processor is configured to execute the method for displaying an application icon according to any one of claims 1 to 14 by executing the executable instructions.

Citation Information

Patent Citations

  • Desktop display method, desktop display device and mobile terminal

    CN103309562A

  • VR-oriented desktop environment icon arrangement method and device, medium and equipment

    CN115617443A

  • Application icon display method and device, storage medium and electronic equipment

    CN117909018A

  • Managing display of an icon in an eye tracking augmented reality device

    US20230359272A1