A method and device for visualizing application icons

By filtering non-system applications that are not from the market and replacing the rogue application icons with preset icons, the mobile phone problems caused by rogue applications are solved, and the security and user experience of Android phones are improved.

CN117633774BActive Publication Date: 2025-08-26HONOR DEVICE CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202210968779.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-12
Publication Date
2025-08-26
Estimated Expiration
2042-08-12

AI Technical Summary

Technical Problem

Users are prone to accidentally installing rogue applications when using Android phones, resulting in problems such as advertising screensaver and stuttering on the phone, and it is difficult to uninstall the hidden icon of the rogue application.

Method used

By filtering out applications that are not installed in system applications under preset conditions, use preset icons to replace the original icon of the rogue application to visualize them so that users can discover and uninstall them actively.

Benefits of technology

It improves the security of the mobile phone, reduces the complexity of data processing, and improves the efficiency of rogue application identification and the convenience of user uninstallation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117633774B_ABST
    Figure CN117633774B_ABST
Patent Text Reader

Abstract

The present application provides a method and device for visualizing application icons, which relate to the field of terminal technology. The method can visualize the application icons of rogue applications, thereby guiding users to discover rogue applications and actively uninstall rogue applications, thereby improving the security of electronic devices. The method includes: under preset conditions, determining a second list based on a first list, the second list including all applications installed on the electronic device, the second list including all non-system applications whose installation sources are not the application market, and the second list including the first application; determining whether the first application is a rogue application based on attribute information of the first application; if the first application is a rogue application, displaying a preset icon at the application icon position of the first application on the desktop of the electronic device, the preset icon being used to prompt the user of the rogue application.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of terminal technology, and in particular to a method and device for visualizing application icons. Background Art

[0002] When using their phones, such as browsing the web or downloading files, users may accidentally install rogue apps. This can lead to various screen savers and pop-up ads, which not only reduce battery life but can also cause the phone to freeze, impacting the user experience.

[0003] Furthermore, some rogue apps hide their icons to reduce the risk of being uninstalled. That is, after installing a rogue app on a phone, the user cannot find the corresponding icon on the phone's desktop, making it impossible for the user to uninstall the rogue app. Summary of the Invention

[0004] In view of this, the present application provides a method and device for visualizing application icons, which can visualize the icons of rogue applications, thereby guiding users to discover rogue applications and actively uninstall them.

[0005] In a first aspect, the present application provides a method for visualizing application icons, which is applied to electronic devices. The method includes: under preset conditions, determining a second list based on a first list, the second list including all applications installed on the electronic device, the second list including non-system applications whose installation source is not an application market, and the second list including the first application; determining whether the first application is a rogue application based on attribute information of the first application; if the first application is a rogue application, displaying a preset icon at the application icon position of the first application on the desktop of the electronic device, and the preset icon is used to prompt the user of the rogue application.

[0006] In the present application, under preset conditions, a second list is filtered out based on the first list. Compared to the first list, the number of applications in the second list is significantly reduced, thereby reducing the complexity of data processing. Subsequently, based on the attribute information of the first application, it is determined whether the first application is a rogue application. If the first application is a rogue application, a preset icon is obtained and used to replace the original icon corresponding to the first application, thereby visualizing the application icon of the first application, thereby guiding the user to discover the rogue application and actively uninstall the rogue application, thereby improving the security of the mobile phone.

[0007] In one possible implementation, the second list does not include the identified rogue applications. When the solution of the present application is used for visualization of application icons for the second time, repeated determination of whether an application is a rogue application can be avoided, thereby improving processing efficiency.

[0008] In one possible implementation, the attribute information of the first application includes an application name and an application icon of the first application. Determining whether the first application is a rogue application based on the attribute information of the first application includes: determining that the first application is a rogue application when the application name of the first application is empty and the application icon of the first application is transparent. A method for determining whether a rogue application is a rogue application is provided for situations where the application icon of the rogue application is transparent.

[0009] In one possible implementation, the attribute information of the first application includes the number of behaviors and the behavior status of the first application. Determining whether the first application is a rogue application based on the attribute information of the first application includes: if the number of behaviors of the first application is greater than 0 and the behavior status is prohibited, the first application is a rogue application, the number of behaviors is used to represent the number of pending behaviors of the first application, and the behavior status is used to represent the status of the pending behaviors of the first application. For the situation where the application icon of a rogue application is displayed only once, a method for determining whether it is a rogue application is provided.

[0010] In one possible implementation, before displaying a preset icon at the application icon location of the first application on the desktop of the electronic device, the method further includes: after a preset time period, determining whether the first application is included in a whitelist, the whitelist including multiple verified non-rogue applications; if the first application is not included in the whitelist, the first application is determined to be a rogue application. In this way, the determined rogue application can be further judged, thereby improving the accuracy of the identified rogue application.

[0011] In one possible implementation, the first list includes application information of multiple applications, and the application information includes application package, application name, application icon, first flag bit, second flag bit and third flag bit. The first flag bit is used to identify whether the application is a rogue application, the second flag bit is used to identify whether the application is a system application, and the third flag bit is used to identify the installation source of the application.

[0012] In one possible implementation, if the first application is a rogue application, the method further includes updating a first flag bit of the first application in the first list. By modifying the first identifier of the first application, the electronic device can directly identify the first identifier the next time it makes a determination, avoiding repeated determinations and improving data processing efficiency.

[0013] In one possible implementation, the preset conditions include the electronic device booting into the desktop, the application in the electronic device returning to the desktop, the electronic device installing the application, and the electronic device uninstalling the application. In this way, a more comprehensive first list can be obtained, thereby obtaining all applications and new rogue applications in a timely manner.

[0014] In a second aspect, the present application provides another method for visualizing application icons, which is applied to electronic devices. The method includes: under preset conditions, determining a second list based on a first list, the first list including all applications installed on the electronic device, the second list including non-system applications whose installation source is not an application market, and the second list including the first application; determining whether the first application is a rogue application based on the application name of the first application and the application icon of the first application; if the first application is a rogue application, displaying a preset icon at the application icon position of the first application on the desktop of the electronic device, and the preset icon is used to prompt the user of the rogue application.

[0015] In the present application, under preset conditions, a second list is filtered out based on the first list. Compared to the first list, the number of applications in the second list is greatly reduced, thereby reducing the complexity of data processing. Subsequently, based on the application name and application icon of the first application, it is determined whether the first application is a rogue application. If the first application is a rogue application, a preset icon is obtained and used to replace the original icon corresponding to the first application, thereby visualizing the application icon of the first application, thereby guiding users to discover rogue applications and actively uninstall them, thereby improving the security of the mobile phone.

[0016] In one possible implementation, determining whether the first application is a rogue application based on its application name and application icon includes determining that the first application is a rogue application when the application name of the first application is empty and the application icon of the first application is transparent. A method for determining whether a rogue application is a rogue application is provided for situations where the application icon of the rogue application is transparent.

