Method of switching application icons and electronic device
By generating resource packages on the server to dynamically switch application icons, the problem of long update cycles and poor user experience in existing technologies is solved, and flexible and efficient icon switching is achieved, thus improving the user experience.
Patent Information
- Application Number
- CN202510208289.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-25
- Publication Date
- 2026-08-25
AI Technical Summary
In the existing technology, the process of switching application icons on electronic devices is characterized by long update cycles, high manpower and time costs, poor user experience, and inability to flexibly switch to icons uploaded by developers in real time.
By generating a resource package on the server and sending it to the electronic device, the application icon can be dynamically switched, avoiding the need for developers to create new versions of the software package and pre-set multiple icons. The electronic device determines the icon based on the event-triggered switching rules.
It reduces the time and manpower costs of switching app icons, improves the flexibility and novelty of switching, and enhances the user experience.
Smart Images

Figure CN122633079A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of terminal technology, and in particular to a method for switching application icons and an electronic device. Background Technology
[0002] Electronic devices can download applications from app stores, and the application icons will be displayed on the device's user interface. Electronic devices can switch application icons by updating the application or by pre-setting multiple application icons within the app. The former has a long update cycle, and the latter only allows switching between fixed application icons; neither provides a good user experience. Improving the user experience during the process of switching application icons displayed on electronic devices is a pressing problem that needs to be solved in this field. Summary of the Invention
[0003] This application provides a method and electronic device for switching application icons, which can reduce the time and manpower costs of switching application icons, provide new application icons at any time, improve the flexibility of switching application icons, and improve the user's experience of perceiving changes in application icons.
[0004] In a first aspect, this application provides a method for switching application icons, applied to an electronic device. The method includes: displaying a first icon of a first application; detecting a first event, the first event being used to switch the displayed icon of the first application; sending a first message to a server, the first message being used to request the server to send a first resource package to the electronic device, the first resource package including a second icon of the first application; receiving the first resource package sent by the server in response to the first message; and switching the displayed first icon of the first application to the second icon based on the first resource package; wherein the version of the first application when displaying the first icon is the same as the application version of the first application when displaying the second icon.
[0005] In some implementations, the first event corresponds to a specific switching rule. The application icon to be switched to, i.e., the second icon, can be determined by the electronic device or by the server.
[0006] Implementing the methods described in the first aspect allows for switching application icons displayed on electronic devices without requiring developers to set up new versions of the application software package or updating the application on the electronic device. This shortens the switching cycle, reducing the time and manpower costs associated with switching application icons and improving convenience. It also eliminates the need to pre-install multiple application icons in the software application package. Furthermore, it allows switching to application icons uploaded by developers in real-time, increasing the novelty of the switched application icons, improving the efficiency and flexibility of switching, and enhancing the user experience of changing application icons.
[0007] In conjunction with the first aspect, in one possible implementation, sending the first message to the server includes: responding to the first event by sending a second message to the server, the second message being used to request the server to send icon information of multiple icons of the first application to the electronic device, the icon information of the multiple icons of the first application including the icon information of the second icon, the icon information including one or more of the following: icon identification ID, icon upload time, whether it is a default icon; receiving the icon information of the multiple icons of the first application; and sending the first message to the server based on the first event and the icon information of the multiple icons of the first application.
[0008] In some implementations, the first event triggers calls to interfaces a and b, or interfaces d and b, provided by the application marketplace service. The electronic device can obtain the icon information of the first application's icon stored on the server, determine the icon to be switched to as the second icon based on the rules corresponding to the first event and the first time, and then request the server to send a first resource package including the second icon to the electronic device. In this way, the electronic device can determine different icons to be switched based on different first events, resulting in a richer user experience.
[0009] In conjunction with the first aspect, in one possible implementation, the second icon is the application icon with the latest upload time among multiple icons of the first application stored on the server.
[0010] In conjunction with the first aspect, in one possible implementation, the first event includes one or more of the following: the current date is a preset date, the current time is a preset time, and the electronic device launches the first application for the first time on that day.
[0011] For example, the first event is the first opening of the first application, and the switching rule is rule 1. When the electronic device first opens the first application on November 11th, it can determine the second icon, which has the most recent upload time. This can be achieved either by the electronic device receiving icon information from the server regarding the first application's icon and determining the second icon from it, or by the server querying the first application's icon and determining the second icon from it. This way, on a specific date or time, the device can attract the user's attention to the first application, increasing the probability of the user using it.
[0012] In conjunction with the first aspect, in one possible implementation, the second icon is the default application icon among a plurality of icons of the first application stored in the server.
[0013] In conjunction with the first aspect, in one possible implementation, the first event includes one or more of the following: the current date is not a preset date, the current time is not a preset time, and the electronic device is not launching the first application for the first time on that day.
[0014] For example, the first event is when the shopping app is not opened for the first time, and the switching rule is rule 2. When the electronic device first opens the first app on February 18th, it can determine the default app icon (second icon). This can be achieved either by the electronic device receiving icon information from the server regarding the first app's icon and determining the second icon from that information, or by the server querying the first app's icon and determining the second icon from it. This allows the default app icon to be restored at a non-specific date and time, enhancing the user's recall of the first app.
[0015] In conjunction with the first aspect, in one possible implementation, sending the first message to the server includes: responding to the first event by sending a third message to the server, the third message being used to request the server to send preview information of multiple icons of the first application to the electronic device, the preview information of the multiple icons of the first application including preview information of the second icon; receiving and displaying the preview information of the multiple icons of the first application; receiving an operation applied to the preview information of the second icon, and sending the first message to the server.
[0016] In conjunction with the first aspect, in one possible implementation, the first event includes: the electronic device receiving an operation from a user to switch the displayed icon of the first application.
[0017] In some implementations, the first event triggers a call to the interfaces provided by the application marketplace service, such as interfaces f and b. The electronic device can obtain preview information of the icon of the first application stored on the server and receive the user's operation on the preview information of the second icon. Then, the electronic device can determine that the application icon to be switched to is the second icon. Next, the electronic device can request the server to send a first resource package including the second icon to the electronic device. In this way, the user can choose the application icon to switch to, increasing the user's initiative in using the first application and improving the user experience.
[0018] In conjunction with the first aspect, in one possible implementation, before switching the first icon of the first application displayed based on the first resource package to the second icon, the method further includes: unpacking the first resource package to obtain the second icon, a first configuration file, and a first certificate signature; determining that the electronic device has the ability to switch the icon of the first application to the second icon based on the permissions of the first application contained in the first configuration file, the compatibility of the electronic device, and developer information; and determining the source and integrity of the first resource package based on the first certificate signature.
[0019] In some implementations, the application permissions in the configuration file are used to declare the device functions or resources that the electronic device needs to access when running the application. The electronic device compatibility settings in the configuration file indicate on which electronic devices the application can run normally, specifically including supported device types, operating system versions, and hardware requirements. Certificate signing is used to ensure the origin and integrity of the application's resource packages. This improves the security of switching application icons, making the process secure and reliable.
[0020] In conjunction with the first aspect, in one possible implementation, the electronic device includes an application market service, and sending the first message to the server specifically includes: sending the first event to the application market service through the first application; sending the first message to the server through the application market service; and receiving the first resource package specifically includes: receiving the first resource package through the application market service.
[0021] In some implementations, the first application can determine the app icon to be switched, or the app store service can determine the app icon to be switched.
[0022] In conjunction with the first aspect, in one possible implementation, the electronic device includes a package management service. The switching of the first icon of the first application displayed based on the first resource package to the second icon specifically includes: obtaining the second icon from the first resource package through the package management service; and switching the icon of the first application displayed to the second icon. In this way, the electronic device can obtain the second icon obtained by verifying and splitting the first resource package.
[0023] In conjunction with the first aspect, in one possible implementation, the server is used to receive the software installation package of the first application sent by the application server of the first application, and distribute the software installation package of the first application to the electronic device. The application resource package mentioned in this application embodiment is different from the application software package. In this application, the application resource package is only used to switch application icons and cannot be used to update the application. That is, the application resource package does not contain the application software package.
[0024] Secondly, this application provides a method for switching application icons, characterized in that the method is applied to a server, and the method includes: receiving a second icon of an uploaded first application; generating a first resource package containing the second icon, wherein the first resource package does not contain a software installation package of the first application; receiving a first message sent by an electronic device; and sending the first resource package to the electronic device.
[0025] Implementing the second aspect described allows for switching application icons displayed on electronic devices without requiring developers to set up new versions of the application software package or updating the application on the electronic device. This shortens the switching cycle, reducing time and manpower costs associated with switching application icons and improving convenience. It also eliminates the need to pre-install multiple application icons in the software application package. This allows switching to application icons uploaded by developers in real-time, increasing the novelty of the switched application icons, improving efficiency and flexibility, and enhancing the user experience of changing application icons.
[0026] In conjunction with the second aspect, in one possible implementation, generating the first resource package containing the second icon specifically includes: packaging and signing the second icon to generate the first resource package. This improves the security of the first resource package, making the subsequent application icon switching process safe and reliable.
[0027] In conjunction with the second aspect, in one possible implementation, before sending the first resource package to the receiving electronic device via the first message, the method further includes: receiving the second message sent by the electronic device and sending icon information of multiple icons of the first application to the electronic device, the icon information including one or more of the following: icon ID, icon upload time, whether it is a default icon, and the icon information of the multiple icons of the first application including the icon information of the second icon.
[0028] In some implementations, the first event triggers calls to interfaces a and b, or interfaces d and b, provided by the application marketplace service. The server sends icon information of the first application's icon to the electronic device. Based on the first event and the rules corresponding to the first time, the electronic device determines the icon to be switched to as the second icon. Then, the server can send a first resource package including the second icon to the electronic device. In this way, different icons to be switched can be determined according to different first events, resulting in a richer user experience.
[0029] In conjunction with the second aspect, in one possible implementation, the second icon is the application icon with the most recent upload time among multiple icons of the first application stored on the server. This can attract user attention to the first application on a specific date or time, increasing the probability of users using the first application.
[0030] In conjunction with the second aspect, in one possible implementation, the second icon is the default application icon among multiple icons of the first application stored on the server. This allows the user to revert to the default application icon at non-specific dates and times, enhancing the user's recall of the first application.
[0031] In conjunction with the second aspect, in one possible implementation, before sending the first resource packet to the receiving electronic device via the first message, the method further includes: receiving the third message sent by the electronic device and sending preview information of multiple icons of the first application to the electronic device, wherein the preview information of the multiple icons of the first application includes preview information of the second icon.
[0032] In some implementations, the first event triggers a call to an interface provided by the application marketplace service, such as interface f and interface b. The server sends a preview of the icon of the first application to the electronic device. The electronic device then receives the user's action on the preview of the second icon and determines that the second icon is the application to be switched to. The server then sends a first resource package including the second icon to the electronic device. In this way, the user can choose which application icon to switch to, increasing the user's initiative in using the first application and improving the user experience.
[0033] In conjunction with the second aspect, in one possible implementation, the server is used to receive the software installation package of the first application sent by the application server of the first application, and distribute the software installation package of the first application to the electronic device. That is, the server is distinct from the server of the first application; it is the server of the application market, used to manage application distribution. In this embodiment, the server can integrate the functions of managing application listing and managing application icons into the application market server, making it more convenient for developers to update application icons.
[0034] Thirdly, this application provides an electronic device including a memory, a processor, and computer instructions stored in the memory, wherein the processor executes the computer program to implement the method described in the first aspect or any embodiment of the first aspect.
[0035] Fourthly, this application provides a server including a memory, a processor, and computer instructions stored in the memory, the processor executing the computer program to implement the method of the second aspect or any embodiment of the second aspect described above.
[0036] Fifthly, this application provides a communication system including an electronic device and a server. The electronic device is used to implement the method of the first aspect or any embodiment of the first aspect described above. The server is used for the method of the second aspect or any embodiment of the second aspect described above.
[0037] In a sixth aspect, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method described in the first aspect or any embodiment of the first aspect, or the second aspect or any embodiment of the second aspect.
[0038] In a seventh aspect, embodiments of this application provide a computer program product comprising computer instructions that, when executed by a processor, implement the method described in the first aspect or any embodiment of the first aspect, or the second aspect or any embodiment of the second aspect.
[0039] The beneficial effects of aspects three through seven can be referenced from the beneficial effects of aspect one above. Attached Figure Description
[0040] Figure 1A A schematic diagram illustrating the process of switching to a new application using method one, as provided in an embodiment of this application;
[0041] Figure 1B A schematic diagram illustrating the process of switching to a new application via method two, as provided in an embodiment of this application;
[0042] Figure 2 This is a schematic diagram of an application scenario provided by an embodiment of this application;
[0043] Figure 3 This is a flowchart illustrating a method for switching application icons provided in an embodiment of this application;
[0044] Figure 4 This is a schematic diagram of the multi-sided interaction process of the method for switching application icons provided in the embodiments of this application;
[0045] Figure 5 A schematic diagram of the interaction flow executed by the server 200 in the method for switching application icons provided in this application embodiment;
[0046] Figure 6A A schematic diagram of the user interface for developers to manage application icons in the server 200 provided in this embodiment of the application;
[0047] Figure 6B This application provides a schematic diagram of the file structure of an HSP resource package.
[0048] Figure 6C A schematic diagram of the file structure of an HSP signature resource package provided in an embodiment of this application;
[0049] Figure 7 A schematic diagram of the interaction flow executed by the electronic device 100 in the method for switching application icons provided in the embodiments of this application;
[0050] Figure 8 This is a schematic diagram illustrating the interaction between the first application and the application market service provided in an embodiment of this application.
[0051] Figure 9This is a flowchart illustrating a method for switching application icons provided in an embodiment of this application;
[0052] Figure 10 A schematic diagram of the interaction flow of the method for switching application icons provided in an embodiment of this application;
[0053] Figure 11 A schematic diagram of the hardware structure of an electronic device 100 provided in an embodiment of this application;
[0054] Figure 12 A schematic diagram of the hardware structure of a server 200 provided in an embodiment of this application;
[0055] Figure 13 This is a schematic diagram of the software structure of an electronic device 100 provided in an embodiment of this application. Detailed Implementation
[0056] The technical solutions of the embodiments of this application are described below with reference to the accompanying drawings. In the description of the embodiments of this application, the terminology used in the following embodiments is for the purpose of describing specific embodiments only and is not intended to limit the application. As used in the specification and appended claims of this application, the singular expressions "a," "the," "the," "the," and "this" are intended to also include expressions such as "one or more," unless the context clearly indicates otherwise. It should also be understood that in the following embodiments of this application, "at least one" and "one or more" refer to one or more (including two). The term "and / or" is used to describe the relationship between related objects, indicating that three relationships can exist; for example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship.
[0057] References to "one embodiment" or "some embodiments" in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized. The term "connection" includes direct connections and indirect connections, unless otherwise stated. "First" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated.
[0058] In the embodiments of this application, the words "exemplarily" or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "exemplarily" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design solutions. Specifically, the use of the words "exemplarily" or "for example" is intended to present the relevant concepts in a specific manner.
[0059] First, let me introduce some of the terms and concepts involved in this application.
[0060] An application name is a textual identifier for an application, displayed on an electronic device to help users search for and download it. As a crucial identifier, it helps distinguish different applications. Application names should be concise, unique, and legitimate.
[0061] An application icon is a graphic symbol displayed on an electronic device. It helps users find and launch applications on their devices. During application development, various icon sizes can be set, such as 16x16 pixels, 64x64 pixels, etc.; different icon styles can also be set, such as text-based, animal-based, or marker-based styles.
[0062] App stores, as application distribution platforms, are the primary channels for downloading applications to electronic devices. App stores can be used for application distribution, updates, management, and more. Specifically, application distribution refers to the app store receiving applications uploaded by developers, reviewing them, and then listing them on the app store for subsequent download and installation on electronic devices. Application updates refer to automatically updating applications through the app store or updating applications with user permission. Application management refers to uninstalling, backing up, or restoring applications through the app store. App stores can be provided by electronic device manufacturers or by third parties. App stores can be presented to users as applications on electronic devices for their use. For example, electronic devices can view files uploaded to the app store, such as application A, in the user interface. If the app store is provided by the electronic device manufacturer, it can be a system application on the electronic device. If the app store is provided by a third party, it can be a third-party application on the electronic device.
[0063] An application package (also known as a software installer) can be a compressed file containing all the files, resources, and metadata of an application, used by app stores to distribute applications and by electronic devices to download applications. For example, an electronic device can receive an application package from an app store, unzip the application package, and download and install the application corresponding to that application package.
[0064] Developers can create applications, and app stores can list these applications for download and installation on electronic devices. Electronic devices can download applications from app stores, and the application's name and icon will be displayed in the device's user interface.
[0065] Among these, the application name serves as a crucial identifier, and developers generally don't change it arbitrarily. The application icon, however, directly impacts the user's visual experience and usage expectations. To attract user attention and enhance memorability, developers can periodically create new application icons, which electronic devices can then switch between.
[0066] Currently, electronic devices can switch to new app icons in the following two ways:
[0067] Method 1: Switch to displaying a new app icon by updating the app.
[0068] For example, the specific process of Method 1 can be found by referring to Figure 1AThe diagram illustrates the process. First, a developer creates an older version (e.g., version 1.0) of application A. The version 1.0 application package includes an icon (icon1), and the developer uploads version 1.0 of application A to the app store. The app store lists version 1.0 of application A. Electronic devices download and install version 1.0 of application A from the app store, and the device displays icon (icon1). Next, the developer creates a new version (e.g., version 2.0) of application A. The version 2.0 application package includes a new icon (icon2), and the developer uploads version 2.0 of application A to the app store. The app store lists version 2.0 of application A. Electronic devices update application A by downloading and installing version 2.0 of application A from the app store, and the device displays the new icon (icon2). This allows the displayed application icon to switch from the original icon (icon1) to the new icon (icon2).
[0069] However, method one requires developers to create a new application package and then re-upload it to the app store for review. Only after the review is approved can the app store list the new version of the application. This may consume more development resources and the review time may be longer, resulting in a longer cycle for changing the application icon and higher labor and time costs.
[0070] Method 2: Switch to displaying a new application icon by pre-setting the new application icon in the application package.
[0071] For example, the specific process of method two can be found by referring to Figure 1B The diagram illustrates the process. First, a developer creates application A and pre-sets two icons in the application's software package: icon1 and icon2. Then, the developer uploads application A to an app store. Application A is then listed on the app store. Next, the electronic device downloads and installs application A from the app store, initially displaying icon1 by default. Subsequently, the electronic device can, based on a pre-defined event for switching application icons, extract the pre-set icon2 from the downloaded application A and switch the displayed application icon to icon2. This also achieves the goal of switching the displayed application icon from icon1 to the new icon2.
[0072] However, Method Two requires developers to pre-set multiple application icons that may be switched later during the development process. Furthermore, after an application is downloaded, the electronic device can only switch between the multiple application icons included in the downloaded application. If the developer wants to set additional application icons beyond the pre-set ones, they need to use Method One. Thus, developers cannot provide new application icons to the electronic device in real time using Method Two; the number of application icons available for the electronic device to switch between is limited, making the application icon switching process restrictive and inflexible.
[0073] To address the problems described above, this application provides a method for switching application icons. In this method, an application market server receives uploaded application icons and generates a resource package based on those icons. When an electronic device triggers the application icon switching, it sends a request to the application market server. The application market server then responds to the request and sends the resource package to the electronic device. Finally, the electronic device switches the application icon based on the received resource package.
[0074] It is worth noting that, in this embodiment, the application market is provided by the electronic device manufacturer as an example. In this case, the server of the application market and the server corresponding to the operating system of the electronic device can be the same server or belong to the same server cluster.
[0075] By implementing the above method, the application icon switching method provided in this application eliminates the need for developers to create new application packages and for multiple application icons to be pre-installed in the application packages. This reduces the time and manpower costs of switching application icons, allows for the provision of new application icons at any time, improves the flexibility of application icon switching, and enhances the user experience of perceiving changes in application icons.
[0076] The following describes the application scenarios related to the method for switching application icons provided in the embodiments of this application.
[0077] Figure 2 An example application scenario related to this application is illustrated below. The application scenario is illustrated by changing the application icon of application B from icon3 to icon4.
[0078] like Figure 2 As shown, first, the developer develops application B. The developer can set an icon (icon3) in the application B package. Furthermore, during the development of application B, the developer integrates an app store service provided by the electronic device, such as Storekit. Storekit provides an interface for application B to connect to the app store's server. Then, the developer uploads application B to the app store. Next, the electronic device can download and install application B from the app store. After installation, the electronic device can display the icon (icon3).
[0079] After a developer wants application B on an electronic device to display a new application icon, the developer can upload the application B icon (icon4) to the app store's server. Upon receiving the icon (icon4), the app store's server can generate a resource package for application B based on it. Specifically, it can package the icon (icon4) into a Harmony Shared Package (HSP) resource package. More specifically, the app store's server can also sign the icon (icon4) package to generate a signed HSP resource package.
[0080] After the electronic device triggers the switching of application icon B, it can obtain the resource package for application B from the application market's server. Finally, based on the resource package for application B, the displayed icon icon3 is switched to icon icon4.
[0081] In the embodiments of this application, Figure 2 The application scenarios shown are for illustrative purposes only and are not intended to limit the scope of the application.
[0082] For a more detailed understanding Figure 2 As shown in the application scenario, the following describes a method flow for switching application icons provided by an embodiment of this application.
[0083] Figure 3 An exemplary flowchart illustrating a method for switching application icons provided in an embodiment of this application is shown. For ease of understanding, subsequent embodiments will... Figure 3 The server for the application marketplace shown is referred to as server 200. The method includes:
[0084] S301. Electronic device 100 displays the first icon of the first application.
[0085] The first application mentioned above can be an application installed on the electronic device 100. The first application can be a system application on the electronic device 100, or it can be a third-party application. For example, the first application can be the one described above. Figure 2 The example shown is application B. The first icon is the application icon for the first application. For example, the first icon could be one of the above... Figure 2 The icon for application B shown is icon3.
[0086] Before implementing S301, developers can create a first application and upload it to an app store. The app store will review and list the first application. Electronic device 100 can then download and install the first application from the app store. After installation, electronic device 100 can display the first application's icon.
[0087] In some implementations, the first icon can be the default application icon for the first application after it has been downloaded and installed. That is, during the development of the first application, a first icon can be set in the application's software installation package for display on the electronic device 100 after the application is downloaded. In this embodiment, the application's software installation package may pre-install one application icon for display after installation; generally, multiple application icons are not pre-installed.
[0088] The first icon can also be the application icon obtained after the last execution of the application icon switching provided in the embodiments of this application.
[0089] It is worth noting that during the development of the first application, an application market service was integrated into the application software package of the first application. The application market service is a functional service provided by the operating system of the electronic device 100. It enables the electronic device 100 to interact with the server 200 through the first application and to switch the displayed icon of the first application.
[0090] After executing S301, you can execute S302.
[0091] S302. Electronic device 100 detects a first event, the first event being used to switch the icon of the first application being displayed.
[0092] The aforementioned first event can be set by the developer during the development of the first application. The developer can set the first event based on people's daily habits and common sense regarding the use of electronic devices 100. For example, the first event includes one or more of the following: event a, the current date is a preset date; event b, the current time is a preset time; event c, the first application is launched for the first time on the same day; event d, the current date is not a preset date; event e, the current time is not a preset time; event f, the first application is not launched for the first time on the same day; event g, receiving an operation from the user to switch the displayed icon of the first application. In this embodiment, the above-mentioned first event is only illustrative; the first event may also include other more or fewer events, which are not limited thereto.
[0093] When electronic device 100 detects a first event, it can determine the switching rule corresponding to the first event, thereby triggering the switching of the icon of the first application. Different types of first events trigger different rules for switching the icon of the first application. Similarly, the switching rule corresponding to the first event can also be set by the developer during the development of the first application. For example, the switching rule corresponding to the first event includes one or more of the following: Rule 1: Switch the icon of the first application to the application icon with the latest upload time among the multiple first application icons stored in server 200; Rule 2: Switch the icon of the first application to the default application icon among the multiple first application icons stored in server 200. The default application icon can refer to the icon of the first application displayed in electronic device 100 after the first download of the first application or after updating the first application; Rule 3: Switch the icon of the first application to the application icon selected by the user among the multiple first application icons stored in server 200. In this embodiment, the above-mentioned switching rules corresponding to the first event are only illustrative examples, and the switching rules may include other more or fewer rules, which are not limited thereto.
[0094] The following example illustrates the correspondence between the first event and the switching rule, without limitation.
[0095] When the first event is one or more of events a, b, or c, the switching rule corresponding to the first event is Rule 1. For example, if the first event is opening the shopping app for the first time on November 11th, the switching rule is Rule 1. The icon of the shopping app with the latest upload time stored in server 200, i.e., the icon of the shopping app to be switched to, is set by the developer with the idea that November 11th is a shopping promotion date and to remind users to use the shopping app on November 11th. In this way, users' attention to the first app can be attracted on a specific date or time, increasing the probability of users using the first app.
[0096] When the first event is one or more of events d, e, or f, the switching rule corresponding to the first event is Rule 2. For example, if the first event is opening the shopping app for the 5th time on February 18th, the switching rule is Rule 2. That is, the icon of the shopping app to be switched to is the default app icon stored in server 200. This allows the app to revert to the default icon on non-specific dates and times, enhancing user recall of the first app.
[0097] When the first event is event g, the switching rule corresponding to the first event is rule 3. This allows users to choose which application icon to switch to, increasing user initiative in using the first application and improving user experience. Furthermore, when the first event is event g, the electronic device 100 can check whether the first event has been triggered again after a certain period. This ensures that users can continuously observe the self-selected application icon, preventing them from switching to other application icons after initially selecting one, thus reducing user discomfort.
[0098] In this embodiment of the application, the correspondence between the first event and the switching rule is only illustrative. Developers may also set the correspondence between the first event and the switching rule based on other considerations, and there are no limitations on this.
[0099] In one possible implementation, electronic device 100 can execute S302 through a first application. Specific details regarding the internal interactions of electronic device 100 executing S302 can be found below. Figures 4 to 7 The relevant content will not be elaborated here.
[0100] After executing S302, you can execute S303.
[0101] In one possible implementation, after executing S302, optional step S302-1 can be executed.
[0102] S302-1. Electronic device 100 determines that the icon of the first application to be switched is the second icon.
[0103] When the first event includes one or more of the events a, b, c, d, e, and f mentioned above, the icon of the first application to be switched can be determined to be the second icon. Specifically, firstly, the electronic device 100 sends a second message to the server 200 based on the first event. The second message requests the server 200 to send icon information of multiple icons of the first application to the electronic device 100. The icon information may include one or more of the following: icon identity document (ID), icon upload time, and whether it is the default icon. The icon information of the multiple icons of the first application includes the icon information of the second icon. Next, after receiving the second message, the server 200 queries the icons of the first application stored on the server 200 and sends the icon information of multiple icons of the first application to the electronic device 100. Then, the electronic device 100 receives the icon information of the multiple icons of the first application. Finally, based on the first event and the icon information of the multiple icons of the first application, the electronic device 100 determines that the icon of the first application to be switched is the second icon. In other words, if the first event is event a, and the second icon is the icon with the latest upload time among multiple icons in the first application, then the electronic device 100 can determine the icon of the first application to be switched to as the second icon based on event a, the switching rules corresponding to event a, and the icon information of the second icon.
[0104] When the first event includes the aforementioned event g, after executing S302, the electronic device 100 can also determine that the icon of the first application to be switched is the second icon. Specifically, firstly, the electronic device 100 sends a third message to the server 200 based on the first event. The third message requests the server 200 to send preview information of multiple icons of the first application to the electronic device 100. The preview information of the multiple icons of the first application includes preview information of the second icon. Next, after receiving the third message, the server 200 queries the icons of the first application stored in the server 200 and sends the preview information of the multiple icons of the first application to the electronic device 100. Then, the electronic device 100 receives and displays the preview information of the multiple icons of the first application. Finally, the electronic device 100 receives the operation applied to the preview information of the second icon and determines that the icon of the first application to be switched is the second icon.
[0105] For example, electronic device 100 receives a long press operation on icon 3 of application B and displays a "Switch Icon" control. The electronic device receives a click operation on the "Switch Icon" control and detects event g in the first event. Based on event g, electronic device 100 requests server 200 to send preview information of multiple icons of application B stored in server 200, including preview information of icon 4. After receiving the preview information of multiple icons of application B, electronic device 100 displays preview information of multiple icons of application B including preview information of icon 4. The electronic device receives a click operation on the preview information of icon 4, selects icon 4, and determines that the icon of application B to be switched to is icon 4.
[0106] In the embodiments of this application, the process of switching application icons triggered by user operation is only an illustrative example and may include more or fewer steps, which is not limited thereto.
[0107] In one possible implementation, electronic device 100 can execute S302-1 through a first application and an application market service. Specific details regarding the internal interactions of electronic device 100 executing S302-1 can be found below. Figures 4 to 7 The relevant content will not be elaborated here.
[0108] Optionally, S303 can be executed after S302-1.
[0109] S303. Electronic device 100 sends a first message to server 200, the first message being used to request server 200 to send a first resource packet to electronic device 100.
[0110] In some implementations, electronic device 100 can execute S303 after executing S302, or it can execute S302-1 after executing S303. That is, S303 can be executed in the following two situations: Situation 1: When electronic device 100 detects the first event, but is unsure of the specific icon of the first application to be switched to. Situation 2: When electronic device 100 detects the first event and determines that the icon of the first application to be switched to is the second icon.
[0111] Although in this embodiment, the purpose of the first message is to request the server 200 to send a first resource package to the electronic device 100, based on the two situations described above, the purpose of the first message can also be divided into two specific types: In execution situation 1, S303, the purpose of the first message is purpose m1, that is, requesting the server 200 to determine the application icon to be switched based on the switching rules corresponding to the first event, and send the first resource package containing the determined application icon to the electronic device 100. In execution situation 2, S303, the purpose of the first message is purpose m2, that is, requesting the server 200 to send the first resource package containing the second icon to the electronic device 100.
[0112] In other words, in scenario 1, the specific application icon to be switched to is determined by server 200. In scenario 2, the specific application icon to be switched to is determined by electronic device 100.
[0113] In one possible implementation, electronic device 100 can execute S303 via an application marketplace service. Specific details regarding the internal interactions of electronic device 100 executing S303 can be found below. Figures 4 to 7 The relevant content will not be elaborated here.
[0114] After executing S303 in scenario 2, server 200 can read the first resource packet containing the second icon and send the first resource packet to electronic device 100. Then electronic device 100 can execute S304.
[0115] After executing S303 under case 1, execute optional step S303-1.
[0116] S303-1. Server 200 queries the icon of the first application stored in Server 200.
[0117] After the first application is listed on the app store, server 200 can receive and store the icon of the first application uploaded by the developer at any time. Server 200 can also package the icon of the first application to generate and store a resource package for the first application, such as an HSP resource package. Furthermore, it can also package and sign the icon of the first application to generate and store a resource package for the first application, such as an HSP signed resource package. In other words, in this embodiment, server 200 has the ability to package applications based solely on their icons, unlike the ability to package all files of an application. The HSP resource package, as a type of data package, can contain code, C++ libraries, resources, and configuration files. HSP enables the sharing of code and resources within the application.
[0118] It is worth noting that server 200 stores template information used when generating the application's resource package, such as configuration file m1 and resource template packages (e.g., HSP template packages). The resource template package contains a resource directory m2. Configuration file m1 includes files necessary to ensure that electronic device 100 can properly use the application's resource package generated by server 200. The resource template package indicates the file types and contents contained in the application's resource package. Server 200 can package and sign the icon of the first application based on configuration file m1 and the resource template package to generate the resource package for the first application.
[0119] In this embodiment, the application's resource package may include a resource directory (e.g., a resource directory), configuration files (e.g., a provisioning file), and a certificate signature. The resource directory stores the application's resource files (e.g., images, audio files, etc.), and the configuration file describes the application's permissions, electronic device compatibility, developer identity, and other information. The application permissions in the configuration file declare the device functions or resources that an electronic device needs to access when running the application. The electronic device compatibility in the configuration file indicates on which electronic devices the application can run normally, specifically including supported device types, operating system versions, and hardware requirements. The certificate signature ensures the source and integrity of the application's resource package.
[0120] For example, such as Figure 3 As shown, before executing step S302, the developer can upload the application icon of the first application, such as the second icon, to server 200. Server 200 can package and sign the second icon to generate a first resource package based on the configuration file m and the resource template package. The first resource package may contain a first resource directory, a first configuration file, and a first certificate signature. The first resource directory includes the second icon, the first configuration file includes the first application permissions, electronic device compatibility, and developer information, and the first certificate signature is used to ensure the legality of the source and integrity of the first resource package.
[0121] It is understood that the application resource package mentioned in the embodiments of this application is different from the application software package. In this application, the application resource package is only used to switch the application icon and cannot realize application updates. That is, the application resource package does not contain the application software package.
[0122] After executing S303 in Case 1, server 200 can query the icon of the first application stored in server 200, and determine the icon of the first application to be switched to as the second icon based on the switching rules of the first event. Then, it can read the first resource packet containing the second icon. Server 200 then sends the read first resource packet to electronic device 100. Electronic device 100 can then execute S304.
[0123] S304. Electronic device 100 receives the first resource packet sent by server 200.
[0124] In one possible implementation, electronic device 100 can execute S304 via an application marketplace service. Specific details regarding the internal interactions of electronic device 100 executing S304 can be found below. Figures 4 to 7 The relevant content will not be elaborated here.
[0125] After executing S304, you can execute S305.
[0126] S305. Electronic device 100 switches the first icon of the first application to a second icon based on the first resource package.
[0127] After receiving the first resource packet, the electronic device 100 extracts the second icon from the first resource packet and then switches the displayed first icon to the second icon. Optionally, the electronic device 100 can delete the first icon after switching to displaying the second icon.
[0128] It is worth noting that the version of the first application when the electronic device 100 displays the first icon is the same as the version of the first application when the electronic device 100 displays the second icon. This is because during the process of switching application icons provided in this application embodiment, the electronic device 100 did not receive a new software installation package for the first application, and therefore, the electronic device 100 did not update the first application.
[0129] In some implementations, the internal interactions of the electronic device during the execution of S305 may include S305a, S305b, and S305c. Specifically, S305a involves the electronic device 100 initiating an icon replacement for the first application through the application marketplace service to the package management service. S305b involves the electronic device 100 verifying and unpacking the first resource package through the package management service to obtain a second icon. S305c involves the electronic device 100 displaying the second icon while concealing the first icon. Specific details regarding the internal interactions of the electronic device 100 during the execution of S305 can be found below. Figures 4 to 7 The relevant content will not be elaborated here.
[0130] Implementing the above method allows for switching application icons displayed on electronic devices without requiring developers to set up new versions of the application software package or the electronic devices to update the application. This results in a shorter switching cycle, reducing the time and manpower costs associated with switching application icons and improving convenience. It also eliminates the need to pre-install multiple application icons in the software application package. Furthermore, it allows switching to application icons uploaded by developers in real time, increasing the novelty of the switched icons, improving efficiency and flexibility, and enhancing the user experience of changing application icons.
[0131] In some implementations, after executing S305, the electronic device 100 can detect the first event again and send a fourth message to the server 200. This fourth message requests the server 200 to send a second resource package to the electronic device 100, the second resource package including a third icon of the first application. The electronic device 100 receives the second resource package sent by the server 200 in response to the fourth message. The electronic device 100 can switch the displayed second icon of the first application to a third icon based on the second resource package. The version of the first application displayed when the second icon is shown is the same as the application version displayed when the third icon is shown. In other words, the method for switching application icons provided in this application embodiment can be executed multiple times, achieving multiple switching of application icons.
[0132] The following is combined Figure 4 This application describes the interaction flow of the method for switching application icons provided in its embodiments. Figure 4 The application market in the context is considered distinct from the application distribution platform of Electronic Device 100.
[0133] Figure 4 An exemplary illustration shows a multi-sided interactive flow diagram of a method for switching application icons provided in an embodiment of this application.
[0134] S401. Server 200 receives the first application uploaded by the developer.
[0135] Specifically, server 200 can receive the first application based on the developer's actions of creating, developing, or uploading the first application.
[0136] S402. Server 200 will list the first application on the application market.
[0137] In some implementations, after receiving the first application, server 200 can review it to determine whether it meets the requirements for listing on an app store. If it meets the requirements, S403 is executed. If it does not meet the requirements, the developer is informed that they can modify the first application according to the requirements and reapply for review of the modified application.
[0138] S403. Electronic device 100 downloads and installs the first application from the application market.
[0139] In some implementations, after the first application is listed on the application market, the electronic device 100 downloads and installs the first application from the application market. After installation, the electronic device 100 can display the first icon of the first application. For details, please refer to the relevant description of S301 above, which will not be repeated here.
[0140] S404. Server 200 receives the icon of the first application uploaded by the developer.
[0141] In some implementations, after the first application is listed on the app store, the developer can set and upload the icon of the first application to the server at any time. The icon uploaded by the developer for the first application includes a second icon.
[0142] S405. Server 200 generates a resource package based on the icon of the first application.
[0143] In some implementations, after receiving the icon of the first application uploaded by the developer, the server 200 can package the icon of the first application to generate a resource package, or it can package the icon of the first application and sign it to generate a signed resource package. For details, please refer to the relevant description of S303-1 above, which will not be repeated here.
[0144] S406. Electronic device 100 requests server 200 to send a first resource packet containing a second icon.
[0145] In some implementations, electronic device 100 can detect the first event before executing S406. Then, electronic device 100 can request server 200 to send the first resource packet. For details, please refer to the relevant descriptions of S302-S303 above, which will not be repeated here.
[0146] S407. Server 200 sends the first resource packet to electronic device 100.
[0147] For details, please refer to the above description of S304, which will not be repeated here.
[0148] S408. Electronic device 100 switches the first icon of the first application to the second icon.
[0149] For details, please refer to the above description of S305, which will not be repeated here.
[0150] based on Figure 4 The interactive process shown does not require updating the application or pre-setting multiple application icons in the application package. When the electronic device 100 needs to switch the displayed application icon, it can directly obtain a resource package containing the application icon from the server 200. The interaction between the electronic device 100 and the server 200 more conveniently and quickly realizes the method for switching application icons provided in this application embodiment.
[0151] For a more detailed understanding Figure 4 The interactive schematic diagram shown below illustrates several more specific interactive processes during the method of switching application icons provided in this application embodiment.
[0152] Figure 5 An exemplary diagram illustrates the interaction flow executed by server 200 in a method for switching application icons.
[0153] S501. Server 200 allows developers to create the first application.
[0154] Specifically, server 200 can create a new first application based on the developer's actions, and the application name can also be set. For example, the application name of the first application can be application B.
[0155] S502. Server 200 receives the first application software package uploaded by the developer.
[0156] In some implementations, developers can code a first application software package to develop the first application. The first application integrates an application market service. In this embodiment, the application market service is a functional service provided by the operating system of the electronic device 100, enabling the electronic device 100 to interact with the server 200 through the first application and to switch the displayed icon of the first application.
[0157] For example, the application market service provides functional interfaces for the first application, including but not limited to: interface a, querying icon information of the first application's icon stored in server 200; interface b, switching the icon of a specified first application; and interface c, restoring the default icon of the first application. In this embodiment, the functional interfaces provided by the application market service are only illustrative and may include more or fewer functional interfaces. For example, the functional interfaces may also include interface d, determining the icon of the first application to be switched; interface e, requesting server 200 to determine the icon of the first application to be switched; and interface f, querying preview information of the first application's icon stored in server 200. This is not limited.
[0158] For example, when developing the first application, a developer can set the first event as event a and the switching rule as rule 1. This first event can be configured to trigger the first application to call interfaces d and b. If the electronic device 100 detects event a after installing the first application, the first application can call interface d to determine the icon of the first application to be switched and obtain a resource package containing that icon. Then, the first application can call interface b to switch the icon of the first application.
[0159] It's worth noting that different types of first events can trigger different interface calls, but the purpose of these calls is always to switch the icon of the first application being displayed. The executing entity or method for determining the icon of the first application to be switched may differ depending on the type of first event, thus the interfaces called may also differ. For example, if the first application determines the icon of the first application to be switched, interface a and interface b can be called; if the application market service determines the icon of the first application to be switched, interfaces d and b can be called; if the server 200 determines the icon of the first application to be switched, interfaces e and b can be called; if the electronic device 100 determines the icon of the first application to be switched based on user operation, interfaces f and b can be called. For details, please refer to the following... Figure 7 A detailed description of it will not be elaborated here.
[0160] In the embodiments of this application, the functional interfaces provided by the application market service are only illustrative examples. More or fewer interfaces may be included, as long as the electronic device 100 can switch application icons through the functional interfaces provided by the application market service. There is no limitation on this.
[0161] S503.Server 200 will list the first application on the application market.
[0162] In some implementations, after the developer uploads the first application package, server 200 can review the first application to determine whether it meets the requirements for listing on the app store. If it meets the requirements, the first application can be listed on the app store.
[0163] S504. Server 200 receives the icon of the first application uploaded by the developer.
[0164] In some implementations, after the first application is listed on the app store, the developer can set and upload the icon for the first application to server 200 at any time. Upon receiving the uploaded icon, server 200 can review it to determine if it meets the app store's requirements. If the icon meets the requirements, the upload is successful, and server 200 can store the icon on its server.
[0165] For example, Figure 6A An example is shown of the user interface provided by server 200 for developers.
[0166] like Figure 6A As shown, the user interface 500 is provided by the server 200 to developers for managing application icons. The selected option 501, "Icon Management," and the displayed text information 502, "Application: Application B," indicate that developers can manage the application icons of Application B within the user interface 500. The user interface 500 includes: a new control 503 and an icon list 506. Optionally, the user interface 500 may also include: an input box 504 and a query control 505. The new control 503 is used by developers to upload newly set icons for Application B. For example, an electronic device can respond to a click operation on the new control 503 to upload the icon set by the developer for Application B. The input box 504 is used to input the name of the icon to be queried. The query control 505 is used to query relevant information about the icon. For example, an electronic device can receive text entered in the input box 504, such as the text "icon4," and then respond to a click operation on the query control 505 to query and display relevant information about the icon with the name "icon4." Icon list 506 is used to display information about the icons of uploaded Application B. For example, the information displayed in icon list 506 for the icons of Application B includes one or more of the following: serial number, icon ID, icon name, device type, upload time, review status, and related operations. For instance, server 200 stores an icon with serial number 1, icon ID "peter004", icon name "icon4", device type that can use the icon model "Model XX1", upload time "February 21, 2025, 19:55", and review status "Approved". Server 200 can respond to the developer's operations by viewing, updating, deleting, or revoking the icon.
[0167] S505. Server 200 packages the icon of the first application into an HSP resource package.
[0168] In some implementations, after the icon of the first application is successfully uploaded, the server 200 can combine the application information of the first application to package each icon of the first application into an HSP resource package. The server 200 can generate HSP resource packages based on template information, such as configuration file m1 and HSP template package.
[0169] For example, Figure 6B An exemplary diagram illustrating the file structure of an HSP resource package is shown. Figure 6B As shown, the HSP resource package is named "XX.hsp". The HSP resource package includes a `resources` directory. The `resources` directory stores application icons, such as an application icon named "icon4.png".
[0170] S506. Server 200 generates an HSP resource signature package by signing the HSP resource package.
[0171] In some implementations, after generating the HSP resource signature packet, server 200 can sign the HSP resource packet to obtain the HSP resource signature packet. For detailed descriptions of S505 and S506, please refer to the relevant description in S303-1 above; they will not be repeated here.
[0172] For example, Figure 6C An exemplary diagram illustrating the file structure of an HSP-signed resource package is shown. Figure 6C As shown, the HSP signing resource package is named "XXX.hsp". The HSP signing resource package includes a `resource` directory, a `module.json` file, a `pack.info` file, and a `resource.index` file. The `resource` directory stores application icons, such as an application icon named "icon4.png".
[0173] It is worth noting that, in the embodiments of this application, both the HSP resource package and the HSP signature resource package can be referred to as the application's resource package. For example, both the HSP resource package and the HSP signature resource package obtained based on the second icon can be referred to as the first resource package.
[0174] Figure 7 An interactive diagram illustrating the steps primarily performed by electronic device 100 in a method for switching application icons is provided.
[0175] S701. Electronic device 100 downloads and installs the first application from the application market.
[0176] In some implementations, after the first application is listed on the application market, the electronic device 100 can respond to user operation by downloading and installing the first application from the application market. Then, the electronic device 100 can display the first icon of the first application. For details, please refer to the relevant description of S301 above, which will not be repeated here.
[0177] S702. The first application of the electronic device 100 detects the first event and sends the first event to the application market service.
[0178] For an explanation of S702, please refer to the above description of S302, which will not be repeated here.
[0179] S703. The application market service request server 200 of the electronic device 100 sends the icon information of the icon of the first application stored in the server 200 to the electronic device 100.
[0180] For example, in Figure 7 The process shown is illustrated using the example of the first event triggering calls to interfaces a and b provided by the application marketplace service.
[0181] In some implementations, after receiving the first event, the application market service triggers a call to the functional interface provided for the first application, such as interface a. Then, the application market service can send a second message to server 200, requesting server 200 to send icon information for multiple icons of the first application to the application market service. For details, please refer to the relevant description of S302-1 above, which will not be repeated here.
[0182] S704. Server 200 sends the icon information of the first application's icon to the application market service of electronic device 100.
[0183] In some implementations, after receiving the second message, server 200 can query the stored icon of the first application and read its icon information. Then, server 200 can send the icon information of the first application to the application market service.
[0184] S705. The application market service of electronic device 100 sends icon information of the icon of the first application to the first application of electronic device 100.
[0185] S706. The first application of the electronic device 100 determines that the icon of the first application to be switched is the second icon.
[0186] In some implementations, after obtaining the icon information of the first application's icon, the first application can determine the icon to be switched to as the second icon based on the first event, the switching rules corresponding to the first event, and the icon information of the first application's icon.
[0187] S707. The first application of the electronic device 100 sends the information that the application icon to be switched to is the second icon to the application market service of the electronic device 100.
[0188] S708. The application market service request server 200 of the electronic device 100 sends a first resource package containing a second icon to the electronic device 100.
[0189] In some implementations, after the application market service receives information confirming that the application icon to be switched to is the second icon, it triggers a call to the functional interface provided for the first application, such as interface b. Then, the application market service can send a first message to server 200, requesting server 200 to send a first resource package containing the second icon to the application market service. For details, please refer to the above description of S303; it will not be repeated here.
[0190] S709. Server 200 sends a first resource package containing a second icon to the application market service of electronic device 100.
[0191] In some implementations, after receiving the first message, server 200 can query the stored second icon and read the first resource package containing the second icon. Server 200 can then send the first resource package to the application market service.
[0192] S710. The application market service of electronic device 100 will send the first resource package containing the second icon to the package management service of electronic device 100.
[0193] In some implementations, after obtaining the first resource package, the application market server can call the interface provided by the package management service, such as the application icon switching interface, to send the first resource package to the package management service.
[0194] The package management service of S711. Electronic device 100 will verify and unpack the first resource package to obtain the second icon.
[0195] In some implementations, the package management service can process the first resource package after receiving it. For example, it can perform signature verification and unpacking of the first resource package. Based on the processing results, the package management service can determine whether to switch the icon of the first application to the second icon, and also determine the source and integrity of the first resource package. Specifically, the package management service can determine whether to switch the icon of the first application to the second icon based on the first application permissions, electronic device compatibility, and developer information contained in the first resource package, and can determine the legality and compliance of the source of the first resource package and its integrity based on the first certificate signature contained in the first resource package. This improves the security of switching application icons, making the process secure and reliable.
[0196] After executing S711, the icon of the first application displayed on the electronic device 100 will be changed to the second icon.
[0197] In one possible implementation, S702 to S707 above can also be replaced by the following interaction flow if the first event triggers the invocation of interfaces d and b provided by the application market service:
[0198] The application market service can receive a first event sent by the first application and the corresponding switching rule. The application market service requests the server 200 to send the icon information of the first application's icon stored on the server 200. The server 200 sends the icon information of the first application's icon to the application market service. Based on the first event, the corresponding switching rule, and the icon information of the first application's icon, the application market service determines that the icon to be switched to is the second icon.
[0199] In another possible implementation, S702 to S707 above can be replaced with the following interaction flow if the first event triggers the invocation of interfaces e and b provided by the application market service:
[0200] The application market service can receive a first event sent by the first application and the corresponding switching rule. The application market service requests the server 200 to determine the icon of the first application to be switched. For example, the application market service can send the switching rule corresponding to the first event to the server 200. Based on the received switching rule, the server 200 determines that the icon to be switched is the second icon and sends the information that the icon to be switched is the second icon to the application market service.
[0201] In another possible implementation, S702 to S707 above can be replaced with the following interaction flow if the first event triggers the invocation of interfaces f and b provided by the application market service:
[0202] The application market service can receive a first event sent by the first application. The application market service requests the server 200 to send preview information of the icon of the first application stored in the server 200. The server 200 sends the preview information of the icon of the first application to the application market service. The electronic device 100 can display the preview information of the icon of the first application. The electronic device 100 can receive an operation applied to the preview information of the second icon and send the operation information to the application market service. The application market service determines that the icon to be switched is the second icon.
[0203] In this way, not only can the electronic device 100 or the server 200 determine the application icon to be switched, but users can also choose the application icon to be switched independently, which increases user participation in the process of switching application icons and improves user experience.
[0204] It is worth noting that the icons mentioned in the embodiments of this application all refer to application icons, rather than other icons provided in the application.
[0205] Figure 8 An exemplary diagram illustrating the interaction between the first application and the application marketplace service is provided. Wherein, Figure 8 Let's take the example of the first detected event triggering calls to interfaces a and b to illustrate this.
[0206] S801, The first application calls interface a provided by the application market service.
[0207] Specifically, after detecting the first event, the first application can send the first event to the application marketplace service. Then, upon receiving the first event, the application marketplace service will trigger the use of interface a.
[0208] S802, The application market service receives the icon information of the first application sent by the server 200.
[0209] Specifically, the application market service can request server 200 to query the icon of the first application stored on server 200 via interface a. Server 200 can then obtain the icon information of the first application stored on server 200 and send it to the application market service. After receiving the icon information of the first application sent by server 200, the application market service can send the icon information of the first application to the first application. The first application can determine the icon to be switched to as the second icon based on a first event, the switching rule corresponding to the first event, and the icon information of the first application's icon, and send this determination of the icon to be switched to as the second icon to the application market service.
[0210] S803, The first application calls interface b provided by the application market service.
[0211] Specifically, the app market service triggers the use of interface b after receiving information that the icon to be switched to is the second icon.
[0212] S804, The application market service receives a first resource package containing a second icon sent by the server 200.
[0213] Specifically, the application market service can request server 200 to send a first resource package containing a second icon via interface b. Server 200 can then retrieve the first resource package stored on server 200 and send it to the application market service. After receiving the first resource package from server 200, electronic device 100 can extract the second icon from the first resource package and switch the displayed icon of the first application to the second icon.
[0214] In the embodiments of this application, the above Figure 8 The interaction method between the first application and the application market service shown is only an example. Various other interaction methods can be implemented through other functional interfaces, and there is no limitation on this.
[0215] The following describes a method for switching application icons provided by an embodiment of this application.
[0216] Figure 9 An exemplary flowchart illustrates a method for switching application icons provided in an embodiment of this application. The method includes:
[0217] S901. Electronic device 100 displays the first icon of the first application.
[0218] For a detailed description of S901, please refer to the detailed introduction of S301 above, which will not be repeated here.
[0219] S902. Electronic device 100 detects a first event, the first event being used to switch the icon of the first application being displayed.
[0220] In some implementations, the electronic device 100 may include an application marketplace service. Specifically, the electronic device 100 may send a first event to the application marketplace service via a first application.
[0221] In this embodiment, the aforementioned first event can be set by the developer during the development of the first application. The first event can include various types. Different types of first events trigger different rules for switching the icon of the first application. Similarly, the switching rules corresponding to the first event can also be set by the developer during the development of the first application.
[0222] For a detailed description of S902, please refer to the detailed introduction of S302 above, which will not be repeated here.
[0223] S903. Electronic device 100 sends a first message to server 200, the first message being used to request server 200 to send a first resource package to electronic device 100, the first resource package including a second icon of a first application.
[0224] In some implementations, S903 may specifically include: Electronic device 100 responding to a first event sends a second message to server 200. The second message requests server 200 to send icon information of multiple icons of a first application to the electronic device. The icon information of the multiple icons of the first application includes the icon information of the second icon. The icon information includes one or more of the following: icon identification ID, icon upload time, and whether it is the default icon. Electronic device 100 receives the icon information of the multiple icons of the first application. Based on the first event and the icon information of the multiple icons of the first application, electronic device 100 sends the first message to server 200.
[0225] The second icon can be the application icon with the latest upload time among multiple icons of the first application stored in the server 200; the first event includes one or more of the following: the current date is a preset date, the current time is a preset time, and the electronic device 100 starts the first application for the first time on the same day.
[0226] The second icon can also be the default application icon among multiple icons of the first application stored in the server 200; the first event includes one or more of the following: the current date is not a preset date, the current time is not a preset time, and the electronic device 100 is not launching the first application for the first time on the same day.
[0227] In some implementations, S903 may further include: Electronic device 100 responding to a first event sends a third message to server 200, the third message requesting server 200 to send preview information of multiple icons of a first application to the electronic device, the preview information of the multiple icons of the first application including preview information of a second icon. Electronic device 100 receives and displays the preview information of the multiple icons of the first application. Electronic device 100 receives an operation applied to the preview information of the second icon and sends the first message to server 200. The first event includes the electronic device receiving an operation from the user switching the displayed icon of the first application.
[0228] For example, the process by which the electronic device 100 determines the second icon can be referred to the relevant description of S302-1 above, and the relevant description of S903 can also be referred to the detailed introduction of S303 above, which will not be repeated here.
[0229] S904. Electronic device 100 receives a first resource packet sent by server 200 in response to a first message.
[0230] In some implementations, after executing S903, server 200 can obtain the first message, determine the first resource packet based on the first message, and then send the first resource packet to electronic device 100. For a detailed description of the first resource packet, please refer to the detailed description of S303-1 above, which will not be repeated here.
[0231] In some implementations, specifically, electronic device 100 can also receive the first resource package through application market services.
[0232] S905. Electronic device 100 switches the first icon of a first application to a second icon based on a first resource package, wherein the version of the first application when displaying the first icon is the same as the application version of the first application when displaying the second icon.
[0233] Before executing S905, electronic device 100 can further unpack the first resource package to obtain a second icon, a first configuration file, and a first certificate signature. Based on the permissions of the first application contained in the first configuration file, the compatibility of electronic device 100, and developer information, electronic device 100 can determine that it has the ability to switch the icon of the first application to the second icon. Electronic device 100 can also determine the source and integrity of the first resource package based on the first certificate signature. Then, electronic device 100 executes S905.
[0234] In some implementations, the electronic device 100 may include a package management service. Specifically, the electronic device 100 can obtain a second icon from a first resource package through the package management service, and then the electronic device 100 can switch the icon of the first application to the second icon.
[0235] Specifically, server 200 receives the software installation package of the first application sent by the application server of the first application, and distributes the software installation package of the first application to electronic devices. For a detailed description of S905, please refer to the detailed description of S305 above, which will not be repeated here.
[0236] Implementation Figure 9 The method shown allows for switching application icons displayed on electronic devices without requiring developers to set up new versions of the application software package or the electronic device to update the application. This results in a shorter switching cycle, reducing the time and manpower costs associated with switching application icons and improving convenience. It also eliminates the need to pre-install multiple application icons in the software application package.
[0237] The following is a schematic diagram of the interaction flow of a method for switching application icons provided in an embodiment of this application.
[0238] Figure 10An exemplary flowchart illustrates a method for switching application icons provided in an embodiment of this application. The method includes:
[0239] S1001. Server 200 receives the second icon of the first application uploaded.
[0240] For a detailed description of S1001, please refer to the detailed description of S504 above, which will not be repeated here. Server 200 can also provide a user interface for developers to manage application icons, which can be exemplarily referred to above. Figure 6A The user interface shown is where developers can upload, view, delete, and update application icons.
[0241] S1002. Server 200 generates a first resource package containing a second icon. The first resource package does not contain the software installation package of the first application.
[0242] In some implementations, server 200 can package and sign the second icon to generate the first resource package.
[0243] For a detailed description of S1002, please refer to the detailed descriptions of S303-1, S505, and S506 above, which will not be repeated here.
[0244] S1003. Electronic device 100 displays the first icon of the first application.
[0245] For a detailed description of S1003, please refer to the detailed introduction of S301 above, which will not be repeated here.
[0246] S1004. Electronic device 100 detects a first event, the first event being used to switch the icon of the first application being displayed.
[0247] In this application embodiment, the first event can include various types. Different types of first events trigger different rules for switching the icon of the first application.
[0248] For a detailed description of S1004, please refer to the detailed description of S302 above, which will not be repeated here.
[0249] S1005. Electronic device 100 sends a first message to server 200. The first message is used to request server 200 to send a first resource package to electronic device 100. The first resource package includes a second icon of the first application.
[0250] In some implementations, S1005 may specifically include: Electronic device 100 responding to a first event sends a second message to server 200. The second message requests server 200 to send icon information of multiple icons of a first application to electronic device 100. The icon information of the multiple icons of the first application includes the icon information of the second icon. The icon information includes one or more of the following: icon identification ID, icon upload time, and whether it is the default icon. After receiving the second message, server 200 sends the icon information of the multiple icons of the first application to electronic device 100.
[0251] Electronic device 100 receives icon information from multiple icons of a first application. Based on a first event and the icon information from the multiple icons of the first application, electronic device 100 sends a first message to server 200.
[0252] The second icon can be the application icon with the latest upload time among multiple icons of the first application stored in the server 200; the first event includes one or more of the following: the current date is a preset date, the current time is a preset time, and the electronic device 100 starts the first application for the first time on the same day.
[0253] The second icon can also be the default application icon among multiple icons of the first application stored in the server 200; the first event includes one or more of the following: the current date is not a preset date, the current time is not a preset time, and the electronic device 100 is not launching the first application for the first time on the same day.
[0254] In some implementations, S1005 may further include: the electronic device responding to the first event sends a third message to the server 200, the third message requesting the server 200 to send preview information of multiple icons of the first application to the electronic device 100, the preview information of the multiple icons of the first application including preview information of the second icon. After receiving the third message, the server 200 sends the preview information of the multiple icons of the first application to the electronic device 100.
[0255] Electronic device 100 receives and displays preview information of multiple icons of a first application. Electronic device 100 receives an operation applied to the preview information of a second icon and sends a first message to server 200. The first event includes electronic device 100 receiving an operation from a user to switch the displayed icon of the first application.
[0256] For example, the process by which the electronic device 100 determines the second icon can be referred to the relevant description of S302-1 above, and will not be repeated here.
[0257] S1006. Server 200 sends the first resource packet to electronic device 100.
[0258] In some implementations, after executing S1005, server 200 can receive the first message, determine the first resource packet based on the first message, and then send the first resource packet to electronic device 100. For a detailed description of the first resource packet, please refer to the detailed description of S303-1 above, which will not be repeated here.
[0259] In some implementations, specifically, electronic device 100 can also receive the first resource package through application market services.
[0260] S1007. The electronic device 100 switches the first icon of the first application to a second icon based on the first resource package. The version of the first application displayed when the first icon is displayed is the same as the application version of the first application displayed when the second icon is displayed.
[0261] The server 200 is used to receive the software installation package of the first application sent by the application server of the first application, and to distribute the software installation package of the first application to electronic devices.
[0262] For details regarding S1007, please refer to the detailed descriptions of S305, S710, and S711 mentioned above; they will not be repeated here.
[0263] Implementation Figure 10 The method shown not only allows the electronic device 100 or the server 200 to determine the application icon to be switched, but also allows the user to choose the application icon to be switched independently, thereby increasing user participation in the process of switching application icons and improving user experience.
[0264] Figure 11 A schematic diagram of the hardware structure of the electronic device 100 is shown.
[0265] The following description uses electronic device 100 as an example to illustrate the embodiment. It should be understood that... Figure 8 The electronic device 100 shown is merely an example, and the electronic device 100 may have more than Figure 8 The more or fewer components shown can be combined into two or more components, or they can have different component configurations. The various components shown in the figure can be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application-specific integrated circuits.
[0266] For example, electronic device 100 may be a mobile phone, tablet computer, desktop computer, laptop computer, handheld computer, notebook computer, ultra-mobile personal computer (UMPC), netbook, as well as cellular phone, personal digital assistant (PDA), augmented reality (AR) device, virtual reality (VR) device, artificial intelligence (AI) device, wearable device, in-vehicle device, smart home device and / or smart city device. This application embodiment does not impose any special restrictions on the specific type of electronic device 100.
[0267] Electronic device 100 may include: processor 110, external memory interface 120, internal memory 121, universal serial bus (USB) interface 130, charging management module 140, power management module 141, battery 142, antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, sensor module 180, button 190, motor 191, indicator 192, camera 193, display screen 194, and subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0268] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0269] Processor 110 may include one or more processing units, such as an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural network processing unit (NPU). These different processing units may be independent devices or integrated into one or more processors.
[0270] In this embodiment, processor 110 can be used to detect a first event. Processor 110 can also be used to determine the switching rule corresponding to the first event. Processor 110 can also be used to determine that the icon of the first application to be switched is a second icon. Processor 100 can also be used to switch the first icon of the displayed first application to the second icon.
[0271] The controller can be the nerve center and command center of the electronic device 100. The controller can generate operation control signals according to the instruction opcode and timing signals to complete the control of instruction fetching and execution.
[0272] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can retrieve it directly from the memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.
[0273] In this embodiment of the application, the memory can be used to store the first event and the switching rule corresponding to the first event.
[0274] In some embodiments, the processor 110 may include one or more interfaces. Interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.
[0275] It is understood that the interface connection relationships between the modules illustrated in the embodiments of this application are merely illustrative and do not constitute a structural limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may also employ different interface connection methods or combinations of multiple interface connection methods as described in the above embodiments.
[0276] The charging management module 140 receives charging input from the charger. The power management module 141 connects the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140, and supplies power to the processor 110, internal memory 121, external memory, display screen 194, camera 193, and wireless communication module 160, etc. The wireless communication function of the electronic device 100 can be implemented through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor, and baseband processor, etc.
[0277] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover one or more communication frequency bands. Different antennas can also be multiplexed to improve antenna utilization. For example, antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in conjunction with tuning switches.
[0278] The mobile communication module 150 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1. In some embodiments, at least some functional modules of the mobile communication module 150 may be housed in the processor 110. In some embodiments, at least some functional modules of the mobile communication module 150 and at least some modules of the processor 110 may be housed in the same device.
[0279] The modem processor may include a modulator and a demodulator. The modulator modulates the low-frequency baseband signal to be transmitted into a mid-to-high frequency signal. The demodulator demodulates the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After processing by the baseband processor, the low-frequency baseband signal is transmitted to the application processor. The application processor outputs sound signals through an audio device (not limited to speaker 170A, receiver 170B, etc.) or displays images or videos through the display screen 194. In some embodiments, the modem processor may be a separate device. In other embodiments, the modem processor may be independent of the processor 110 and may be housed in the same device as the mobile communication module 150 or other functional modules.
[0280] The wireless communication module 160 can provide solutions for wireless communication applications on the electronic device 100, including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, performs frequency modulation and filtering of the electromagnetic wave signals, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, perform frequency modulation and amplification, and convert them into electromagnetic waves for radiation via antenna 2.
[0281] In some embodiments, antenna 1 of electronic device 100 is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, enabling electronic device 100 to communicate with networks and other devices via wireless communication technology. The wireless communication technology may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technologies, etc. The GNSS may include the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS), the BeiDou Navigation Satellite System (BDS), the Quasi-Zenith Satellite System (QZSS), and / or satellite-based augmentation systems (SBAS).
[0282] In this embodiment, the wireless communication module 160 can be used to communicate with the server 200. Specifically, the wireless communication module 160 can be used to send a first message to the server 200. The first message is used to request the server 200 to send a first resource packet to the electronic device 100. The wireless communication module 160 can also be used to send a second message to the server 200. The wireless communication module 160 can also be used to receive icon information of multiple icons of a first application sent by the server 200. The wireless communication module 160 can also be used to send a third message to the server 200. The wireless communication module 160 can also be used to receive preview information of multiple icons of the first application sent by the server 200.
[0283] Electronic device 100 implements display functions through a GPU, a display screen 194, and an application processor. The GPU is a microprocessor for image processing, connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations and for graphics rendering. Processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information.
[0284] Display screen 194 is used to display images, videos, etc. Display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD). The display panel can also be manufactured using organic light-emitting diodes (OLEDs), active-matrix organic light-emitting diodes (AMOLEDs), flexible light-emitting diodes (FLEDs), miniled, microled, micro-OLEDs, quantum dot light-emitting diodes (QLEDs), etc. In some embodiments, electronic device 100 may include one or N displays 194, where N is a positive integer greater than 1.
[0285] In this embodiment, the display screen 194 is used to display a first icon of the first application. The display screen 194 can also be used to display the icon of the first application after switching, i.e., a second icon.
[0286] Electronic device 100 can perform shooting functions through ISP, camera 193, video codec, GPU, display 194 and application processor.
[0287] The ISP is used to process data fed back by the camera 193. The camera 193 is used to capture still images or videos. The digital signal processor (DSP) is used to process digital signals, including digital image signals and other digital signals. For example, when the electronic device 100 selects a frequency point, the DSP performs a Fourier transform on the frequency energy. The video codec is used to compress or decompress digital video. The electronic device 100 can support one or more video codecs. Thus, the electronic device 100 can play or record videos in various encoding formats, such as Moving Picture Experts Group (MPEG) 1, MPEG 2, MPEG 3, MPEG 4, etc.
[0288] The external storage interface 120 can be used to connect an external memory card, such as a MicroSD card, to expand the storage capacity of the electronic device 100. The external memory card communicates with the processor 110 through the external storage interface 120 to perform data storage functions. For example, music, video, and other files can be saved on the external memory card.
[0289] Internal memory 121 can be used to store computer executable program code, which includes instructions. Processor 110 executes various functional applications and data processing of electronic device 100 by running the instructions stored in internal memory 121. Internal memory 121 may include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function (such as sound playback, image playback, etc.), etc. The data storage area may store data created during the use of electronic device 100 (such as audio data, phonebook, etc.). Furthermore, internal memory 121 may include high-speed random access memory and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc.
[0290] Electronic device 100 can implement audio functions through audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, and application processor, such as music playback and recording. Audio module 170 is used to convert digital audio information into analog audio signals for output, and also to convert analog audio input into digital audio signals. Audio module 170 can also be used for encoding and decoding audio signals. In some embodiments, audio module 170 can be located in processor 110, or some functional modules of audio module 170 can be located in processor 110.
[0291] The headphone jack 170D is used to connect wired headphones. The headphone jack 170D can be a USB interface 130 or a 3.5mm Open Mobile Terminal Platform (OMTP) standard interface, or a CTIA standard interface. The pressure sensor 180A senses pressure signals and converts them into electrical signals. The gyroscope sensor 180B is used to determine the motion posture of the electronic device 100. The barometric pressure sensor 180C measures air pressure. The magnetic sensor 180D includes a Hall effect sensor. The accelerometer sensor 180E detects the magnitude of acceleration of the electronic device 100 in various directions (typically three axes). The distance sensor 180F measures distance. The proximity sensor 180G may include, for example, a light-emitting diode (LED) and a photodetector, such as a photodiode. The ambient light sensor 180L senses ambient light intensity. The fingerprint sensor 180H collects fingerprints. The temperature sensor 180J detects temperature. The touch sensor 180K is also called a "touch panel". The bone conduction sensor 180M can acquire vibration signals. Buttons 190 include a power button, volume buttons, etc. Buttons 190 can be mechanical buttons or touch buttons. The electronic device 100 can receive button inputs and generate key signal inputs related to user settings and function control of the electronic device 100. The motor 191 can generate vibration alerts. The indicator 192 can be an indicator light, used to indicate charging status, battery level changes, and also to indicate messages, missed calls, notifications, etc. The SIM card interface 195 is used to connect a SIM card.
[0292] Figure 12 This is a schematic diagram of the hardware structure of a server 200 provided in an embodiment of this application.
[0293] like Figure 12 As shown, server 200 may include: a processor 201, a memory 202, a communication interface 203, a transmitter 205, a receiver 206, a coupler 207, and an antenna 208. These components can be connected via bus 204 or other means. Figure 9 Taking a bus connection as an example:
[0294] The communication interface 203 can be used by the server 200 to communicate with other communication devices, such as electronic devices 100. Specifically, the communication interface 203 can be a 3G communication interface, a Long Term Evolution (LTE) (4G) communication interface, a 5G communication interface, a WLAN communication interface, a WAN communication interface, etc. Not limited to wireless communication interfaces, the server 200 can also be configured with a wired communication interface 203 to support wired communication.
[0295] In some embodiments of this application, transmitter 205 and receiver 206 can be considered as a wireless modem. Transmitter 205 can be used to transmit signals output by processor 201. Receiver 206 can be used to receive signals. In server 200, the number of transmitters 205 and receivers 206 can be one or more. Antenna 208 can be used to convert electromagnetic energy in a transmission line into electromagnetic waves in free space, or to convert electromagnetic waves in free space into electromagnetic energy in a transmission line. Coupler 207 can be used to split mobile communication signals into multiple paths and distribute them to multiple receivers 206. Understandably, antenna 208 can be implemented as a massive MIMO antenna array.
[0296] The memory 202 is coupled to the processor 201 and is used to store various software programs and / or multiple sets of instructions. Specifically, the memory 202 may include high-speed random access memory and may also include non-volatile memory, such as one or more disk storage devices, flash memory devices, or other non-volatile solid-state storage devices.
[0297] The memory 202 can store an operating system (hereinafter referred to as the system), such as uCOS, VxWorks, RTLinux and other embedded operating systems. The memory 202 can also store a network communication program, which can be used to communicate with other communication devices.
[0298] In this embodiment, the processor 201 can be used to read and execute computer-readable instructions. Specifically, the processor 201 can be used to call a program stored in the memory 202 and execute the instructions contained in the program.
[0299] In this embodiment, processor 201 is used to review the icon of the first application uploaded by the developer. Processor 201 is used to generate a resource package for the first application based on the icon uploaded by the developer. Processor 201 is used to query the stored icons of the first application. Processor 201 can also be used to determine the icon of the first application to be switched based on the switching rules corresponding to the received first event. Processor 201 can also be used to read a first resource package containing a second icon from the resource package of the first application.
[0300] Storage 202 is used to store the icon of the first application uploaded by the developer. Storage 202 can also be used to store the resource package of the first application.
[0301] The transmitter 205 is used to send a first resource packet to the electronic device 100. The transmitter 205 can also be used to send icon information of multiple icons of a first application to the electronic device 100. The transmitter 205 can also be used to send preview information of multiple icons of the first application to the electronic device 100.
[0302] Receiver 206 is used to receive the first message, the second message, and the third message sent by electronic device 100.
[0303] Understandable Figure 9 The illustrated embodiment is merely an example. In the embodiments of this application, server 200 may also include more, fewer, or different devices than those in the above embodiments, and this application does not impose limitations here. It should be noted that in some other embodiments, the hardware structure of a server module in server 200 (or a server in the server cluster corresponding to server 200) may also refer to the above description. Figure 9 The relevant descriptions in the illustrated embodiments will not be repeated here.
[0304] The software system of electronic device 100 can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This application embodiment uses a layered architecture. Taking the system as an example, the software structure of electronic device 100 is illustrated.
[0305] Figure 13 This is a software structure block diagram of the electronic device 100 according to an embodiment of this application.
[0306] A layered architecture divides software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. In some embodiments, [the following is omitted as the text is incomplete and likely refers to a specific implementation or feature]. The system is divided into four layers, from top to bottom: the application layer, the application framework layer, the Android runtime and system libraries, and the kernel layer.
[0307] The application layer can include a series of application packages.
[0308] like Figure 13 As shown, the application package may include applications such as the primary application, camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, and SMS.
[0309] The application framework layer provides application programming interfaces (APIs) and a programming framework for applications in the application layer. The application framework layer includes some predefined functions.
[0310] like Figure 13 As shown, the application framework layer may include application marketplace services, package management services, window managers, content providers, view systems, notification managers, etc.
[0311] The application marketplace service enables electronic device 100 to interact with server 200 through a first application and to switch the displayed icon of the first application. The application marketplace service can interact with modules such as the first application and package management service. The application marketplace service can provide functional interfaces for the first application, such as the aforementioned interfaces a, b, and c.
[0312] Specifically, the application market service 160 can be used to communicate with the server 200. Specifically, the application market service can send a first message to the server 200. The first message requests the server 200 to send a first resource package to the electronic device 100. The application market service can also send a second message to the server 200. The application market service can also receive icon information of multiple icons of the first application sent by the server 200. The application market service can also send a third message to the server 200. The application market service can also receive preview information of multiple icons of the first application sent by the server 200. The application market service can determine the icon of the first application to be switched. The application market service can also instruct the package management service to unpack the first resource package. The functions of the application market service can be found above. Figures 3-7 The relevant descriptions in the document will not be repeated here.
[0313] Package management services can be used to manage resource packages or software installation packages for various applications, such as installing, updating, and uninstalling applications. In this embodiment, the package management service can provide an icon switching interface for the application market service, performing signature verification and unpacking of the first resource package to obtain a second icon.
[0314] The window manager is used to manage windowed applications. It can retrieve screen size, determine the presence of a status bar, lock the screen, and capture screenshots, among other things.
[0315] Content providers store and retrieve data, making that data accessible to applications. This data may include videos, images, audio, made and received phone calls, browsing history and bookmarks, phone books, etc.
[0316] A view system includes visual controls, such as controls for displaying text and controls for displaying images. View systems can be used to build applications. A display interface can consist of one or more views. For example, a display interface including a text notification icon could include views for displaying text and views for displaying images.
[0317] The notification manager allows applications to display notifications in the status bar. These notifications can be used to deliver informational messages and can disappear automatically after a short pause, requiring no user interaction. For example, the notification manager can be used to notify users of download completion or message alerts. The notification manager can also display notifications as icons or scrolling text in the top status bar, such as notifications from background applications, or as dialog boxes on the screen. Examples include displaying text messages in the status bar, emitting sounds, vibrating electronic devices, and flashing indicator lights.
[0318] The Android Runtime consists of core libraries and a virtual machine. The Android Runtime is responsible for the scheduling and management of the Android system.
[0319] The core library consists of two parts: one part is the functionalities that need to be called by the Java language, and the other part is the Android core library.
[0320] The application layer and application framework layer run in a virtual machine. The virtual machine executes the Java files of the application layer and application framework layer as binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection.
[0321] System libraries can include multiple functional modules. For example: surface manager, media libraries, 3D graphics processing libraries (e.g., OpenGLES), 2D graphics engines (e.g., SGL), etc.
[0322] The Surface Manager is used to manage the display subsystem and provides the blending of 2D and 3D layers for multiple applications.
[0323] The media library supports playback and recording of various common audio and video formats, as well as still image files. It supports multiple audio and video encoding formats, such as MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG.
[0324] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.
[0325] A 2D graphics engine is a graphics engine for 2D drawing.
[0326] The kernel layer is the layer between hardware and software. The kernel layer contains at least the display driver, camera driver, audio driver, and sensor driver.
[0327] This application provides an electronic device, which includes a memory, a processor, and a computer program stored in the memory. The processor executes the computer program to implement the above-described method for switching application icons.
[0328] This application provides a server, which includes a memory, a processor, and a computer program stored in the memory. The processor executes the computer program to implement the above-described method for switching application icons.
[0329] This application provides a communication system including an electronic device and a server, such as the electronic device 100 and server 200 described above. This communication system implements the method for switching application icons as described above through the electronic device and server.
[0330] This application also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, can implement the steps in the above-described method embodiments.
[0331] This application also provides a computer program product, including a computing program, which, when run on a computer, enables the computer to perform the steps in the various method embodiments described above.
[0332] This application also provides a chip system, which includes a processing circuit interface circuit. The interface circuit receives code instructions and transmits them to the processing circuit. The processing circuit executes the code instructions to enable the chip system to implement the steps of any method embodiment of this application. The chip system can be a single chip or a chip module composed of multiple chips.
[0333] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
Claims
1. A method for switching application icons, characterized in that, The method is applied to an electronic device, and the method includes: Display the first icon of the first application; A first event is detected, which is used to switch the displayed icon of the first application; Send a first message to the server, the first message being used to request the server to send a first resource package to the electronic device, the first resource package including a second icon of the first application; Receive the first resource packet sent by the server in response to the first message; Based on the first resource package, the first icon of the first application will be switched to the second icon; Specifically, the version of the first application when the first icon is displayed is the same as the application version of the first application when the second icon is displayed.
2. The method according to claim 1, characterized in that, Sending the first message to the server includes: In response to the first event, a second message is sent to the server. The second message is used to request the server to send icon information of multiple icons of the first application to the electronic device. The icon information of multiple icons of the first application includes the icon information of the second icon. The icon information includes one or more of the following: icon identity ID, icon upload time, and whether it is the default icon. Receive icon information from multiple icons of the first application; Based on the first event and the icon information of multiple icons of the first application, the first message is sent to the server.
3. The method according to claim 1 or 2, characterized in that, The second icon is the application icon with the newest upload time among the multiple icons of the first application stored in the server.
4. The method according to claim 3, characterized in that, The first event includes one or more of the following: the current date is a preset date, the current time is a preset time, and the electronic device launches the first application for the first time on that day.
5. The method according to claim 1 or 2, characterized in that, The second icon is the default application icon among the multiple icons of the first application stored in the server.
6. The method according to claim 5, characterized in that, The first event includes one or more of the following: the current date is not a preset date, the current time is not a preset time, or the electronic device is not launching the first application for the first time on that day.
7. The method according to claim 1, characterized in that, Sending the first message to the server includes: In response to the first event, a third message is sent to the server, the third message being used to request the server to send preview information of multiple icons of the first application to the electronic device, the preview information of the multiple icons of the first application including the preview information of the second icon; Receive and display preview information of multiple icons of the first application; The operation of receiving preview information applied to the second icon is used to send the first message to the server.
8. The method according to claim 7, characterized in that, The first event includes: the electronic device receiving an operation from the user to switch the displayed icon of the first application.
9. The method according to any one of claims 1-8, characterized in that, Before the first icon of the first application displayed based on the first resource package is switched to the second icon, the method further includes: The first resource package is unpacked to obtain the second icon, the first configuration file, and the first certificate signature; Based on the permissions of the first application, the compatibility of the electronic device, and the developer information contained in the first configuration file, it is determined that the electronic device has the ability to switch the icon of the first application to the second icon; The origin and integrity of the first resource package are determined based on the first certificate signature.
10. The method according to any one of claims 1-9, characterized in that, The electronic device includes application market services. Sending the first message to the server specifically includes: The first event is sent to the application marketplace service through the first application; The first message is sent to the server through the application marketplace service; Receiving the first resource packet specifically includes: The first resource package is received through the application marketplace service.
11. The method according to any one of claims 1-10, characterized in that, The electronic device includes a packet management service. The specific steps of switching the first icon of the first application displayed based on the first resource package to the second icon include: The second icon is obtained from the first resource package through the package management service; The icon of the first application will be switched to the second icon.
12. The method according to any one of claims 1-10, characterized in that, The server is used to receive the software installation package of the first application sent by the application server of the first application, and to distribute the software installation package of the first application to the electronic device.
13. A method for switching application icons, characterized in that, The method is applied to a server, and the method includes: The second icon of the first application to receive the upload; Generate a first resource package containing the second icon, wherein the first resource package does not contain the software installation package of the first application; Receive a first message sent by an electronic device, and send a first resource packet to the electronic device.
14. The method according to claim 13, characterized in that, The generation of the first resource package containing the second icon specifically includes: The second icon is packaged and signed to generate the first resource package.
15. The method according to claim 13 or 14, characterized in that, Before receiving the first message from the electronic device and sending the first resource packet to the electronic device, the method further includes: The system receives a second message sent by the electronic device and sends icon information of multiple icons of the first application to the electronic device. The icon information includes one or more of the following: icon ID, icon upload time, and whether it is the default icon. The icon information of the multiple icons of the first application includes the icon information of the second icon.
16. The method according to any one of claims 13-15, characterized in that, The second icon is the application icon with the newest upload time among the multiple icons of the first application stored in the server.
17. The method according to any one of claims 13-15, characterized in that, The second icon is the default application icon among the multiple icons of the first application stored in the server.
18. The method according to claim 13 or 14, characterized in that, Before receiving the first message from the electronic device and sending the first resource packet to the electronic device, the method further includes: The system receives a third message from the electronic device and sends preview information of multiple icons of the first application to the electronic device, wherein the preview information of the multiple icons of the first application includes the preview information of the second icon.
19. The method according to any one of claims 13-17, characterized in that, The server is used to receive the software installation package of the first application sent by the application server of the first application, and to distribute the software installation package of the first application to the electronic device.
20. An electronic device, characterized in that, The electronic device includes a memory, a processor, and computer instructions stored in the memory, wherein the processor executes the computer program to implement the method of any one of claims 1-12.
21. A server, characterized in that, The server includes a memory, a processor, and computer instructions stored in the memory, the processor executing the computer program to implement the method of any one of claims 13-19.
22. A communication system, characterized in that, The communication system includes an electronic device and a server, wherein the electronic device is used to implement the method of any one of claims 1-12, and the server is used to implement the method of any one of claims 13-19.
23. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the method of any one of claims 1-12 or 13-19.
24. A computer program product, characterized in that, The computer program product includes computer instructions that, when executed by a processor, implement the method of any one of claims 1-12 or 13-19.