Application classification method, device, equipment and computer readable storage medium
By extracting the application's registry file attribute information and generating target information, automatically matching the category information to determine the application category, the problem of inefficient application classification in terminal devices is solved, and efficient automatic classification and optimized user experience is achieved.
Patent Information
- Application Number
- CN202110252038.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-03-08
- Publication Date
- 2025-02-21
- Estimated Expiration
- 2041-03-08
AI Technical Summary
When installing multiple applications in a terminal device, users need to manually judge the category of each application to achieve classification, resulting in inefficiency and poor user experience.
By obtaining the application's registry file, attribute information such as package name, activity, and permissions are extracted, and target information is generated based on this information, matching multiple category information to determine the category of the application.
It realizes automatic classification of applications, improves classification efficiency, simplifies user operation processes, optimizes user experience, and is suitable for a wide range of application scenarios.
Smart Images

Figure CN113076452B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of terminal technology, and in particular to a method, apparatus, device and computer-readable storage medium for application classification. Background Art
[0002] When multiple applications (APPs) are installed in a terminal, in order to reduce the area occupied by APP icons in the display interface and reduce the time for finding an APP to be opened, the APPs need to be classified.
[0003] In the related art, users determine the category of APPs based on their own preferences or based on the category information of APPs provided by the application store to achieve APP classification. However, relying on the user's judgment results to classify APPs is inefficient; when there are multiple APPs that need to be classified, the user needs to judge the category of each of the multiple APPs, which will take up a lot of user time and reduce user experience. Summary of the invention
[0004] The embodiments of the present application provide a method, apparatus, device and computer-readable storage medium for application classification, which can be used to improve the efficiency of APP classification. The technical solution is as follows:
[0005] On the one hand, an embodiment of the present application provides a method for application classification, the method comprising:
[0006] Get the application package of the application;
[0007] Based on the application package, obtaining a registry file of the application;
[0008] Based on the registry file, generating target information, the target information is used to indicate the category of the application;
[0009] The category of the application is determined according to the target information.
[0010] In a possible implementation manner, determining the category of the application according to the target information includes:
[0011] Matching the target information with a plurality of category information, wherein the plurality of category information is a plurality of specified information for indicating application categories;
[0012] In response to the target information successfully matching any one of the plurality of category information, the category information successfully matching is used as the category of the application.
[0013] In a possible implementation, generating target information based on the registry file includes:
[0014] Extracting attribute information from the registry file, the attribute information including at least one of a package name, an activity, and a permission;
[0015] The attribute information is directly combined to generate target information.
[0016] In a possible implementation, generating target information based on the registry file includes:
[0017] Extracting attribute information from the registry file, the attribute information including at least one of a package name, an activity, and a permission;
[0018] The attribute information is matched with a plurality of keywords, wherein the plurality of keywords correspond to the types to which the attribute information belongs; in response to a successful match between the attribute information and any one of the plurality of keywords, a target character is generated, and target information is generated based on the target character.
[0019] In a possible implementation manner, after determining the category of the application, the method further includes:
[0020] An instruction for packaging the application is received, and based on the instruction, the application is added to a classification package of the category.
[0021] In a possible implementation manner, the classification package of the category is an existing classification package of the category, or a newly created classification package of the category.
[0022] In a possible implementation, obtaining an application package of an application includes:
[0023] An application package that hooks a hook application, wherein the application is an application in an installed state.
[0024] On the other hand, an embodiment of the present application provides a device for application classification, the device comprising:
[0025] An acquisition module, used to acquire an application package of an application;
[0026] The acquisition module is further used to acquire the registry file of the application based on the application package;
[0027] A generating module, used for generating target information based on the registry file, wherein the target information is used for indicating the category of the application;
[0028] A classification module is used to determine the category of the application according to the target information.
[0029] On the other hand, an embodiment of the present application provides an electronic device, which includes a processor and a memory, wherein the memory stores at least one program code or instruction, and the at least one program code or instruction is loaded and executed by the processor to enable the electronic device to implement any of the above-mentioned application classification methods.
[0030] On the other hand, a computer-readable storage medium is also provided, in which at least one program code or instruction is stored, and the at least one program code or instruction is loaded and executed by a processor to enable a computer to implement any of the above-mentioned application classification methods.
[0031] On the other hand, a computer program or a computer program product is also provided, wherein at least one computer instruction is stored in the computer program or the computer program product, and the at least one computer instruction is loaded and executed by a processor so that the computer implements any of the above-mentioned application classification methods.
[0032] The technical solution provided by the embodiments of the present application brings at least the following beneficial effects:
[0033] The technical solution provided by the embodiment of the present application obtains the registry file of the application, generates target information based on the registry file, and determines the category of the application according to the target information. This realizes the automatic classification of the application, improves the classification efficiency of the application, simplifies the operation process of the user when classifying the application, and optimizes the user experience. In addition, for any application that includes a registry file, the solution can realize the automatic classification of the application, and has a wide range of applications. BRIEF DESCRIPTION OF THE DRAWINGS
[0034] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0035] Figure 1 It is a schematic diagram of an implementation environment of an application classification method provided in an embodiment of the present application;
[0036] Figure 2 is a flow chart of a method for application classification provided in an embodiment of the present application;
[0037] Figure 3 is a schematic diagram of a display interface of an electronic device provided in an embodiment of the present application;
[0038] Figure 4 It is a structural diagram of an application classification device provided in an embodiment of the present application;
[0039] Figure 5 It is a structural schematic diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0040] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below in conjunction with the accompanying drawings.
[0041] Figure 1 is a schematic diagram of an implementation environment of an application classification method provided in an embodiment of the present application, such as Figure 1 As shown, the implementation environment includes: an electronic device 101 and a server 102 .
[0042] The electronic device 101 may be at least one of a smart phone, a game console, a desktop computer, a tablet computer, an e-book reader, an MP3 (moving picture experts group audio layer III, dynamic image expert compression standard audio layer 3) player, an MP4 (moving picture experts group audio layer IV, dynamic image expert compression standard audio layer 4) player and a laptop computer. The electronic device 101 is used to execute the application classification method provided in the embodiment of the present application.
[0043] The electronic device 101 may generally refer to one of a plurality of electronic devices, and this embodiment is only illustrated by the electronic device 101. Those skilled in the art may know that the number of the electronic devices 101 may be more or less. For example, the electronic device 101 may be only one, or the number of the electronic devices 101 may be more. The embodiment of the present application does not limit the number and device type of the electronic devices 101.
[0044] The server 102 is a single server, or a server cluster consisting of multiple servers, or any one of a cloud computing platform and a virtualization center, which is not limited in the embodiments of the present application. The server 102 is connected to the electronic device 101 through a wired network or a wireless network. The server 102 stores an application package, and the server 102 is used to provide the application package for the electronic device 101. Of course, the server 102 may also have other functions, which are not limited in the embodiments of the present application.
[0045] Based on the above implementation environment, the present application embodiment provides a method for application classification. Figure 2 As an example, the flowchart of a method for classifying applications provided in an embodiment of the present application is shown in FIG. Figure 1 The electronic device 101 in the embodiment is executed. Figure 2As shown, the method includes the following steps 201 to 204.
[0046] In step 201, an application program package of an application is obtained.
[0047] In a possible implementation, the application package of the application is the APK (Android application package) of the application. The types of application packages of the application include, but are not limited to, application packages downloaded from an application store, application packages downloaded from a web link, or application packages received and forwarded from other devices. Exemplarily, the method of obtaining the application package of the application is to hook the application package of the application, which is an application in an installed state. When hooking the application package of the application, the application package of the application can be hooked based on any framework of the Xposed framework, the CydiaSubstrate framework, the Android Inline Hook framework, the StormHook framework, the Non-Root (superuser privileges) Hook framework, or the Non-Root Hook framework of YAHFA based on virtual applications. Of course, the application package of the application can also be hooked based on other frameworks, and the framework of the application package of the hook application is not limited in the embodiment of the present application.
[0048] In step 202, based on the application package, a registry file of the application is obtained.
[0049] The application package of the application includes multiple files, such as compiled code files, file resources, native resource files, certificates, and registry files. Exemplarily, the registry file is an AndroidManifest.xml file, and the registry file of the application is obtained by obtaining a file with a file extension of xml in the application package.
[0050] In step 203, target information is generated based on the registry file, where the target information is used to indicate the category of the application.
[0051] In a possible implementation manner, attribute information in the registry file is extracted, where the attribute information includes at least one of a package name (packageName), activity (activity) information, and permission (permission) information.
[0052] In a possible implementation, the property information in the registry file is extracted by a loop scanning method, for example, the registry file is loop scanned by a function. Exemplarily, in response to the property information including multiple sub-information, the registry file is loop scanned by multiple functions, wherein each of the multiple functions is used to extract one sub-information; for example, the package name is obtained by getPackageName(), the activity information is obtained by getPackageManager().getActivityInfo(), and the permission information is obtained by aapt (Android asset packaging tool).
[0053] Exemplarily, target information is generated based on attribute information, including but not limited to the following two methods.
[0054] Method 1: directly combine the attribute information to generate the target information.
[0055] For example, the extracted attribute information includes package name A, activity B, and permission C, and the attribute information is directly combined to generate target information ABC.
[0056] Method 2 is to match the attribute information with multiple keywords, wherein the multiple keywords correspond to the types to which the attribute information belongs; in response to the attribute information successfully matching with any of the multiple keywords, generate a target character, and generate target information based on the target character.
[0057] Exemplarily, in response to the attribute information including multiple sub-information, for any sub-information among the multiple sub-information, the any sub-information is matched with multiple keywords of the type to which the any sub-information belongs; in response to the successful matching of the any sub-information with any keyword among the multiple keywords, a target character is generated; and based on the multiple target characters, the target information is generated.
[0058] For example, the attribute information includes package name sub-information, and the multiple keywords corresponding to the package name sub-information include music, education, and shopping. If the package name sub-information successfully matches the keyword "music", target character 1 is generated, if the package name sub-information successfully matches the keyword "education", target character 2 is generated, and if the package name sub-information successfully matches the keyword "shopping", target character 3 is generated; if the package name sub-information is "XX music", in response to the package name sub-information successfully matching the keyword "music", target character 1 is generated. For another example, the attribute information also includes permission sub-information, and the multiple keywords corresponding to the permission sub-information include "allowing applications to update collected battery data" and "allowing applications to connect paired Bluetooth devices", if the permission sub-information successfully matches the keyword "allowing applications to update collected battery data", target character 1 is generated, if the permission sub-information successfully matches the keyword "allowing applications to update collected battery data", target character 2 is generated; if the permission sub-information is "allowing applications to update collected battery data", in response to the permission sub-information successfully matching the keyword "allowing applications to update collected battery data", target character 1 is generated. Wherein, if the attribute information includes multiple permission sub-information, each of the multiple permission sub-information is matched with multiple keywords respectively, and a target character group is generated according to the successfully matched permission sub-information, and the target character group includes target characters generated according to each successfully matched permission sub-information. It should be noted that the package attribute information and keywords in the embodiment of the present application are only the attribute information and keywords exemplified in the embodiment of the present application, and the types and quantities of the attribute information and keywords are not limited.
[0059] In step 204, the category of the application is determined according to the target information.
[0060] In a possible implementation, the target information is matched with multiple category information, where the multiple category information is multiple specified information for indicating application categories; in response to the target information successfully matching with any category information in the multiple category information, the successfully matched category information is used as the category of the application.
[0061] Exemplarily, the target information is matched with multiple category information, and any category information in the multiple category information includes multiple parts, and each part of the multiple parts corresponds to a part of the target information. For example, the target information is ABC, and the any category information includes a first part, a second part, and a third part, wherein the first part corresponds to part A in the target information, the second part corresponds to part B in the target information, and the third part corresponds to part C in the target information; each part in the target information is matched with the corresponding part in the any category information, and in response to each part in the target information being matched successfully with the corresponding part in the any category information, for example, each part in the target information is the same as the corresponding part in the any category information, then the match is successful, then the target information is matched successfully with the any category information, and the successfully matched category information is used as the category of the application.
[0062] Exemplarily, if any part of the target information is different from the corresponding part in the any category information, then the any part fails to match the corresponding part in the any category information, and the target information fails to match the any category information. Still taking the above target information as ABC, and any category information including the first part, the second part and the third part as an example, if the first part is A, the second part is B, and the third part is D, where D is different from C; since part C in the target information corresponds to the third part in the any category information, and C is different from D, part C fails to match the third part, and the target information ABC fails to match the any category information. If the target information fails to match multiple category information, the method of determining the category of the application includes but is not limited to: generating a new category based on the target information, and determining the new category as the category of the application.
[0063] In a possible implementation, after step 204, the application classification method further includes: receiving an instruction to package the application, and based on the instruction, adding the application to a classification package of a category. The classification package of a category includes but is not limited to: a classification package of an existing category, or a classification package of a newly created category.
[0064] Exemplarily, after determining the category of the application, the electronic device may display a prompt message, wherein the prompt message is used to prompt the user whether to add the application to the classification package of the category to which it belongs; in response to the received instruction being an instruction to package the application, based on the instruction, the application is added to the classification package of the category to which it belongs; in response to the received instruction being an instruction not to package the application, based on the instruction, the application is not added to the classification package of the category to which it belongs.
[0065] by Figure 3 The display interface of the electronic device shown is taken as an example for explanation. Figure 3The application 1 includes a classification package of education and a classification package of shopping; application 1 is an application classified as education, and based on the received instruction being an instruction to package application 1, application 1 is added to the classification package of education; application 2 is an application classified as music, and based on the received instruction being an instruction to package application 2, application 2 is added to the classification package of music, and the classification package of music is a newly created classification package.
[0066] The above method obtains the registry file of the application, generates target information based on the registry file, and determines the category of the application according to the target information. This realizes the automatic classification of the application, improves the classification efficiency of the application, simplifies the operation process of the user when classifying the application, and optimizes the user experience. In addition, for any application that includes a registry file, the solution can realize the automatic classification of the application and has a wide range of applications.
[0067] It should be noted that the above-mentioned method of application classification can reuse functions with the existing method of application installation. Exemplarily, the function of the method of application classification in the embodiment of the present application is superimposed on the application installation method, and the superimposed method is used as the method of application classification, so as to further superimpose and realize application classification on the basis of the original function of the application installation method. For example, when the application is installed, the application package of the application is obtained, and then the process of application classification in the embodiment of the above-mentioned method is performed based on the application package; after the application is installed, a prompt is displayed whether to add the application to the classification package of the category, and an instruction to package the application is received. Based on the instruction, the application is added to the classification package of the category to realize the classification of the application.
[0068] Figure 4 FIG. 1 is a schematic diagram of a structure of an application classification device provided in an embodiment of the present application, and the device is used to perform the above-mentioned application classification method. Figure 4 As shown, the device comprises:
[0069] The acquisition module 401 is used to acquire the application package of the application;
[0070] The acquisition module 401 is further used to acquire a registry file of the application based on the application package;
[0071] A generating module 402, used to generate target information based on the registry file, where the target information is used to indicate the category of the application;
[0072] The classification module 403 is used to determine the category of the application according to the target information.
[0073] In one possible implementation, the classification module 403 is used to match the target information with multiple category information, where the multiple category information is multiple specified information for indicating the application category; in response to the target information successfully matching with any category information in the multiple category information, the successfully matched category information is used as the category of the application.
[0074] Exemplarily, the generating module 402 is used to extract attribute information from the registry file, where the attribute information includes at least one of a package name, an activity, and a permission; and directly combine the attribute information to generate target information.
[0075] Exemplarily, the generation module 402 is also used to match the attribute information with multiple keywords, wherein the multiple keywords correspond to the types to which the attribute information belongs; in response to the attribute information successfully matching with any of the multiple keywords, a target character is generated, and target information is generated based on the target character.
[0076] Exemplarily, the device further comprises: a packaging module, configured to receive an instruction to package the application, and based on the instruction, add the application to a classification package of a category. Exemplarily, the classification package of the category is a classification package of an existing category, or a classification package of a newly created category.
[0077] Exemplarily, the acquisition module 401 is used to hook the application package of an application, where the application is an application in an installed state.
[0078] The above device obtains the registry file of the application, generates target information based on the registry file, and determines the category of the application according to the target information. This realizes automatic classification of the application, improves the classification efficiency of the application, simplifies the operation process of the user when classifying the application, and optimizes the user experience. In addition, for any application that includes a registry file, the solution can realize automatic classification of the application and has a wide range of applications.
[0079] It should be understood that the above Figure 4 When the device provided realizes its functions, only the division of the above-mentioned functional modules is used as an example for illustration. In practical applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the device and method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process is detailed in the method embodiment, which will not be repeated here.
[0080] Figure 5The block diagram of the structure of an electronic device 500 provided by an exemplary embodiment of the present application is shown. The electronic device 500 may be a portable terminal, such as a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III), an MP4 player (Moving Picture Experts Group Audio Layer IV), a laptop computer or a desktop computer. The electronic device 500 may also be called a user device, a portable terminal, a laptop terminal, a desktop terminal or other names.
[0081] Typically, the electronic device 500 includes a processor 501 and a memory 502 .
[0082] The processor 501 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 501 may be implemented in at least one hardware form of DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). The processor 501 may also include a main processor and a coprocessor. The main processor is a processor for processing data in an awake state, also known as a CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in a standby state. In some embodiments, the processor 501 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 501 may also include an AI (Artificial Intelligence) processor, which is used to process computing operations related to machine learning.
[0083] The memory 502 may include one or more computer-readable storage media, which may be non-transitory. The memory 502 may also include a high-speed random access memory, and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In some embodiments, the non-transitory computer-readable storage medium in the memory 502 is used to store at least one program code or instruction, which is used to be executed by the processor 501 to implement the method for application classification provided in the method embodiment of the present application.
[0084] In some embodiments, the electronic device 500 may further optionally include: a peripheral device interface 503 and at least one peripheral device. The processor 501, the memory 502 and the peripheral device interface 503 may be connected via a bus or a signal line. Each peripheral device may be connected to the peripheral device interface 503 via a bus, a signal line or a circuit board. Specifically, the peripheral device includes: at least one of a radio frequency circuit 504, a display screen 505, a camera assembly 506, an audio circuit 507, a positioning assembly 508 and a power supply 509.
[0085] The peripheral device interface 503 may be used to connect at least one peripheral device related to I / O (Input / Output) to the processor 501 and the memory 502. In some embodiments, the processor 501, the memory 502, and the peripheral device interface 503 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 501, the memory 502, and the peripheral device interface 503 may be implemented on a separate chip or circuit board, which is not limited in this embodiment.
[0086] The radio frequency circuit 504 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The radio frequency circuit 504 communicates with the communication network and other communication devices through electromagnetic signals. The radio frequency circuit 504 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals into electrical signals. Optionally, the radio frequency circuit 504 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a user identity module card, etc. The radio frequency circuit 504 can communicate with other terminals through at least one wireless communication protocol. The wireless communication protocol includes but is not limited to: the World Wide Web, a metropolitan area network, an intranet, various generations of mobile communication networks (2G, 3G, 4G and 5G), a wireless local area network and / or a WiFi (Wireless Fidelity) network. In some embodiments, the radio frequency circuit 504 may also include circuits related to NFC (Near Field Communication), which is not limited in this application.
[0087] The display screen 505 is used to display a UI (User Interface). The UI may include graphics, text, icons, videos, and any combination thereof. When the display screen 505 is a touch display screen, the display screen 505 also has the ability to collect touch signals on the surface or above the surface of the display screen 505. The touch signal can be input to the processor 501 as a control signal for processing. At this time, the display screen 505 can also be used to provide virtual buttons and / or virtual keyboards, also known as soft buttons and / or soft keyboards. In some embodiments, the display screen 505 can be one, arranged on the front panel of the electronic device 500; in other embodiments, the display screen 505 can be at least two, respectively arranged on different surfaces of the electronic device 500 or in a folding design; in other embodiments, the display screen 505 can be a flexible display screen, arranged on a curved surface or a folding surface of the electronic device 500. Even, the display screen 505 can also be set to a non-rectangular irregular shape, that is, a special-shaped screen. The display screen 505 can be made of materials such as LCD (Liquid Crystal Display), OLED (Organic Light-Emitting Diode, organic light-emitting diode).
[0088] The camera assembly 506 is used to capture images or videos. Optionally, the camera assembly 506 includes a front camera and a rear camera. Typically, the front camera is arranged on the front panel of the terminal, and the rear camera is arranged on the back of the terminal. In some embodiments, there are at least two rear cameras, which are any one of a main camera, a depth of field camera, a wide-angle camera, and a telephoto camera, so as to realize the fusion of the main camera and the depth of field camera to realize the background blur function, the fusion of the main camera and the wide-angle camera to realize the panoramic shooting and VR (Virtual Reality) shooting function or other fusion shooting functions. In some embodiments, the camera assembly 506 may also include a flash. The flash can be a monochrome temperature flash or a dual-color temperature flash. A dual-color temperature flash refers to a combination of a warm light flash and a cold light flash, which can be used for light compensation at different color temperatures.
[0089] The audio circuit 507 may include a microphone and a speaker. The microphone is used to collect sound waves from the user and the environment, and convert the sound waves into electrical signals and input them into the processor 501 for processing, or input them into the radio frequency circuit 504 to achieve voice communication. For the purpose of stereo acquisition or noise reduction, there may be multiple microphones, which are respectively arranged at different parts of the electronic device 500. The microphone may also be an array microphone or an omnidirectional acquisition microphone. The speaker is used to convert the electrical signal from the processor 501 or the radio frequency circuit 504 into sound waves. The speaker may be a traditional film speaker or a piezoelectric ceramic speaker. When the speaker is a piezoelectric ceramic speaker, it can not only convert the electrical signal into sound waves audible to humans, but also convert the electrical signal into sound waves inaudible to humans for purposes such as ranging. In some embodiments, the audio circuit 507 may also include a headphone jack.
[0090] Positioning component 508 is used to locate the current geographic location of electronic device 500 to implement navigation or LBS (Location Based Service). Positioning component 508 can be a positioning component based on the US GPS (Global Positioning System), China's Beidou system or Russia's Galileo system.
[0091] The power supply 509 is used to power various components in the electronic device 500. The power supply 509 can be an alternating current, a direct current, a disposable battery, or a rechargeable battery. When the power supply 509 includes a rechargeable battery, the rechargeable battery can be a wired rechargeable battery or a wireless rechargeable battery. A wired rechargeable battery is a battery charged through a wired line, and a wireless rechargeable battery is a battery charged through a wireless coil. The rechargeable battery can also be used to support fast charging technology.
[0092] In some embodiments, the electronic device 500 further includes one or more sensors 510 , including but not limited to: an acceleration sensor 511 , a gyroscope sensor 512 , a pressure sensor 513 , a fingerprint sensor 514 , an optical sensor 515 , and a proximity sensor 516 .
[0093] The acceleration sensor 511 can detect the magnitude of acceleration on the three coordinate axes of the coordinate system established by the electronic device 500. For example, the acceleration sensor 511 can be used to detect the components of gravity acceleration on the three coordinate axes. The processor 501 can control the display screen 505 to display the user interface in a horizontal view or a vertical view according to the gravity acceleration signal collected by the acceleration sensor 511. The acceleration sensor 511 can also be used for collecting game or user motion data.
[0094] The gyro sensor 512 can detect the body direction and rotation angle of the electronic device 500, and the gyro sensor 512 can cooperate with the acceleration sensor 511 to collect the user's 3D actions on the electronic device 500. The processor 501 can implement the following functions based on the data collected by the gyro sensor 512: motion sensing (such as changing the UI according to the user's tilt operation), image stabilization during shooting, game control, and inertial navigation.
[0095] The pressure sensor 513 can be set on the side frame of the electronic device 500 and / or the lower layer of the display screen 505. When the pressure sensor 513 is set on the side frame of the electronic device 500, it can detect the user's holding signal of the electronic device 500, and the processor 501 performs left and right hand recognition or shortcut operation according to the holding signal collected by the pressure sensor 513. When the pressure sensor 513 is set on the lower layer of the display screen 505, the processor 501 controls the operability controls on the UI interface according to the user's pressure operation on the display screen 505. The operability controls include at least one of a button control, a scroll bar control, an icon control, and a menu control.
[0096] The fingerprint sensor 514 is used to collect the user's fingerprint, and the processor 501 identifies the user's identity based on the fingerprint collected by the fingerprint sensor 514, or the fingerprint sensor 514 identifies the user's identity based on the collected fingerprint. When the user's identity is identified as a trusted identity, the processor 501 authorizes the user to perform relevant sensitive operations, which include unlocking the screen, viewing encrypted information, downloading software, paying, and changing settings. The fingerprint sensor 514 can be set on the front, back or side of the electronic device 500. When a physical button or a manufacturer logo is set on the electronic device 500, the fingerprint sensor 514 can be integrated with the physical button or the manufacturer logo.
[0097] The optical sensor 515 is used to collect the ambient light intensity. In one embodiment, the processor 501 can control the display brightness of the display screen 505 according to the ambient light intensity collected by the optical sensor 515. Specifically, when the ambient light intensity is high, the display brightness of the display screen 505 is increased; when the ambient light intensity is low, the display brightness of the display screen 505 is reduced. In another embodiment, the processor 501 can also dynamically adjust the shooting parameters of the camera component 506 according to the ambient light intensity collected by the optical sensor 515.
[0098] The proximity sensor 516, also called a distance sensor, is usually disposed on the front panel of the electronic device 500. The proximity sensor 516 is used to collect the distance between the user and the front of the electronic device 500. In one embodiment, when the proximity sensor 516 detects that the distance between the user and the front of the electronic device 500 is gradually decreasing, the processor 501 controls the display screen 505 to switch from the screen-on state to the screen-off state; when the proximity sensor 516 detects that the distance between the user and the front of the electronic device 500 is gradually increasing, the processor 501 controls the display screen 505 to switch from the screen-off state to the screen-on state.
[0099] Those skilled in the art will understand that Figure 5 The structure shown in the figure does not constitute a limitation on the electronic device 500, and may include more or less components than those shown in the figure, or combine some components, or adopt a different component arrangement.
[0100] In an exemplary embodiment, a computer-readable storage medium is also provided, in which at least one program code or instruction is stored. The at least one program code or instruction is loaded and executed by a processor to enable a computer to implement any of the above-mentioned application classification methods.
[0101] Optionally, the computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc (CD-ROM), a magnetic tape, a floppy disk, an optical data storage device, etc.
[0102] In an exemplary embodiment, a computer program or a computer program product is also provided, wherein at least one computer instruction is stored in the computer program or the computer program product, and the at least one computer instruction is loaded and executed by a processor to enable a computer to implement any of the above-mentioned application classification methods.
[0103] It should be understood that the "plurality" mentioned in this article refers to two or more. "And / or" describes the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the associated objects are in an "or" relationship.
[0104] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.
[0105] The above description is only an exemplary embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the protection scope of the present application.
Claims
1. A method for application classification, characterized in that: The method comprises: Get the application package of the application; Based on the application package, obtaining a registry file of the application; Extracting attribute information from the registry file, the attribute information including at least one of a package name, an activity, and a permission; Matching the attribute information with a plurality of keywords, wherein the plurality of keywords correspond to the types to which the attribute information belongs; generating a target character in response to a successful match between the attribute information and any one of the plurality of keywords, and generating target information based on the target character, wherein the target information is used to indicate the category of the application, wherein if the attribute information includes a plurality of permission sub-information, the target characters generated by each successfully matched permission sub-information constitute a target character group; Matching the target information with a plurality of category information, wherein the plurality of category information is a plurality of specified information for indicating application categories, wherein any category information of the plurality of category information includes a plurality of parts, and each of the plurality of parts corresponds to a part of the target information; If each part of the target information is respectively identical to the corresponding part of any of the category information, the match is successful, and the category information with the successful match is used as the category of the application; Display prompt information, the prompt information is used to prompt the user whether to add the application to the classification package of the category to which it belongs; in response to receiving an instruction to package the application, add the application to the classification package of the category to which it belongs based on the instruction.
2. The method according to claim 1, characterized in that The classification package of the category is an existing classification package of the category, or a newly created classification package of the category.
3. The method according to claim 1 or 2, characterized in that: The step of obtaining the application package of the application includes: An application package that hooks a hook application, wherein the application is an application in an installed state.
4. A device for application classification, characterized in that: The device comprises: An acquisition module, used to acquire an application package of an application; The acquisition module is further used to acquire the registry file of the application based on the application package; A generating module, configured to extract attribute information from the registry file, wherein the attribute information includes at least one of a package name, an activity, and a permission; match the attribute information with a plurality of keywords, wherein the plurality of keywords correspond to the type to which the attribute information belongs; in response to a successful match between the attribute information and any one of the plurality of keywords, generate a target character, and generate target information based on the target character, wherein the target information is used to indicate the category of the application, wherein, if the attribute information includes a plurality of permission sub-information, the target characters generated by each successfully matched permission sub-information constitute a target character group; a classification module, used for matching the target information with a plurality of category information, wherein the plurality of category information is a plurality of designated information for indicating application categories, wherein any category information in the plurality of category information includes a plurality of parts, and each of the plurality of parts corresponds to a part of the target information; if each part in the target information is respectively identical to a corresponding part in any of the category information, the match is successful, and the successfully matched category information is used as the category of the application; The packaging module is used to display prompt information, wherein the prompt information is used to prompt the user whether to add the application to the classification package of the category to which it belongs; in response to receiving an instruction to package the application, based on the instruction, the application is added to the classification package of the category to which it belongs.
5. An electronic device, characterized in that: The electronic device includes a processor and a memory, wherein the memory stores at least one program code or instruction, and the at least one program code or instruction is loaded and executed by the processor so that the electronic device implements the method for application classification as described in any one of claims 1-3.
6. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores at least one program code or instruction, and the at least one program code or instruction is loaded and executed by a processor so that the computer implements the method for application classification as described in any one of claims 1-3.
Citation Information
Patent Citations
Method, device and equipment for classifying application programs
CN103049515A