[0017] In a third aspect, the present application provides another method for visualizing application icons, which is applied to electronic devices. The method includes: under preset conditions, determining a second list based on a first list, the first list including all applications installed on the electronic device, the second list including non-system applications whose installation source is not an application market, and the second list including the first application; determining whether the first application is a rogue application based on the number of behaviors and the behavior status of the first application, the number of behaviors being used to characterize the number of behaviors to be executed by the first application, and the behavior status being used to characterize the status of the behaviors to be executed by the first application; in the case that the first application is a rogue application, displaying a preset icon at the application icon position of the first application on the desktop of the electronic device, and the preset icon being used to prompt the user of the rogue application.

[0018] In the present application, under preset conditions, a second list is filtered out based on the first list. Compared to the first list, the number of applications in the second list is significantly reduced, thereby reducing the complexity of data processing. Subsequently, based on the number of behaviors and behavior status of the first application, it is determined whether the first application is a rogue application. If the first application is a rogue application, a preset icon is obtained and used to replace the original icon corresponding to the first application, thereby visualizing the application icon of the first application, thereby guiding the user to discover the rogue application and actively uninstall the rogue application, thereby improving the security of the mobile phone.

[0019] In one possible implementation, determining whether the first application is a rogue application based on the number of behaviors and the behavior status of the first application includes: determining that the first application is a rogue application if the number of behaviors of the first application is greater than 0 and the behavior status is prohibited. A method for determining whether a rogue application is a rogue application is provided for situations where the application icon of the rogue application is displayed only once.

[0020] In a fourth aspect, an electronic device is provided, which has the function of implementing the methods of the first, second, and third aspects above. This function can be implemented through hardware or through hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions.

[0021] In a fifth aspect, an electronic device is provided, comprising: a processor and a memory; the memory is used to store computer-executable instructions, and when the electronic device is running, the processor executes the computer-executable instructions stored in the memory to enable the electronic device to perform a method for visualizing an application icon as described in any one of the first, second and third aspects above.

[0022] In a sixth aspect, a computer-readable storage medium is provided, which stores instructions. When the computer-readable storage medium is run on a computer, the computer can execute the application icon visualization method of any one of the first, second and third aspects above.

[0023] In a seventh aspect, a computer program product comprising instructions is provided, which, when executed on a computer, enables the computer to execute the method for visualizing an application icon according to any one of the first, second and third aspects.

[0024] In an eighth aspect, a device (for example, a chip system) is provided, comprising a processor for supporting an electronic device in implementing the functions described in the first, second, and third aspects above. In one possible design, the device further comprises a memory for storing program instructions and data necessary for the first device. When the device is a chip system, it may be composed of a chip or may include a chip and other discrete components.

[0025] Among them, the technical effects brought about by any design method in the fourth to eighth aspects can refer to the technical effects brought about by different design methods in the first, second or third aspects, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 A display diagram provided in the embodiment of the present application Figure 1 ;

[0027] Figure 2 A display diagram provided in the embodiment of the present application Figure 2 ;

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

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

[0030] Figure 5 A schematic diagram of a visualization method for an application icon provided in an embodiment of the present application Figure 1 ;

[0031] Figure 6 A schematic diagram of a visualization method for an application icon provided in an embodiment of the present application Figure 2 ;

[0032] Figure 7 A schematic diagram of a visualization method for an application icon provided in an embodiment of the present application Figure 3 ;

[0033] Figure 8 A display diagram provided in the embodiment of the present application Figure 3 ;

[0034] Figure 9 A schematic structural diagram of a chip system provided in an embodiment of the present application. DETAILED DESCRIPTION

[0035] It should be noted that in the embodiments of this application, the terms "first" and "second" are used for descriptive purposes only and should not be understood to indicate or imply relative importance or implicitly specify the number of technical features indicated. Therefore, features defined as "first" or "second" may explicitly or implicitly include one or more of such features.

[0036] The directional terms mentioned in the embodiments of the present application, such as "upper", "lower", "front", "back", "inside", "outside", "left", "right", etc., are only used to refer to the directions of the drawings, or to better and more clearly illustrate and understand the embodiments of the present application, rather than indicating or implying that the referred device or element must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on the embodiments of the present application.

[0037] In the description of the embodiments of the present application, unless otherwise clearly specified and limited, the term "connection" should be understood in a broad sense. For example, "connection" can be a detachable connection or a non-detachable connection; it can be a direct connection or an indirect connection through an intermediate medium.

[0038] In the description of the embodiments of the present application, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not preclude the presence of other identical elements in the process, method, article, or apparatus comprising the element.

[0039] As we all know, Apple's iOS system is relatively closed. All applications can only be installed and downloaded from the Apple Store, which effectively prevents users from accidentally installing rogue apps. Android, on the other hand, is less closed, offering a wider range of app download channels. Users often accidentally install rogue apps during use. Rogue apps can cause malicious pop-ups on the lock screen and in the background, and can even cause the phone to freeze, impacting the user experience.

[0040] Since some existing rogue applications have hidden icons, users cannot find rogue applications on the desktop of mobile terminals and cannot uninstall them. There are two ways for rogue applications to hide their icons.

[0041] The first type: The icon of the rogue application is displayed on the mobile phone desktop, but the displayed icon is transparent.

[0042] For example, see Figure 1 In (a), the mobile phone can receive a user's click operation on the application icon position 102 in the main interface (i.e., desktop) 101 of the mobile phone, and the mobile phone can respond to the click operation and display the following Figure 1The share icon 103 and the uninstall icon 104 shown in (b) of FIG. This may indicate that an application icon exists at the current location, but the application icon is transparent and the user cannot find it in time.

[0043] The second type: After the rogue application is installed for the first time, the application icon of the rogue application is displayed on the desktop of the mobile terminal. After running it once, the application icon of the rogue application will no longer be displayed.

[0044] For example, Figure 2 As shown in (a) of FIG, the mobile phone receives a user's click operation on the application icon 202 of application 1 in the main interface (i.e., desktop) 201 of the mobile phone. In response to the click operation, the mobile phone displays the following Figure 2 The interface 203 shown in (b) may include a jump clipboard button 204, a read application list button 205, and a jump default application management interface button 206.

[0045] When the user does not use the application 1, the application 1 can be minimized through the first touch operation. Figure 2 As shown in (b), touch operation 207 is an operation of sliding a finger upward from the bottom of application 1. The first touch operation may include touch operation 207. When the mobile phone detects touch operation 207, it can confirm that the first touch operation has been received. In addition, the first touch operation can also be other operations, which are not particularly limited in this embodiment.

[0046] After minimizing, return to the main interface 201 of the mobile phone. Figure 2 As shown in (c), the position 208 occupied by the application icon of application 1 in the main interface 201 of the mobile phone does not display the application icon of application 1, and the application icon of application 1 is hidden.

[0047] To this end, an embodiment of the present application provides a method for visualizing application icons, which, under preset conditions, filters out a second list based on a first list. Compared to the first list, the number of applications in the second list is greatly reduced, thereby reducing the complexity of data processing. Afterwards, based on the attribute information of the first application, it is determined whether the first application is a rogue application. In the case that the first application is a rogue application, a preset icon is obtained, and the preset icon is used to replace the original icon corresponding to the first application, thereby visualizing the application icon of the first application, thereby guiding the user to discover the rogue application and actively uninstall the rogue application to improve the security of the mobile phone.

[0048] For example, the electronic device in the embodiment of the present application can be a portable computer (such as a mobile phone), a tablet computer, a laptop computer, a personal computer (PC), a wearable electronic device (such as a smart watch), an augmented reality (AR) / virtual reality (VR) device, a car computer, a smart home device, etc. This embodiment does not impose any special restrictions on the specific form of the electronic device.

[0049] like Figure 3 As shown, the electronic equipment includes Figure 3 The hardware structure shown. Figure 3 Schematic diagram of the structure of an electronic device 100 provided in an embodiment of the present application. Figure 3 As shown, the electronic device 100 may include: a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, a button 190, a motor 191, an indicator 192, a camera 193, a display 194, and a subscriber identification module (SIM) card interface 195. The sensor module 180 may include a pressure sensor, a gyroscope sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a distance sensor, a proximity light sensor, a fingerprint sensor, a temperature sensor, a touch sensor, an ambient light sensor, a bone conduction sensor, etc.

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

[0051] The processor 110 may include one or more processing units. For example, the processor 110 may include an application processor (AP), a modem, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU). Different processing units may be independent devices or integrated into one or more processors.

[0052] The charging management module 140 is configured to receive charging input from a charger, which may be a wireless charger or a wired charger.

[0053] The power management module 141 is used to connect 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 to provide power to the processor 110, the internal memory 121, the display 194, the camera 193, and the wireless communication module 160.

[0054] The wireless communication function of the image acquisition device can be implemented through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem and baseband processor.

[0055] Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in the image acquisition device can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization.

[0056] The mobile communication module 150 can provide wireless communication solutions including 2G / 3G / 4G / 5G applied to image acquisition devices.

[0057] The wireless communication module 160 can provide wireless communication solutions applied to image acquisition devices, 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), infrared (IR), etc. The wireless communication module 160 can be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110. The wireless communication module 160 can also receive the signal to be sent from the processor 110, frequency modulate it, amplify it, and convert it into electromagnetic waves for radiation through the antenna 2.

[0058] The image acquisition device realizes the display function through the GPU, the display screen 194, and the application processor. The GPU is a microprocessor for image processing, which connects the display screen 194 and the application processor.

[0059] The display screen 194 is used to display images, videos, etc. A series of graphical user interfaces (GUIs) can be displayed on the display screen 194 of the image acquisition device.

[0060] The image acquisition device can realize the shooting function through an ISP, a camera 193, a video codec, a GPU, a display screen 194, and an application processor.

[0061] The camera 193 is used to capture still images or videos.

[0062] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the image acquisition device.

[0063] The internal memory 121 can be used to store computer executable program codes, which include instructions. The processor 110 executes the instructions stored in the internal memory 121 to perform various functional applications and data processing of the image acquisition device.

[0064] The image acquisition device can implement audio functions such as music playback and recording through the audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, and application processor. The image acquisition device may also include a pressure sensor, an air pressure sensor, a gyroscope sensor, a magnetic sensor, an acceleration sensor, a distance sensor, a proximity light sensor, an ambient light sensor, a fingerprint sensor, a temperature sensor, a touch sensor, a bone conduction sensor, a button 190, a motor 191, an indicator 192, and the like.

[0065] SIM card interface 195 is used to connect a SIM card. A SIM card can be inserted into or removed from SIM card interface 195 to connect to and disconnect from the image capture device. The image capture device can support one or N SIM card interfaces, where N is a positive integer greater than 1. SIM card interface 195 can support Nano SIM cards, Micro SIM cards, and SIM cards. Multiple cards can be inserted into the same SIM card interface 195 simultaneously. SIM card interface 195 is also compatible with external memory cards. The image capture device interacts with the network through the SIM card to implement functions such as call and data communications.

[0066] The software system of the electronic device can adopt a layered architecture, an event-driven architecture, a micro-kernel architecture, a microservice architecture, or a cloud architecture. The embodiment of the present invention takes the Android system of the layered architecture as an example to exemplify the software structure of the electronic device (e.g., a tablet computer).

[0067] The layered architecture divides the software into several layers, each with a clear role and division of labor. The layers communicate with each other through interfaces. In some embodiments, the Android system may include an application layer, an application framework layer, an Android runtime (Android runtime) and a system library, a hardware abstraction layer (HAL) and a kernel layer. It should be noted that the embodiments of the present application are described using the Android system as an example. In other operating systems (such as the iOS system, etc.), as long as the functions implemented by each functional module are similar to those of the embodiments of the present application, the solutions of the present application can also be implemented.

[0068] Among them, the application layer can include a series of application packages.

[0069] like Figure 4 As shown, the application package may include applications such as email, camera, call, music, navigation, WLAN, weather, flashlight, non-system applications, and desktop applications. Among them, non-system applications may include rogue applications. Of course, the application layer may also include other application packages, such as video, Bluetooth, calendar, shopping applications, etc., which are not limited in this application.

[0070] The application framework layer provides an application programming interface (API) and programming framework for the applications in the application layer. The application framework layer includes some predefined functions.

[0071] The application framework layer may include an activity manager, a window manager, a content provider, a view system, a resource manager, a notification manager, a security control module, an application package management service (Package Manager Service, PMS) and a resource management service, etc. The embodiments of the present application do not impose any restrictions on this.

[0072] In an embodiment of the present application, the application framework layer may also include a security management module, PMS and resource management services, etc.

[0073] Among them, the security control module is used to verify the accuracy of rogue applications identified by PMS and send the verification results to PMS.

[0074] The PMS is used to manage the application package data installed in the mobile phone system. It is also used to identify rogue applications and determine whether to obtain the preset icons corresponding to rogue applications from the resource management service based on the verification results of the security control module.

[0075] The resource management service is used to store resources and provide preset icons and application icons for the PMS.

[0076] The Activity Manager manages the lifecycle of each application. Applications typically run as activities in the operating system. Each activity has a corresponding application record in the Activity Manager, which records the state of that activity. The Activity Manager uses this activity record as an identifier to schedule the application's activity process.

[0077] Window Manager Service: Used to manage the graphical user interface (GUI) resources used on the screen. Specifically, it can be used to: obtain screen size, create and destroy windows, show and hide windows, layout windows, manage focus, and manage input methods and wallpapers.

[0078] The system libraries and kernel layers below the application framework layer are referred to as the underlying system. The underlying system includes an underlying display system for providing display services. For example, the underlying display system includes a display driver in the kernel layer and a surface manager in the system library.

[0079] The Android Runtime consists of core libraries and a virtual machine (VM). The Android Runtime is responsible for scheduling and management of the Android system. The core libraries consist of two parts: one for Java-based functions and the other for the Android core library. The application layer and the application framework layer run in the VM. The VM executes the Java files in the application layer and application framework layer as binary files. The VM is responsible for performing functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection.

[0080] The system library can include multiple functional modules, such as the surface manager, media libraries, 2D / 3D graphics processing library (OpenGL ES), and 2D graphics engine (SGL).

[0081] The surface manager is used to manage the display subsystem and provide fusion of 2D and 3D layers for multiple applications.

[0082] The media library supports playback and recording of a variety of common audio and video formats, as well as static image files. The media library can support a variety of audio and video encoding formats, such as MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.

[0083] OpenGLES is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.

[0084] SGL is a graphics engine for 2D graphics.

[0085] The kernel layer is the layer between hardware and software. The kernel layer includes at least the display driver, camera driver, Bluetooth driver, audio driver, and sensor driver. The hardware includes at least speakers, display, and Bluetooth.

[0086] Below, a visualization method of application icons provided by an embodiment of the present application is described in detail with reference to the accompanying drawings. The above electronic device is taken as an example of a mobile phone, which includes desktop applications, PMS, resource management services and security control modules. Figure 5 As shown, the visualization method of the application icon may include the following steps.

[0087] 501. Under preset conditions, the desktop application obtains a first list through the PMS and displays application icons of the applications in the first list on the desktop of the mobile phone.

[0088] The preset conditions include shutting down the phone and then restarting it to enter the desktop, restarting it to enter the desktop while the phone is running, installing new applications on the phone, uninstalling applications on the phone, flashing the phone, formatting the phone, or returning applications in the phone to the desktop.

[0089] The desktop application in the mobile phone obtains the first list through the PMS, and displays the application icons of the applications in the first list on the mobile phone desktop, which may include the following steps:

[0090] 5011. The desktop application in the mobile phone sends a first message to the PMS.

[0091] The first message is used to obtain the first list.

[0092] After the desktop application in the mobile phone obtains the first list, all applications can be displayed on the mobile phone desktop according to the application names of all applications in the first list and the application icons corresponding to the application names.

[0093] 5012. The PMS generates a first list in response to the first message, and sends a first reply message to the desktop application.

[0094] The first reply message includes a first list. The first list includes application information of multiple applications, and the application information may include application package, application name, application icon, first flag, second flag, third flag, ..., Nth flag, etc. The first flag is used to indicate whether the application in the first list is a rogue application. The second flag is used to indicate whether the application in the first list is a system application or a non-system application. The third flag is used to indicate the download source of the application in the first list. Non-system applications are applications installed on the mobile phone other than system applications.

[0095] When this solution is used for the first time, the first flag in the first list is empty. After using it once, a rogue application may be found. The first flag in the first list can be updated based on the rogue application found. Therefore, the first flag in the first list may be empty or not.

[0096] Specifically, the PMS includes a Get Installed Applications access interface. The Get InstalledApplications access interface can be used to retrieve all installed applications on a mobile phone. For example, when the PMS receives the first message from a desktop application, it retrieves all application package data on the mobile phone using the Get Installed Packages access interface. Specifically, the PMS traverses the Get Installed Packages interface, reading each application package data in the Get Installed Packages interface to obtain a first list. Table 1 shows the first list.

[0097] Table 1

[0098]

[0099] Specifically, the first flag is isRogueAPP. If the first flag isRogueAPP=true, it indicates that the application is a confirmed rogue application. If the first flag isRogueAPP=false, it indicates that the application has been confirmed not to be a rogue application. If the first flag isRogueAPP is empty, it indicates that it is unclear whether the application is a rogue application.

[0100] The second flag is Flag. If the second flag Flag = {system, update, ...}, that is, the Flag set includes system, so the application is a system application. If the second flag Flag = {update, ...}, that is, the Flag set does not include system, it means that the application is a non-system application.

[0101] The third flag bit is installerPackageName. If the third flag bit installerPackageName = com.XXModel.appmarket, it means that the application was downloaded from the XX model's app market. If the third flag bit installerPackageName = com.baidu.searchbox, it means that the application was downloaded through Baidu search, that is, the application was installed from a source other than the app market. Alternatively, the third flag bit installerPackageName can also = com.google.searchbox, or = com.firefox.searchbox, etc. This application does not impose any restrictions on this.

[0102] 5013. The desktop application displays the application icons of the applications in the first list on the mobile phone desktop according to the first list in the first reply message.

[0103] Specifically, after the desktop application obtains the first list, it displays the application names and application icons corresponding to all the applications in the first list on the mobile phone desktop.

[0104] 502. The PMS filters the applications in the first list to obtain a second list.

[0105] The second list includes at least one first application, where the first application is an application that meets the screening condition.

[0106] In some embodiments, if 502 is executed for the first time, the PMS filters the applications in the first list according to the following screening condition: non-system applications whose installation sources are not the application market among all applications.

[0107] Exemplarily, the screening process is as follows: (1) non-system applications among all applications; and (2) selecting applications whose installation sources are not the application market among the non-system applications.

[0108] In other embodiments, if 502 is not executed for the first time, the screening conditions are: applications other than the identified rogue applications, non-system applications, and the installation source is not the application market.

[0109] Exemplarily, the screening process is as follows: (1) selecting applications other than the identified rogue applications; (2) selecting non-system applications from among the applications other than the identified rogue applications; and (3) selecting applications whose installation source is not the application market from among the non-system applications.

[0110] (1) Select an application other than the identified rogue application

[0111] In conjunction with the foregoing, the PMS can select applications other than identified rogue applications based on the first flag bit of the applications in the first list. Applications other than identified rogue applications can include non-rogue applications and applications whose status is uncertain. Specifically, applications corresponding to the first flag bit isRogueAPP=false and applications corresponding to an empty first flag bit are considered to be applications other than identified rogue applications.

[0112] For example, referring to Table 1, the first flag bit isRogueAPP of the application corresponding to sequence number 1 is true, indicating that the application corresponding to sequence number 1 is a rogue application. The first flag bit isRogueAPP of the application corresponding to sequence number 2 is empty, indicating that it is uncertain whether the application corresponding to sequence number 2 is a rogue application. The first flag bit isRogueAPP of the application corresponding to sequence number 3 is false, indicating that the application corresponding to sequence number 3 is not a rogue application. The first flag bit isRogueAPP of the application corresponding to sequence number N is false, indicating that the application corresponding to sequence number N is not a rogue application.

[0113] Therefore, the applications other than the identified rogue applications screened out by the PMS are the application corresponding to sequence number 2, the application corresponding to sequence number 3, and the application corresponding to sequence number N.

[0114] After determining that the application corresponding to sequence number 1 is marked as a rogue application, the PMS can obtain the application icon of the application corresponding to sequence number 1 through the resource management service, and then compare the application icon of the application corresponding to sequence number 1 with the preset icon. If the comparison is consistent, the process ends. If the comparison is inconsistent, the preset icon is obtained through the resource management service, and the preset icon is sent to the desktop application, so that the desktop application uses the preset icon to replace the application icon of the application corresponding to sequence number 1. Among them, the preset icon can be some icons with reminder functions, such as an exclamation mark or X. The preset icon can also be redesigned according to actual needs, and this application does not impose any restrictions on this.

[0115] (2) Filter non-system applications from applications other than the identified rogue applications

[0116] Filtered non-system apps are obtained by further screening apps beyond those already identified as rogue apps. Typically, apps are categorized as system apps and non-system apps based on whether they are native to the phone's operating system. By default, system apps are not rogue apps, so the entire process ends once all apps beyond those identified as rogue apps are confirmed to be system apps.

[0117] Specifically, the PMS can filter non-system applications based on the second flag of applications other than the identified rogue applications in the first list. For example, the second flag is Flag. Applications corresponding to the second flag Flag = {update, ...} are considered non-system applications, and the Flag set for non-system applications does not include system.

[0118] For example, in combination with Table 1, by (1) filtering out applications other than the identified rogue applications, the filtered out applications other than the identified rogue applications are the application corresponding to sequence number 2, the application corresponding to sequence number 3, and the application corresponding to sequence number N.

[0119] The second flag bit of the application corresponding to sequence number 2 is Flag = {system, update, ...}, and the Flag set includes "system", indicating that the application corresponding to sequence number 2 is a system application. The second flag bit of the application corresponding to sequence number 3 is Flag = {update, ...}, and the Flag set does not include "system", indicating that the application corresponding to sequence number 3 is a non-system application. The second flag bit of the application corresponding to sequence number N is Flag = {update, ...}, and the Flag set does not include "system", indicating that the application corresponding to sequence number N is a non-system application. Therefore, the non-system applications filtered out by PMS are the applications corresponding to sequence number 3 and sequence number N.

[0120] (3) Filter out non-system applications whose installation sources are not from the App Market

[0121] After filtering out non-system apps, identify apps whose installation sources weren't the app market. Generally, apps installed through the app market are considered verified and safe by default. If an app wasn't installed through the app market, further information about the app will be needed to determine if it's a rogue app.

[0122] Specifically, the PMS can filter out applications whose installation source is not the App Market based on the third flag of the non-system applications in the first list. For example, the third flag is installerPackageName. Applications other than those corresponding to the third flag installerPackageName = com.XXModel.appmarket are considered to be installed from sources other than the App Market.

[0123] For example, in combination with Table 1, by (1) filtering applications other than the identified rogue applications and (2) filtering non-system applications among the applications other than the identified rogue applications, the filtered non-system applications are the application corresponding to sequence number 3 and the application corresponding to sequence number N.

[0124] The third flag bit of the app corresponding to serial number 3, installerPackageName = com.XXModel.appmarket, indicates that the installation source for the app corresponding to serial number 3 is the app market for model XX. The third flag bit of the app corresponding to serial number N, installerPackageName = com.google.searchbox…, indicates that the installation source for the app corresponding to serial number N is the Google search box, not the app market. Therefore, the second list ultimately selected by the PMS includes only the app corresponding to serial number N. This second list is shown in Table 2.

[0125] Table 2

[0126]

[0127] It should be noted that the above (1) selecting applications other than the identified rogue applications, (2) selecting non-system applications from applications other than the identified rogue applications, and (3) selecting applications whose installation source is not the App Market from non-system applications do not have to be executed. After executing (1) selecting applications other than the identified rogue applications, if no applications other than the identified rogue applications are found, the entire process ends. After executing (1) selecting applications other than the identified rogue applications and (2) selecting non-system applications from applications other than the identified rogue applications, if no non-system applications are found, the entire process ends. After executing (1) selecting applications other than the identified rogue applications, (2) selecting non-system applications from applications other than the identified rogue applications, and (3) selecting applications whose installation source is not the App Market from non-system applications, if no applications whose installation source is not the App Market are found, the entire process ends.

[0128] The execution order of the above screening process is not fixed. The above screening process can also be (1) selecting applications other than the rogue applications that have been identified, (2) selecting applications whose installation source is not the application market among the applications other than the rogue applications that have been identified, and (3) selecting non-system applications among the applications whose installation source is not the application market.

[0129] Alternatively, the screening process is (1) selecting non-system applications, (2) selecting applications other than the identified rogue applications from the non-system applications, and (3) selecting applications whose installation source is not the application market from the applications other than the identified rogue applications.

[0130] Alternatively, the screening process is (1) selecting non-system applications, (2) selecting applications whose installation source is not the application market among non-system applications, and (3) selecting applications other than the identified rogue applications among applications whose installation source is not the application market.

[0131] Alternatively, the screening process is (1) selecting applications whose installation source is not the application market, (2) selecting applications other than the identified rogue applications from applications whose installation source is not the application market, and (3) selecting non-system applications from applications other than the identified rogue applications.

[0132] The above screening process is (1) selecting applications whose installation source is not the application market, (2) selecting non-system applications among applications whose installation source is not the application market, and (3) selecting applications other than the identified rogue applications among non-system applications.

[0133] 503. The PMS obtains the application name and the application icon of the first application in the second list, determines whether the first application is a rogue application based on the application name and the application icon of the first application, and updates the first flag corresponding to the first application.

[0134] The PMS obtains the application name and behavior data of the first application from the first list, and obtains the application icon of the first application from the resource management service. The PMS may also obtain the application name and behavior data of the first application from the second list.

[0135] Based on the application name and application icon of the first application, the PMS can determine whether the first application is a rogue application. Specifically, the PMS can first determine whether the application name of the first application is empty. Based on whether the application name is empty, the PMS can further determine whether the application icon of the first application is transparent. If the application icon of the first application is transparent, the PMS can determine whether the application name of the first application is empty. If the application name of the first application is empty, the PMS can determine whether the application name of the first application is empty. Alternatively, the PMS can determine whether the application name of the first application is empty and whether the application icon of the first application is transparent. If the application name of the first application is empty and the application icon of the first application is transparent, the PMS can determine whether the application name of the first application is empty and whether the application icon of the first application is transparent. If the application name of the first application is empty and the application icon of the first application is transparent, the PMS can determine whether the application name of the first application is empty and the application icon of the first application is transparent.

[0136] Obtaining the application icon of the first application from the resource management service may include the following steps:

[0137] 5031. The PMS sends a second message to the resource management server.

[0138] The second message is used to request to obtain the application icon of the first application from the resource management service. The second message includes the UID of the first application.

[0139] 5032. The resource management service obtains the application icon of the first application in response to the second message, and sends a second reply message to the PMS.

[0140] The second reply message includes the application icon of the first application.

[0141] 5033. The PMS updates the first flag corresponding to the first application according to the second reply message.

[0142] The PMS obtains the application icon of the first application based on the second reply message, and then determines whether the application icon of the first application is transparent. Specifically, application icon transparency can be set in a variety of ways. For example, setting the alpha value of the application icon of the first application to 0% makes the application icon of the first application transparent. Alternatively, setting the application icon of the first application to a transparent image makes the application icon of the first application transparent. Other methods can also be used to set the application icon, which are not limited by this application.

[0143] Finally, based on whether the application icon is transparent and the application name of the first application, it is determined whether the first application is a rogue application. If the application name of the first application is empty and the application icon of the first application is transparent, the first application is determined to be a rogue application, and then the PMS modifies the first flag data of the first application to set the first flag bit isRogueAPP=true.

[0144] Alternatively, when it is determined that the application name of the first application is empty and the application icon of the first application is opaque, it is determined that the first application is not a rogue application.

[0145] Alternatively, after determining that the application name of the first application is not empty, it is determined that the first application is not a rogue application.

[0146] For example, combining Table 2 and 502, it can be seen that the second list only includes the application corresponding to sequence number N. The PMS can query the application name of the application corresponding to sequence number N in the first list and also query the application name of the application corresponding to sequence number N in the second list. The query shows that the application name of the application corresponding to sequence number N is empty. The PMS then proceeds to determine whether the application icon of the application corresponding to sequence number N is transparent. Whether the application icon of the application corresponding to sequence number N is transparent is determined by the PMS through the resource management service.

[0147] Specifically, the PMS determines whether the application icon of the application corresponding to the serial number N is transparent through the resource management service, including the following steps:

[0148] (1) The PMS sends a request to the resource management server.

[0149] The acquisition request is used to request the resource management service to acquire the application icon of the application corresponding to the serial number N. The acquisition request includes the UID of the application corresponding to the serial number N.

[0150] (2) The resource management service responds to the acquisition request, acquires the application icon of the application corresponding to the serial number N, and returns the acquisition result to the PMS.

[0151] The application icon of the application corresponding to the sequence number N is displayed in the acquisition result.

[0152] (3) The PMS adjusts the first flag bit of the application corresponding to the sequence number N according to the acquisition result.

[0153] The PMS obtains the application icon of the application corresponding to serial number N based on the acquisition result, and then determines whether the application icon of the first application is transparent. Finally, based on the determination result of whether the application icon is transparent and the application name of the application corresponding to serial number N, it determines whether the application corresponding to serial number N is a rogue application.

[0154] When it is determined that the application name of the application corresponding to the serial number N is empty and the application icon of the application corresponding to the serial number N is transparent, the application corresponding to the serial number N is determined to be a rogue application, and then the PMS modifies the first flag data of the application corresponding to the serial number N so that the first flag isRogueAPP=true.

[0155] Optionally, if the first application is not a rogue application, the process ends; if the first application is a rogue application, continue to perform the following steps.

[0156] 504. After a preset period of time, the PMS sends a third message to the security control module.

[0157] Among them, the third message is used to request the security management and control module to verify whether the first application is a rogue application, and the third message includes information about the first application.

[0158] Specifically, if the PMS determines that the first application is a rogue application, the PMS will report the first application's information to the security management module via a third message. The reported first application information includes the first application's package name and the first application's behavior type. The first application's behavior type can be either a first type or a second type. The first type is when the application name is empty and the application icon is transparent. The second type is when the number of behaviors is greater than 0 and the behavior status is prohibited.

[0159] For example, in a phone reboot scenario, the PMS wakes up earlier than the security control module. After the PMS determines that the first application is a rogue application, it waits for a preset period of time. After the preset period of time, the PMS sends a third message to the security control module to ensure that the security control module is operating normally and can receive the third message. Specifically, when the PMS determines that the first application is a rogue application, it waits for a preset period of 5 minutes before sending the third message to the security control module. The third message includes the package name of the application corresponding to sequence number N and the behavior type of the application corresponding to sequence number N. The behavior type of the application corresponding to sequence number N is the first type.

[0160] 505. The security management and control module verifies whether the first application is a rogue application in response to the third message, and sends a third reply message to the PMS.

[0161] After receiving the third message, the security control module verifies the information of the first application reported by the PMS to prevent the PMS from mistaking some application plug-ins as rogue applications. In this way, a more accurate identification result can be obtained.

[0162] The security control module stores a whitelist that includes multiple verified non-rogue applications. For example, the whitelist includes the application's package name, application plug-ins, and so on. Specifically, the security control module verifies the information about the rogue application reported by the PMS by comparing the package name of the rogue application reported by the PMS with the package names pre-stored in the whitelist. If a matching package name is found, the PMS is deemed to have made an incorrect judgment and the application reported by the PMS is not a rogue application. If no matching package name is found after the comparison, the PMS is deemed to have made a correct judgment and the application reported by the PMS is a rogue application.

[0163] After obtaining the judgment result, the security management and control module sends a third reply message to the PMS, where the third reply message includes whether the first application is a rogue application or the first application is not a rogue application.

[0164] If the verification result sent by the security control module indicates that the first application is a rogue application, continue to perform the following steps.

[0165] For example, in combination with 504, the security management module compares the package name of the application corresponding to the serial number N with the package name of the application in the whitelist. Through comparison, no package name consistent with the package name of the application corresponding to the serial number N is found in the whitelist. It is considered that the PMS judgment is correct, and the application corresponding to the serial number N reported by the PMS is a rogue application.

[0166] 506. In response to the third reply message, the PMS obtains a preset icon from the resource management service and sends a fourth message to the desktop application.

[0167] The preset icon is used to alert the user that the current application is a rogue application. The preset icon is designed to prevent rogue applications. The fourth message instructs the desktop application to display the updated icon of the first application, which is the preset icon. The fourth message includes the preset icon and the association between the preset icon and the first application. The association between the preset icon and the first application is established by the PMS.

[0168] For example, the PMS obtains a preset icon from the resource management service, establishes an association between the preset icon and the application corresponding to the serial number N, and then sends a fourth message to the desktop application.

[0169] Specifically, the PMS obtains the preset icon from the resource management service in response to the third reply message, including the following sub-steps:

[0170] 5061. The PMS sends a fifth message to the resource management service in response to the third reply message.

[0171] The fifth message is used to request the resource management service to provide the PMS with a preset icon corresponding to the rogue application.

[0172] 5062. In response to the fifth message, the resource management service searches for a preset icon corresponding to the rogue application and sends a fifth reply instruction to the PMS.

[0173] Among them, the fifth reply instruction includes a preset icon.

[0174] 507. In response to the fourth message, the desktop application displays a preset icon at the application icon location of the first application on the desktop.

[0175] In response to the fourth message, the desktop application replaces the original transparent icon corresponding to the first application with a preset icon, visually exposing the first application, prompting the user of the suspicious nature of the first application, and then guiding the user to discover the rogue application and actively uninstall the rogue application.

[0176] Based on the technical solutions corresponding to 501-507 above, when the desktop application updates and displays the application icons of all applications in the mobile phone, all applications in the mobile phone are preliminarily screened through the PMS. Specifically, the applications other than the identified rogue applications are first screened based on the obtained first list. Then, based on the applications other than the identified rogue applications, non-system applications are screened again. Finally, based on the non-system applications, applications whose installation sources are not the application market are screened to obtain a second list. Compared with the first list, the number of applications in the second list will be greatly reduced, thereby reducing the complexity of data processing. Afterwards, the PMS further determines whether the first application in the second list is a rogue application, specifically whether the application name of the first application is empty and whether the application icon of the first application is transparent. When the application name of the first application is empty and the application icon of the first application is transparent, the first application is considered to be a rogue application, and the first identifier of the first application is modified. The next time a rogue application is determined, the first identifier can be directly identified to avoid repeated judgments and improve data processing efficiency. After identifying a rogue application, PMS obtains the preset icon through the resource management service and notifies the desktop application to use the preset icon to replace the original icon corresponding to the rogue application, thereby visualizing the application icon of the rogue application, and then guiding users to discover rogue applications and actively uninstall them to improve the security of the mobile phone.

[0177] Next, another method for visualizing application icons provided by an embodiment of the present application will be described in detail with reference to the accompanying drawings. Figure 6 As shown, the visualization method of the application icon may include the following steps.

[0178] 601. Under preset conditions, the desktop application obtains a first list through the PMS and displays application icons of the applications in the first list on the desktop of the mobile phone.

[0179] For specific details, please refer to 501, 5011-5013, which will not be repeated here.

[0180] 602. The PMS filters the applications in the first list to obtain a second list.

[0181] For details, please refer to 502 and will not be repeated here.

[0182] 603. The PMS obtains behavior data of the first application in the second list, determines whether the first application is a rogue application based on the behavior data of the first application, and updates a first flag corresponding to the first application.

[0183] The behavior data includes the number of behaviors and the behavior status. The number of behaviors is used to represent the number of behaviors to be executed by the first application, and the behavior status is used to represent the status of the behaviors to be executed by the first application.

[0184] The PMS can obtain the behavior data of the first application through the first list or the second list. The number of behaviors can be determined by the number of actions with the main action and the launcher category. The main action is determined by the android.intent.action.MAIN code. The launcher category is determined by the android.intent.category.LAUNCHER code. android.intent.action.MAIN determines the first action launched by the first application. android.intent.category.LAUNCHER determines whether the first application is displayed on the phone home screen.

[0185] After determining the number of behaviors, if the number of behaviors is greater than 0, the behavior status of the behaviors in the first application is further determined. If the behavior status is disabled, the first application is considered a rogue application. The PMS then modifies the first flag bit data of the first application to set the first flag bit isRogueAPP = true.

[0186] When the number of behaviors is greater than 0 but the behavior state is in the running state, the application is considered not to be a rogue application.

[0187] 604. After a preset period of time, the PMS sends a sixth message to the security management and control module.

[0188] Among them, the sixth message is used to request the security management and control module to verify whether the first application is a rogue application, and the sixth message includes information about the first application.

[0189] For details, please refer to 504 and will not be repeated here.

[0190] 605. The security management and control module responds to the sixth message, verifies whether the first application is a rogue application, and sends a sixth reply message to the PMS.

[0191] For details, please refer to 505 and will not be repeated here.

[0192] 606. The PMS obtains a preset icon from the resource management service in response to the sixth reply message, and sends a seventh message to the desktop application.

[0193] For details, please see 506.

[0194] Obtaining preset icons from the resource management service includes the following steps:

[0195] 6061. The PMS sends an eighth message to the resource management service in response to the sixth reply message.

[0196] The eighth message is used to request the resource management service to provide the PMS with a preset icon corresponding to the rogue application.

[0197] 6062. In response to the eighth message, the resource management service searches for a preset icon corresponding to the rogue application and sends an eighth reply instruction to the PMS.

[0198] Among them, the eighth reply instruction includes a preset icon.

[0199] 607. In response to the seventh message, the desktop application displays a preset icon at the application icon location of the first application on the desktop.

[0200] For details, please refer to 507 and will not be repeated here.

[0201] Based on the technical solutions corresponding to 601-607 above, when the desktop application updates and displays the application icons of all applications in the mobile phone, all applications in the mobile phone are preliminarily screened through the PMS. Specifically, the applications other than the already determined rogue applications are first screened based on the obtained first list. Then, based on the applications other than the already determined rogue applications, non-system applications are screened again. Finally, based on the non-system applications, applications whose installation sources are not the application market are screened to obtain a second list. Compared with the first list, the number of applications in the second list will be greatly reduced, thereby reducing the complexity of data processing. Afterwards, the PMS further determines whether the first application in the second list is a rogue application, specifically, whether the number of behaviors of the first application is greater than 0. When the number of behaviors of the first application is greater than 0 and the behavior status of the behavior of the first application is prohibited, the first application is considered to be a rogue application, and the first identifier of the first application is modified. The next time a rogue application is determined, the first identifier can be directly identified to avoid repeated judgments and improve data processing efficiency. After identifying a rogue application, PMS obtains the preset icon through the resource management service and notifies the desktop application to use the preset icon to replace the original icon corresponding to the rogue application, thereby visualizing the application icon of the rogue application, and then guiding users to discover rogue applications and actively uninstall them to improve the security of the mobile phone.

[0202] Next, another visualization method of application icons provided by the embodiment of the present application will be described in detail with reference to the accompanying drawings. Figure 7 As shown, the visualization method of the application icon may include the following steps.

[0203] 701. Under preset conditions, the electronic device determines a second list based on the first list.

[0204] Among them, the preset conditions include the electronic device starting up and entering the desktop, the application in the electronic device returning to the desktop, the electronic device installing the application, and the electronic device uninstalling the application.

[0205] The first list includes application information of multiple applications, and the application information includes application package, application name, application icon, first flag bit, second flag bit and third flag bit. The first flag bit is used to identify whether the application is a rogue application, the second flag bit is used to identify whether the application is a system application, and the third flag bit is used to identify the installation source of the application.

[0206] The second list includes all applications installed on the electronic device, the second list includes non-system applications whose installation source is not the application market, and the second list includes the first application. The second list is obtained for the first time.

[0207] Optionally, the second list does not include the rogue applications that have been identified. When this is not the first time that the solution corresponding to the present application is used, the second list does not include the rogue applications that have been identified.

[0208] For specific details, please refer to 501, 5011-5013 and 502, which will not be repeated here.

[0209] 702. The electronic device determines whether the first application is a rogue application based on attribute information of the first application.

[0210] In some embodiments, 702 includes the following steps:

[0211] 7021. When the application name of the first application is empty and the application icon of the first application is transparent, the first application is a rogue application. The attribute information of the first application includes the application name of the first application and the application icon of the first application.

[0212] For specific details, please refer to 503 and 5031-5033, which will not be repeated here.

[0213] In some other embodiments, 702 includes the following steps:

[0214] 7022. If the number of behaviors of the first application is greater than 0 and the behavior status is prohibited, the first application is a rogue application. The attribute information of the first application includes the number of behaviors of the first application and the behavior status. The behavior number indicates the number of pending behaviors of the first application, and the behavior status indicates the status of the pending behaviors of the first application.

[0215] For details, please refer to 603 and will not be repeated here.

[0216] 703. In the case where the first application is a rogue application, the electronic device displays a preset icon at the application icon location of the first application on the desktop of the electronic device, where the preset icon is used to prompt the user of the rogue application.

[0217] For example, combined Figure 2 When the electronic device detects that application 1 is a rogue application, it replaces the icon of application 1 with a preset icon and displays the following Figure 8 The main interface 801 of the mobile phone shown in the figure displays a preset icon 803 at the display position 802 of the application icon of application 1.

[0218] For specific content, please refer to 506, 5061-5062 and 507, or refer to 606, 6061-6062 and 607, which will not be repeated here.

[0219] Optionally, after step 702, the method further includes:

[0220] 7023. After a preset period of time, determine whether the first application is included in the whitelist.

[0221] The whitelist includes multiple verified non-rogue applications. The default duration is 5 minutes.

[0222] 7024. If the first application is not included in the whitelist, the first application is a rogue application.

[0223] Optionally, when the first application is a rogue application, the method further includes: updating a first flag bit of the first application in the first list.

[0224] For details, please refer to 504 and 505, which will not be repeated here.

[0225] In some embodiments, under preset conditions, the electronic device can determine a second list based on a first list, the first list includes all applications installed by the electronic device, the second list includes all non-system applications whose installation source is not the application market, and the second list includes the first application; the electronic device then determines whether the first application is a rogue application based on the application name of the first application and the application icon of the first application; in the case that the first application is a rogue application, the electronic device displays a preset icon at the application icon position of the first application on the desktop of the electronic device, and the preset icon is used to prompt the user of the rogue application.

[0226] Determining whether the first application is a rogue application based on the application name of the first application and the application icon of the first application may include determining that the first application is a rogue application when the application name of the first application is empty and the application icon of the first application is transparent.

[0227] In other embodiments, under preset conditions, the electronic device can determine the second list based on the first list, the first list includes all applications installed by the electronic device, the second list includes all non-system applications whose installation source is not the application market, and the second list includes the first application; then the electronic device determines whether the first application is a rogue application based on the number of behaviors and the behavior status of the first application, the number of behaviors is used to represent the number of behaviors to be executed by the first application, and the behavior status is used to represent the status of the behaviors to be executed by the first application; in the case that the first application is a rogue application, the electronic device displays a preset icon at the application icon position of the first application on the desktop of the electronic device, and the preset icon is used to prompt the user of the rogue application.

[0228] Determining whether the first application is a rogue application based on the number of behaviors and the behavior status of the first application may include determining that the first application is a rogue application when the number of behaviors of the first application is greater than 0 and the behavior status is prohibited.

[0229] In order to realize the above functions, the above electronic device includes hardware structures and / or software modules corresponding to the execution of each function. It should be easily appreciated by those skilled in the art that, in combination with the units and algorithm steps of each example described in the embodiments disclosed herein, the embodiments of the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0230] The embodiment of the present application can divide the functional modules of the electronic device according to the above method example. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated modules can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation.

[0231] Other embodiments of the present application provide an electronic device that may include: a communication module, a memory, and one or more processors. The communication module and the memory are coupled to the processors. The memory is configured to store computer program code, including computer instructions.

[0232] The present application also provides a chip system. Figure 9 As shown, the chip system 900 includes at least one processor 901 and at least one interface circuit 902. The processor 901 and the interface circuit 902 can be interconnected via a line. For example, the interface circuit 902 can be used to receive signals from other devices (such as a memory of an electronic device). For another example, the interface circuit 902 can be used to send signals to other devices (such as the processor 901).

[0233] For example, the interface circuit 902 can read instructions stored in the memory and send the instructions to the processor 901. When the instructions are executed by the processor 901, the electronic device can perform the various steps in the above embodiment. Of course, the chip system can also include other discrete components, which are not specifically limited in the embodiments of the present application.

[0234] An embodiment of the present application also provides a computer-readable storage medium, which includes computer instructions. When the computer instructions are executed on a second electronic device, the second electronic device executes the various functions executed by the second electronic device (for example, a mobile phone) in the above method embodiment.

[0235] The embodiment of the present application further provides a computer program product. When the computer program product is run on a computer, it enables the computer to execute the various functions executed by the second electronic device (for example, a mobile phone) in the above method embodiment.

[0236] Through the description of the above implementation methods, technical personnel in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional modules is used as an example. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.

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

[0238] Units described as separate components may or may not be physically separate, and components shown as units may be one physical unit or multiple physical units, that is, they may be located in one place or distributed in multiple places. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0239] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.

[0240] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a device (which can be a single-chip microcomputer, chip, etc.) or a processor to execute all or part of the methods of each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0241] The above content is only a specific embodiment of this application, but the scope of protection of this application is not limited to this. Any changes or replacements within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. A method for visualizing an application icon, characterized in that: Applied to electronic equipment, the method includes: Under preset conditions, obtaining a first list; the first list includes all applications installed on the electronic device and application information of the applications, the application information including an application package, an application name, an application icon, a first flag bit, a second flag bit, and a third flag bit, the first flag bit being used to identify whether the application is a rogue application, the second flag bit being used to identify whether the application is a system application, and the third flag bit being used to identify an installation source of the application; Filtering all the applications in the first list according to the first flag bit, the second flag bit, and the third flag bit to determine a second list; in the case of a first screening, the second list includes non-system applications whose installation sources are not the application market among all the applications; in the case of a non-first screening, the second list includes non-system applications whose installation sources are not the application market among applications other than the determined rogue applications; the second list includes the first application; determining, based on the attribute information of the first application in the second list, that the first application is a rogue application, and updating a first flag bit of the first application; If it is determined that the first application is a rogue application, after a preset period of time, verifying that the first application is a rogue application according to a whitelist; In the case where the first application is verified to be a rogue application, displaying a preset icon at the application icon position of the first application on the desktop of the electronic device, wherein the preset icon is used to prompt the user that the application is a rogue application; The attribute information of the first application includes an application name of the first application and an application icon of the first application; and determining that the first application is a rogue application based on the attribute information of the first application includes: When the application name of the first application is empty and the application icon of the first application is transparent, the first application is a rogue application.

2. The method according to claim 1, characterized in that The second list does not include the identified rogue applications.

3. The method according to claim 1, characterized in that The attribute information of the first application includes the number and behavior status of the first application. Determining that the first application is a rogue application based on the attribute information of the first application includes: When the number of behaviors of the first application is greater than 0 and the behavior status is prohibited, the first application is a rogue application, the number of behaviors is used to represent the number of behaviors to be executed by the first application, and the behavior status is used to represent the status of the behaviors to be executed by the first application.

4. The method according to claim 1 or 3, characterized in that Verifying, based on the whitelist, that the first application is a rogue application includes: In a case where the whitelist does not include the first application, the first application is verified to be a rogue application; the whitelist includes a second application, and the second application is a plurality of verified non-rogue applications.

5. The method according to claim 4, characterized in that The whitelist includes the package name of the application package of the second application; When the first application is not included in the whitelist, verifying that the first application is a rogue application includes: comparing the package name of the application package of the first application with the package name of the application package of the second application; When the package name of the application package of the first application is inconsistent with the package name of the application package of the second application, the first application is verified to be a rogue application.

6. The method according to any one of claims 1 to 3, characterized in that The preset conditions include the electronic device booting into the desktop, the application in the electronic device returning to the desktop, the electronic device installing an application, and the electronic device uninstalling an application.

7. An electronic device, characterized in that: The electronic device comprises: a wireless communication module, a memory and one or more processors; the wireless communication module, the memory and the processor are coupled; The memory is used to store computer program code, and the computer program code includes computer instructions; when the computer instructions are executed by the processor, the electronic device executes the method according to any one of claims 1 to 6.

8. A computer-readable storage medium, characterized in that including computer instructions; When the computer instructions are executed on an electronic device, the electronic device is caused to execute the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Terminal, method of uninstalling application program thereby and storage device

    CN108052330A

  • Application program detection method and device, electronic equipment and storage medium

    CN112307466A

  • Rogue software identification method and device, electronic equipment and storage medium

    CN114282212A

  • Application security analysis method and device, equipment and storage medium

    CN114692137A

  • Method and apparatus for entering a client function module

    US20140089857A1