Application program management and control method and electronic equipment
Patent Information
- Application Number
- CN202480001271.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-07-31
- Filing Date
- 2024-05-31
- Publication Date
- 2025-04-01
AI Technical Summary
The risk of electronic devices being attacked due to APP jump is high, and there are security risks.
By implementing the control method of the application program in the electronic device, the control conditions are determined based on the information of the first application and the second application, and the prompt information is displayed or the redirection is prohibited based on the control results, ensuring that the APP redirection is performed only after the user authorization.
Reduces the number of attacks on electronic devices due to APP jumps, improves security, and ensures users' control over APP jumps.
Smart Images

Figure CN119744390A_ABST
Abstract
Description
Application program control method and electronic device
[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office on July 31, 2023, with application number 202310955890.0 and application name “Application Management Method and Electronic Device”, the entire contents of which are incorporated by reference into this application. Technical Field
[0002] The present application relates to the field of terminal technology, and in particular to a method for controlling an application program and an electronic device. Background Art
[0003] With the development of electronic technology and mobile Internet, various applications (APPs) can be installed in electronic devices. A user can input a trigger operation instructing an APP to jump to another APP in the interface corresponding to an APP. After the electronic device detects the user's trigger operation, the APP jump can occur, that is, the electronic device can start another APP and display the interface corresponding to the other APP.
[0004] Since one app can jump to another app at will, if the redirected app is infected with malicious programs such as viruses, malicious plug-ins, or marketing advertisements, it may cause electronic devices to be attacked and pose a security risk.
[0005] Summary of the Invention
[0006] The embodiments of the present application provide a method for managing and controlling application programs, which can reduce the risk of electronic devices being attacked due to APP jumps.
[0007] To achieve the above objectives, the present invention adopts the following technical solutions:
[0008] In a first aspect, an embodiment of the present application provides an application management method, which is applied to an electronic device, wherein the electronic device stores a correspondence between at least one management condition and a management result. Each management condition corresponds to a management result. The method includes:
[0009] Receive a first trigger operation for the first interface. The first interface corresponds to the first application, the first trigger operation is used to indicate a jump to display the second interface, the second interface corresponds to the second application, and the first application is different from the second application. In response to the first trigger operation, based on the first application information corresponding to the first application and / or the second application information corresponding to the second application, determine a first control condition from at least one control condition. Based on the control result corresponding to the first control condition, display a first prompt message, and the first prompt message is used to prompt to obtain permission to jump to display the second interface. Receive a second trigger operation for the first prompt message, and the second trigger operation is used to indicate permission to jump to display the second interface. In response to the second trigger operation, jump to display the second interface.
[0010] In the method of the present application, the electronic device can determine the first control condition based on the first application information corresponding to the first application and / or the second application information corresponding to the second application, thereby further determining the control result corresponding to the first control condition. Based on the control result corresponding to the first control condition, a first prompt message for obtaining permission to jump to display the second interface from the user can be displayed. After obtaining the user's authorization, the second interface can be jumped to display, which can reduce the number of attacks on the electronic device due to APP jumps and improve security.
[0011] In combination with the first aspect, in one possible design, the first application information includes at least one of the application type and authentication type of the first application, and the first application's calling permission for the second application. The second application information includes at least one of the authentication type, advertisement type, jump control type, and attribution type of the second application. The first interface includes advertisements and jump controls associated with the second application, and the jump control type is the type of jump control associated with the second application included in the first interface. The advertisement type of the second application is the type of advertisement associated with the second application included in the first interface.
[0012] In combination with the first aspect, in one possible design, a third trigger operation is received for the first prompt information, the third trigger operation being used to indicate prohibiting jumping to display of the second interface. In response to the third trigger operation, the first prompt information is closed and the first interface remains displayed.
[0013] In this solution, if the electronic device receives a third trigger operation indicating that the second interface should not be displayed after the first prompt is displayed, the interface jump will not occur and the first interface will remain displayed. This can reduce the number of attacks on electronic devices caused by app jumps and improve security.
[0014] In conjunction with the first aspect, in one possible design, the control result includes a first control result, a second control result, and a third control result. The first control result is used to indicate the display of a prompt message, the second control result is used to indicate the prohibition of an interface jump, and the third control result is used to indicate the execution of an interface jump. If the control result corresponding to the first control condition is the first control result, the first prompt message is displayed on the first interface.
[0015] In this solution, multiple possible implementation methods of the control results are provided, and the electronic device can perform corresponding responses based on the different control results received.
[0016] In conjunction with the first aspect, in one possible design, if the control result corresponding to the first control condition is the second control result, the first interface remains displayed. If the control result corresponding to the first control condition is the third control result, the second interface is displayed.
[0017] In this solution, the electronic device can directly jump to the second interface only if the control result corresponding to the first control condition is the third control result. Otherwise, the electronic device will not jump to the second interface or will jump to the second interface after obtaining user authorization. This can reduce the number of attacks on the electronic device caused by app jumps and improve security.
[0018] In conjunction with the first aspect, in one possible design, a fourth trigger operation is received for the second interface. The fourth trigger operation is used to instruct a jump to display of a third interface, where the third interface corresponds to a third application. The third application is different from the second application. In response to the fourth trigger operation, a second control condition is determined from at least one control condition based on second application information corresponding to the second application and / or third application information corresponding to the third application.
[0019] Based on the control result corresponding to the second control condition, a second prompt message is displayed, and the second prompt message is used to prompt to obtain permission to jump to display the third interface.
[0020] In this solution, the second application can serve not only as a callee application but also as a caller application. When the electronic device receives the fourth trigger operation input by the user on the second interface, it can determine the second control condition based on the second application information corresponding to the second application and / or the third application information corresponding to the third application. And execute the corresponding response based on the control result corresponding to the second control condition. It can reduce the number of attacks on electronic devices due to APP jumps and improve security.
[0021] In conjunction with the first aspect, in one possible design, if the target control condition in at least one control condition is that the caller application has calling permission on the callee application, the control result corresponding to the target control condition is used to instruct the execution of an interface jump. If the target control condition in at least one control condition is that the caller application does not have calling permission on the callee application, the control result corresponding to the target control condition is used to instruct the prohibition of the interface jump.
[0022] In this scheme, the correspondence between various control conditions and control results is given.
[0023] In combination with the first aspect, in a possible design, if the target control condition in at least one control condition is that the jump control type applied by the caller is a release link type, the control result corresponding to the target control condition is used to indicate the display of prompt information.
[0024] In this scheme, a correspondence between control conditions and control results is given.
[0025] In combination with the first aspect, in a possible design, the control condition is arranged based on at least one preset command.
[0026] In this solution, the preset command for editing the control conditions is a custom command for this application. Based on the combination of different commands, multiple preset conditions can be obtained.
[0027] In combination with the first aspect, in one possible design, the electronic device obtains at least one control condition from the server according to a preset time period.
[0028] In this solution, electronic devices can regularly obtain control conditions from the server to update the locally stored control conditions, facilitate subsequent direct calls, and save call time.
[0029] In combination with the first aspect, in a possible design, the electronic device includes an application management service module and an ecological management service module, and a system application is installed in the electronic device. After the electronic device receives a first trigger operation for the first interface, the application management service module obtains first application information corresponding to the first application and second application information corresponding to the second application. The ecological management service module determines a first control condition from at least one control condition based on the first application information and / or the second application information. The ecological management service module obtains a control result corresponding to the first control condition based on the correspondence between at least one control condition and the control result. If the control result is used to indicate an execution interface jump, the system application jumps to display the second interface.
[0030] In this solution, an internal implementation method is provided for an electronic device to execute a corresponding response based on the management and control results.
[0031] In conjunction with the first aspect, in one possible design, if the control result is used to instruct the display of a prompt message, the system application displays the first prompt message. If the control result is used to instruct the prohibition of interface jump, the system application displays the first interface. If the control result is used to instruct the execution of the interface jump, the first application jumps to display the second interface.
[0032] In this solution, another internal implementation method is provided for the electronic device to execute a corresponding response based on the management and control results.
[0033] In a second aspect, embodiments of the present application provide an electronic device. The electronic device includes a memory and one or more processors, the memory and the processors being coupled; the memory is configured to store computer program code, the computer program code comprising computer instructions, and when the processor executes the computer instructions, the electronic device executes the method described in the first aspect and any possible design thereof.
[0034] In a third aspect, embodiments of the present application provide a chip system. The chip system includes one or more interface circuits and one or more processors. The interface circuits and processors are interconnected via wiring. The interface circuits are configured to receive signals from a memory of an electronic device and send signals to the processors. The signals include computer instructions stored in the memory. When the processors execute the computer instructions, the electronic device executes the method described in the first aspect and any possible design thereof.
[0035] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium comprising computer instructions. When the computer instructions are executed on an electronic device, the electronic device executes the method described in the first aspect and any possible design thereof.
[0036] In a fifth aspect, embodiments of the present application provide a computer program product that, when executed on a computer, causes the computer to execute the method described in the first aspect and any possible design thereof. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] FIG1A is a schematic diagram of an application jump scenario provided by the prior art;
[0038] FIG1B is a schematic diagram of another application jump scenario provided by the prior art;
[0039] FIG2A is a schematic diagram of an implementation of application jump provided by the prior art;
[0040] FIG2B is a schematic diagram of another implementation of application jump provided by the prior art;
[0041] FIG3 is a hardware structure diagram of an electronic device provided in an embodiment of the present application;
[0042] FIG4 is a software structure diagram of an electronic device provided in an embodiment of the present application;
[0043] FIG5 is a schematic diagram of an application interface provided in an embodiment of the present application;
[0044] FIG6A is a schematic diagram of an interface switching for application jump provided in an embodiment of the present application;
[0045] FIG6B is a schematic diagram of another interface switching for application jump provided in an embodiment of the present application;
[0046] FIG6C is a schematic diagram of an interface without APP jump provided in an embodiment of the present application;
[0047] FIG7 is a schematic diagram of an application management and control system provided in an embodiment of the present application;
[0048] FIG8 is a schematic diagram of interaction between an electronic device and a server provided in an embodiment of the present application;
[0049] FIG9 is a schematic diagram of the interaction between an ecosystem management service module and an application management service module provided in an embodiment of the present application;
[0050] FIG10 is a schematic diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0051] The technical solutions in the embodiments of the present application will be described below in conjunction with the accompanying drawings in the embodiments of the present application. In the description of the embodiments of the present application, unless otherwise specified, " / " means or, for example, A / B can mean A or B; "and / or" in this article is merely a description of the association relationship of associated objects, indicating that three relationships can exist, for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, in the description of the embodiments of the present application, "multiple" means two or more than two.
[0052] In the following, 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 the technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of this embodiment, unless otherwise specified, "plurality" means two or more.
[0053] With the development of electronic technology and mobile Internet, various APPs can be installed in electronic devices, and users can use the APPs installed in electronic devices for social interaction, shopping, resource acquisition, etc. Among them, there may be cooperation between different APPs. The user can perform a trigger operation in the interface corresponding to an APP (for example, clicking a control or link). After the electronic device detects the user's trigger operation, an APP jump may occur, that is, the electronic device can start another APP and display the interface corresponding to the other APP.
[0054] For example, referring to Figure 1A , when a shopping app is running on an electronic device, it may display a shopping interface 101. This interface 101 includes a payment control 102 corresponding to a payment app. When the electronic device detects a selection of payment control 102, it may initiate an app redirect. Specifically, the electronic device may launch the payment app and display its corresponding payment interface 103.
[0055] For another example, referring to FIG1B , when the application manager app is running on an electronic device, an application installation interface 111 may be displayed. Application installation interface 111 includes an installation control 112 for installing the target app. When the electronic device detects a selection operation inputted to installation control 112, an app jump may occur. That is, the electronic device may install the target app. After completing the installation of the target app, the electronic device may launch the target app and display an interface 113 corresponding to the target app.
[0056] In an embodiment of the present application, controls such as the above-mentioned payment controls and installation controls that trigger an APP jump in an electronic device may be referred to as jump controls. In the display interface corresponding to the APP, multiple jump controls may be included, and malicious jump controls may exist in these jump controls. For example, malicious jump controls such as triggering an electronic device to install a bundled APP so that the electronic device jumps to display the interface corresponding to the bundled APP. If the user selects these malicious jump controls, the electronic device will jump to the APP. If malicious programs such as viruses, malicious plug-ins, marketing advertisements, etc. are written into the APP after the jump, the electronic device may be attacked, posing a security risk.
[0057] In a related technology, static rules can be set for each app installed in an electronic device. Taking App1 as an example, the static rules set for App1 may include whether App1's components are open to the public, whether other apps are allowed to access App1, which system permissions App1 can use, and the permission level of each system permission used by App1.
[0058] When the electronic device receives an event that triggers an APP jump, for example, when the electronic device receives an event that triggers a jump from APP1 to APP2, it can determine whether to jump based on static rules corresponding to APP1 and / or APP2.
[0059] For example, referring to Figure 2A , the static rule set for APP2 may include that component 1 in APP2 is open to the public. Since component 1 in APP2 is open to the public, when the electronic device receives an event that triggers a jump from APP1 to APP2, APP1 can explicitly call component 1 in APP2 through the electronic device's system. That is, APP1 can directly access or pull up the page corresponding to component 1 in APP2.
[0060] Alternatively, referring to FIG2A , the static rules set for APP2 may further include a behavior (also referred to as action in the embodiment of the present application) 1 that APP2 supports implicit access. Since APP2 supports action 1 for implicit access, when the electronic device receives an event that triggers a jump from APP1 to APP2, APP1 may implicitly call component 1 in APP2 through the electronic device's system. That is, APP1 may access or pull up the page corresponding to the component (e.g., component 1) in APP2 that is open to the outside world through action 1.
[0061] For another example, referring to FIG2B , the static rules set for APP2 may include that component 1 in APP2 is open to the outside world. The static rules set for APP1 may include setting component 1 of APP2 to a whitelist, that is, APP1 is allowed to access component 1 of APP2. Since component 1 in APP2 is open to the outside world and APP1 is allowed to access component 1 of APP2, when the electronic device receives an event that triggers a jump from APP1 to APP2, APP1 can directly call component 1 in APP2, that is, APP1 can directly access or pull up the page corresponding to component 1 in APP2.
[0062] Alternatively, referring to FIG2B , the static rule set for APP2 may include opening Component 2 in APP2 to the public. The static rule set for APP1 may include setting Component 2 of APP2 to a blacklist, i.e., APP1 is not allowed to access Component 2 of APP2. Although Component 2 in APP2 is open to the public, since APP1 is not allowed to access Component 2 of APP2, when the electronic device receives an event triggering a jump from APP1 to APP2, APP1 cannot call Component 2 in APP2, i.e., APP1 cannot access or pull up the page corresponding to Component 2 in APP2.
[0063] Although the above method can control whether the electronic device performs an APP jump based on the static rules set for each APP installed in the electronic device when the electronic device receives an event that triggers the APP to jump. However, the above method is not applicable to some special scenarios. For example, when an electronic device receives an event that triggers a jump from APP1 to APP2, if APP2 is not an APP installed in the electronic device, there will be no static rules set for APP2 in the electronic device. In this scenario, since the electronic device cannot control whether to perform an APP jump, the electronic device will jump directly from APP1 to APP2. If malicious programs such as viruses, malicious plug-ins, marketing advertisements, etc. are written into APP2, it may still cause the electronic device to be attacked, posing a security risk.
[0064] To address the above issues, embodiments of the present application provide an application management method that can determine target management conditions and corresponding management results based on application information of the caller application and the callee application, so as to manage whether to perform an APP redirect when receiving an input instruction for performing an APP redirect. This method can reduce the risk of electronic devices being attacked due to APP redirection and improve the security of electronic devices.
[0065] The application management and control methods provided in the embodiments of the present application can be applied to electronic devices. For example, the electronic devices in the embodiments of the present application can be portable computers (such as mobile phones), tablet computers, laptop computers, personal computers (PCs), wearable electronic devices (such as smart watches), augmented reality (AR) and virtual reality (VR) devices, in-vehicle computers, etc. The following embodiments do not impose any special restrictions on the specific form of the electronic devices.
[0066] FIG3 is a schematic structural diagram of an electronic device 100. As shown in FIG3, 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.
[0067] It should be understood that the structure illustrated in the embodiments of the present invention does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown, or may combine or separate certain components, or arrange the components differently. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0068] The processor 110 may include one or more processing units. For example, the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU). The different processing units may be independent devices or integrated into one or more processors.
[0069] The controller may be the nerve center and command center of the electronic device 100. The controller may generate an operation control signal according to the instruction operation code and the timing signal to complete the control of fetching and executing instructions.
[0070] Processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in processor 110 is a cache memory. This memory can store instructions or data that have just been used or are being recycled by processor 110. If processor 110 needs to use the same instruction or data again, it can directly access the memory. This avoids duplicate accesses, reduces processor 110 latency, and thus improves system efficiency.
[0071] In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface.
[0072] Electronic device 100 implements display functionality through a GPU, display screen 194, and an application processor. A GPU is a microprocessor for image processing that connects display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 110 may include one or more GPUs that execute program instructions to generate or modify display information.
[0073] Display screen 194 is used to display images, videos, and the like. Display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a MiniLED, a MicroLED, a Micro-OLED, or a quantum dot light-emitting diode (QLED). In some embodiments, electronic device 100 may include one or N display screens 194, where N is a positive integer greater than one.
[0074] 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 electronic device 100. The external memory card communicates with the processor 110 via the external memory interface 120 to implement data storage functions. For example, files such as music and videos can be stored on the external memory card.
[0075] The internal memory 121 can be used to store computer executable program codes, which include instructions. The processor 110 executes various functional applications and data processing of the electronic device 100 by running the instructions stored in the internal memory 121. The internal memory 121 may include a program storage area and a data storage area. Among them, the program storage area can store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc. The data storage area can store data created during the use of the electronic device 100 (such as audio data, a phone book, etc.), etc. In addition, the internal memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc.
[0076] The software system of the electronic device 100 can adopt a layered architecture, an event-driven architecture, a micro-kernel architecture, a micro-service architecture, or a cloud architecture. In the embodiment of the present invention, the Android system with a layered architecture is used as an example to illustrate the software structure of the electronic device 100.
[0077] FIG4 is a block diagram of the software structure of the electronic device 100 according to an embodiment of the present invention.
[0078] A layered architecture divides software into several layers, each with distinct roles and responsibilities. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers: the application layer, the application framework layer, the Android runtime and system libraries, and the kernel layer.
[0079] The application layer can include a series of application packages.
[0080] As shown in Figure 4, the application package may include applications such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, and short message. There may be collaboration between the applications. For example, the display interface corresponding to one application may include a jump control for jumping to the display interface corresponding to another application.
[0081] The application framework layer provides an application programming interface (API) and programming framework for applications in the application layer. The application framework layer includes some predefined functions.
[0082] As shown in FIG4 , the application framework layer may include a window manager, a content provider, a view system, a telephony manager, a resource manager, a notification manager, and the like.
[0083] The window manager is used to manage window programs. The window manager can obtain the display size, determine whether there is a status bar, lock the screen, take screenshots, etc.
[0084] Content providers are used to store and retrieve data and make it accessible to applications. The data may include videos, images, audio, calls made and received, browsing history and bookmarks, phone books, etc.
[0085] The view system includes visual controls, such as those for displaying text and images. The view system is used to build applications. A display interface can consist of one or more views. For example, a display interface containing a text notification icon might include a view for displaying text and a view for displaying images.
[0086] The phone manager is used to provide communication functions of the electronic device 100, such as management of call status (including answering, hanging up, etc.).
[0087] The resource manager provides various resources for applications, such as localized strings, icons, images, layout files, video files, and so on.
[0088] The Notification Manager allows applications to display notifications in the status bar. These messages can be displayed briefly and then disappear automatically without user interaction. For example, the Notification Manager is used to notify users of completed downloads and message reminders. The Notification Manager can also display notifications in the top status bar of the system as icons or scrolling text, such as notifications from background applications, or as dialog windows on the screen. Examples include text messages in the status bar, beeps, vibrations on electronic devices, and flashing indicator lights.
[0089] The Android runtime includes the core library and the virtual machine. The Android runtime is responsible for scheduling and management of the Android system.
[0090] The core library consists of two parts: one is the function that needs to be called by the Java language, and the other is the Android core library.
[0091] The application layer and application framework layer run in a virtual machine. The virtual machine executes Java files in the application layer and application framework layer as binary files. The virtual machine manages object lifecycles, stack management, thread management, security and exception management, and garbage collection.
[0092] The system library can include multiple functional modules, such as surface manager, media library, 3D graphics processing library (such as OpenGL ES), 2D graphics engine (such as SGL), etc.
[0093] The surface manager is used to manage the display subsystem and provide fusion of 2D and 3D layers for multiple applications.
[0094] 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.
[0095] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.
[0096] A 2D graphics engine is a drawing engine for 2D drawings.
[0097] The kernel layer is the layer between hardware and software. The kernel layer includes at least display driver, camera driver, audio driver, and sensor driver.
[0098] In some embodiments, the application layer may further include system applications, and the kernel layer may further include an application management service module and an ecosystem management service module.
[0099] The application management service module is used to detect APP jump scenarios, and when an APP jump scenario is detected, it requests the ecological management service module to obtain the control results.
[0100] The ecological management service module is used to determine a target control condition in at least one control condition based on application information of an application associated with the APP jump, and to determine a control result corresponding to the target control condition.
[0101] The at least one control condition is obtained by the system application from the server according to a preset time period. Alternatively, the at least one control condition may be pre-set in the system application.
[0102] The application management service module is also used to respond to the control result determined by the ecosystem management service module after obtaining the control result. For example, if the control result determined by the ecosystem management service module is used to indicate the display of prompt information, the application management service module sends an instruction to the system application to indicate the display of prompt information. For another example, if the control result determined by the ecosystem management service module is used to indicate the prohibition of interface jump, the application management service module sends an instruction to the system application to indicate the prohibition of interface jump. Or if the control result determined by the ecosystem management service module is used to indicate the execution of interface jump, the application management service module sends an instruction to the first application to indicate the execution of interface jump.
[0103] In some embodiments, multiple apps may be installed on an electronic device. A user may click or select any app to instruct the electronic device to launch the app. After the electronic device launches the app, it may display the application interface corresponding to the app. For example, referring to FIG5 , after the electronic device receives a click or selection operation from the user for application 501, it may launch application 501 and display application interface 502 corresponding to application 501.
[0104] In some embodiments, there may be cooperation between APPs to achieve the purpose of attracting traffic or promoting. For example, the application interface corresponding to one APP includes a jump control of another APP. The user can input a trigger operation for the jump control to the electronic device to instruct the electronic device to jump to the APP, thereby displaying the application interface of another APP. After the electronic device receives the trigger operation for the jump control input by the user, it can determine whether to jump to display the application interface of another APP in response to the trigger operation.
[0105] For ease of description, in an embodiment of the present application, the application interface displayed by the electronic device before the APP jump is referred to as the first interface, and the APP corresponding to the first interface is referred to as the first application. The application interface displayed by the electronic device after the APP jump is referred to as the second interface, and the APP corresponding to the second interface is referred to as the second application. The first application is different from the second application. In addition, the trigger operation for the jump control input by the user on the first interface received by the electronic device can be referred to as the first trigger operation, and the first trigger operation is used to instruct the jump to display the second interface.
[0106] For example, referring to Figure 5 , application interface 502 includes a jump control 503 corresponding to the second application. The user can click on jump control 503 to input a first trigger operation to the electronic device for jump control 503. In response to receiving the first trigger operation, the electronic device can determine whether to jump to display the application interface of the second application.
[0107] In some embodiments, the electronic device may, in response to a first trigger operation, obtain first application information corresponding to the first application and second application information corresponding to the second application, and determine a first control condition from at least one control condition based on the first application information corresponding to the first application and / or the second application information corresponding to the second application.
[0108] In some embodiments, referring to Table 1, the first application information may include at least one of the application type and authentication type of the first application, and the first application's calling permission for the second application (also referred to as a blacklist type in the embodiment of the present application).
[0109] It should be noted that the first application information may also include the package name of the first application, the account ID of the account logged in to the first application, the process ID of the first application, the application parameters of the first application (for example, param parameters, action parameters, uir parameters), etc., which are not limited in the embodiments of this application.
[0110] The second application information may include at least one of the authentication type of the second application, the advertisement type, the jump control type, and the attribution type of the second application (which may also be referred to as the household registration type in the embodiment of the present application).
[0111] The application type is the service attribute of the corresponding APP, and can include at least one of the following: Hongmeng APP, non-broad-caliber meta-service, Android APP, quick application, and broad-caliber meta-service.
[0112] The authentication type is used to identify the type of platform that authenticates the corresponding app. Before an app is listed on a platform such as the app market or service market, the corresponding platform will authenticate the app to check whether the app's relevant information complies with the listing regulations. The type of platform used to check whether the app's relevant information complies with the listing regulations is the app's authentication type. The authentication type can include at least one of the following: app market, service market, negative one screen, quick application center, internal authentication media, external authentication media, and other authentication media.
[0113] The blacklist type may include at least one of a blacklist and a non-blacklist. A blacklist means that the corresponding first application has the permission to call the second application, and a non-blacklist means that the corresponding first application does not have the permission to call the second application.
[0114] The household registration book type may include at least one of the same application series, the same developer, and the same developer cluster. The same application series means that there is a direct association between the corresponding first application and the second application. For example, the first application is version 1.0 of a game application, and the second application is version 2.0 of the game application. There is a direct association between the first application and the second application, and the second application and the first application are in the same application series. For another example, the first application is a shopping application, and the second application is a payment application used to support payments on the shopping application. There is a direct association between the first application and the second application, and the household registration book type of the second application with respect to the first application is the same application series.
[0115] The same developer means that the first application and the second application are developed by the same developer. For example, if the first application and the second application are both developed by developer 1, then the account type of the second application for the first application is developed by the same developer.
[0116] A same-developer cluster means that the developers of the first and second apps belong to the same development team. For example, if the first app was developed by Developer 1 and the second app was developed by Developer 2, and if both Developer 1 and Developer 2 belong to Development Team 1, the second app's account type for the first app is the same-developer cluster.
[0117] The jump control type is used to characterize the type of jump control associated with the second application included in the first interface. The jump control type can include a details page link, and the link to open the details page is at least one of an APP in the account book of the first application, a release link, other links, and a quick application link. The APP in the account book of the first application is an APP in the same series of applications as the first application; or an APP developed by the same developer as the first application; or an APP in the same developer cluster as the first application, etc., which are not limited in the embodiments of this application.
[0118] The advertisement type is used to characterize the type of advertisement associated with the second application included in the first interface. The advertisement type may include at least one of the application monetization advertisement (AGD Pro) type and the marketing advertisement (ADS (PPS)) type.
[0119] It should be noted that the second application information may also include the package name of the second application, the account ID of the account logged in to the second application, the process ID of the second application, the application parameters of the second application (for example, param parameters, action parameters, uir parameters), etc., which are not limited in the embodiments of this application.
[0120] Table 1
[0121] Whether for the first application or the second application, for part of the application information, different values can be used to represent the application information as shown in Table 1, so as to convert the application information into a language that can be recognized by the electronic device.
[0122] For example, if the first application information indicates the application type of the first application, "1" can be used to indicate that the first application is a HarmonyOS app; "2" can be used to indicate that the first application is a non-broad-scope meta-service app; "3" can be used to indicate that the first application is an Android app; "2" can be used to indicate that the first application is a quick app; and "5" can be used to indicate that the first application is a broad-scope meta-service app. If the application type of the first application does not belong to any of the above application types, "0" can be used to indicate the application type of the first application.
[0123] For another example, if the second application information is used to indicate the type of advertisement presented by the second application in the first interface corresponding to the first application, "1" can be used to indicate that the advertisement type corresponding to the second application is AGD Pro; and "2" can be used to indicate that the advertisement type corresponding to the second application is ADS (PPS). If the advertisement type of the second application is neither AGD Pro nor ADS (PPS), "0" can be used to indicate the advertisement type of the second application.
[0124] In some embodiments, the control conditions may be pre-stored in the electronic device. After receiving the first trigger operation input by the user, the electronic device may directly retrieve the control conditions. Alternatively, the control conditions may be stored in a server connected to the electronic device. After receiving the first trigger operation input by the user, the electronic device may send a request to the server for obtaining the control conditions, thereby obtaining the control conditions from the server.
[0125] In some embodiments, if the control conditions are stored in a server connected to the electronic device, the electronic device may also send a request to the server to obtain the control conditions at a preset time period to update the locally obtained control conditions. For example, the electronic device may send a request to the server to obtain the control conditions every 24 hours to update the locally obtained control conditions.
[0126] In some embodiments, control conditions are used to express control scenarios for corresponding applications. These control conditions are compiled based on at least one preset command (also referred to as a DSL command in this embodiment) from a preset command set (also referred to as a DSL command set in this embodiment). A DSL command is a custom command defined by this application.
[0127] The DSL commands customized by this application may be shown in Table 2 below:
[0128] Table 2
[0129] In the table above, caller represents the caller application. The caller application is the application corresponding to the interface displayed by the electronic device before the APP jump occurs, for example, the first application in the embodiment of this application. Target represents the callee application. The callee application is the application corresponding to the interface displayed by the electronic device after the APP jump occurs, for example, the second application in the embodiment of this application.
[0130] The "t" value in different DSL commands has different meanings. For example, for the IS_JUMP_TYPE command, IS_JUMP_TYPE(caller, want, "1") means jumping into the caller application, IS_JUMP_TYPE(caller, want, "2") means jumping out of the caller application, and IS_JUMP_TYPE(caller, want, "2") means jumping inside the caller application.
[0131] Different combinations of DSL commands customized based on this application can be compiled into different control conditions.
[0132] For example, based on the IS_JUMP_TYPE, EQUAL, AND, GET_TAG and BUNDLENAME commands, it can be arranged into the control conditions AND(IS_JUMP_TYPE(caller, want,"2"), EQUAL(GET_TAG(BUNDLENAME(caller),"blackListType"),"1")). Among them, IS_JUMP_TYPE(caller, want,"2") means jumping out of the caller application. blackListType represents the blacklist type. Combined with Table 1, "1" can be used to represent the blacklist and "0" can be used to represent the non-blacklist, then EQUAL(GET_TAG(BUNDLENAME(caller),"blackListType"),"1") indicates that the caller application is a blacklist application. The control condition is expressed as: jump out of the caller application and the caller application is a blacklist application. Among them, the caller application is a blacklist application, that is, the caller application does not have the calling permission to the callee application.
[0133] For another example, the IS_JUMP_TYPE, EQUAL, AND, GET_TAG, and BUNDLENAME commands can also be compiled into the control condition AND(IS_JUMP_TYPE(caller, want, "2"), EQUAL(GET_TAG(BUNDLENAME(caller),"blackListType"), "0")). Combined with Table 1, since "0" indicates non-blacklisted, EQUAL(GET_TAG(BUNDLENAME(caller),"blackListType"), "0" indicates that the caller application is not a blacklisted application. This control condition is expressed as: jumping out of the caller application and the caller application is not a blacklisted application. Among them, the caller application is a non-blacklisted application, which means that the caller application has calling permission on the callee application.
[0134] For another example, the GET_DETAIL_APPID, OR, EQUAL, GET_QA_PKG, and BUNDLENAME commands can also be compiled into control conditions OR(GET_DETAIL_APPID(want), 1), EQUAL(GET_QA_PKG(BUNDLENAME(Target), "type of household") "8")). Among them, type of household indicates the household registration type, and GET_DETAIL_APPID(want), 1 indicates entering the details page. Combined with Table 1, the control condition is expressed as: entering the details page or the household registration type of the callee application is the same developer type.
[0135] For another example, the NOT, IS_COMMON_LINK, and IS_PASS_LINK commands can be arranged into a control condition: NOT((IS_COMMON_LINK(Target, want), "1")) AND(IS_PASS_LINK(Target, want), "1"). This control condition indicates that the type of the jump control used by the callee is neither a common link type nor a pass link type.
[0136] For another example, the AND, URI, GREATER, and PARAM commands can also be arranged into control conditions AND(URI(caller, want), "0"), GREATER((PARAM(caller, want), (PARAM(Target, want)))). The control condition then indicates that the URI (Uniform Resource Identifier) of the caller application is not obtained, and the PARAM parameter of the caller application is greater than the PARAM parameter of the callee application.
[0137] For another example, the AND, URI, LESS, and PARAM commands can also be arranged into the control condition AND(URI(caller, want), "0"), LESS((PARAM(caller, want), (PARAM(Target, want)))). The control condition then indicates that the URI (Uniform Resource Identifier) of the caller application is not obtained, and the PARAM parameters of the caller application are less than the PARAM parameters of the callee application.
[0138] For another example, the GET_SERISE_TYPE command can be further configured as a control condition GET_SERISE_TYPE((BUNDLENAME(Target, want), BUNDLENAME(caller, want)), "1"). This control condition indicates that a household registration relationship exists between the caller application and the callee application.
[0139] For another example, the APPEND command can be programmed into a control condition APPEND((ACTION(caller, want), ".temp"), "0"). This control condition indicates that the additional character ".temp" applied by the caller was not obtained.
[0140] For another example, the IS_PASS_LINK command can also be compiled into a control condition IS_PASS_LINK((Target, want), "1"), which indicates that the type of the jump control applied by the callee is a pass link type.
[0141] In some embodiments, the first control condition is a control condition corresponding to the first application information and / or the second application information in at least one control condition.
[0142] For example, in a scenario where a jump occurs from a first application to a second application, based on the first application information and / or the second application information, it can be determined that the first application's permission type for the second application is blacklisted. In this case, the control condition "jumping from the first application and the first application is a blacklisted application" can be determined as the first control condition.
[0143] For another example, in a scenario where a redirect occurs from a first application to a second application, based on the first application information and the second application information, it can be determined that the type of advertisement presented by the second application in the first interface corresponding to the first application is AGD Pro. In this case, the control condition "jumping out of the first application and the advertisement type corresponding to the second application is AGD Pro" can be determined as the first control condition.
[0144] In some embodiments, each control condition corresponds to a control result. The control results may include a first control result, a second control result, and a third control result. The first control result indicates whether to display a prompt message. The second control result indicates whether to prohibit an interface jump. The third control result indicates whether to execute an interface jump.
[0145] For example, the control condition of "jumping out of the caller application and the caller application is a blacklisted application" may correspond to the second control result;
[0146] The control condition of "jumping out of the caller application and the caller application is not a blacklisted application" can correspond to the third control result;
[0147] The control condition "the household registration type of the user entering the details page or the called user's application is the same as the developer's type" can correspond to the first control result;
[0148] The control condition "the type of the jump control applied by the callee is neither a common link type nor a pass link type" can correspond to the second control result;
[0149] The control condition of "the URI (Uniform Resource Identifier) of the caller application is not obtained, and the PARAM parameter of the caller application is greater than the PARAM parameter of the callee application" may correspond to the second control result;
[0150] The control condition of "the URI of the caller application is not obtained, and the PARAM parameter of the caller application is smaller than the PARAM parameter of the callee application" may correspond to the second control result;
[0151] The control condition "there is a household registration relationship between the caller application and the callee application" can correspond to the third control result;
[0152] The control condition "failed to obtain the additional character ".temp" applied by the caller" may correspond to the first control result;
[0153] The control condition that "the type of the jump control applied by the callee is a release link type" may correspond to the first control result.
[0154] In some embodiments, the correspondence between each control condition and the control result can be pre-set in the electronic device. Alternatively, the correspondence between each control condition and the control result can be set in the server. The electronic device can obtain the correspondence between each control condition and the control result from the server.
[0155] In some embodiments, the electronic device may obtain a control result corresponding to the first control condition based on the determined first control condition, and may execute a corresponding response based on the control result corresponding to the first control condition.
[0156] In some embodiments, if the control result corresponding to the first control condition is the first control result, the electronic device may display a first prompt message on the first interface, wherein the first prompt message is used to obtain permission to jump to display the second interface.
[0157] If the electronic device receives a second trigger operation input by the user indicating that the jump is allowed, the electronic device can jump to display the second interface in response to the second trigger operation. That is, after the electronic device receives the second trigger operation, the APP jump and interface switching occur.
[0158] If the electronic device receives a third trigger operation input by the user indicating that the jump is prohibited, the electronic device can respond to the third trigger operation by closing the first prompt information and maintaining the first interface. That is, after the electronic device receives the third trigger operation, the APP jump and interface switching will not occur.
[0159] For example, referring to FIG6A or FIG6B , the electronic device may display a first prompt message 602 in the first interface 601. The first prompt message 602 may be displayed in the form of a pop-up window. The first prompt message 602 includes a first control 604 corresponding to an indication of allowing a jump and a second control 605 corresponding to an indication of prohibiting a jump.
[0160] 6A , the user can input a second trigger operation to the electronic device by clicking the first control 604. In response to the second trigger operation, the electronic device can jump to the APP and display a second interface 603 corresponding to the second application.
[0161] 6B , the user may also input a third trigger operation to the electronic device by clicking the second control 605. In response to the third trigger operation, the electronic device may close the first prompt information 602 and keep displaying the first interface 601.
[0162] In some embodiments, if the control result corresponding to the first control condition is the second control result, the electronic device may not jump to the APP and still keep displaying the current interface. That is, the first interface is still displayed.
[0163] Optionally, referring to FIG6C , if the control result corresponding to the first control condition is the second control result, the electronic device may not jump to the APP, and may display a prompt message 610 indicating that the jump failed in the currently displayed interface.
[0164] In some embodiments, if the control result corresponding to the first control condition is the third control result, the electronic device can jump to the APP and display the second interface.
[0165] In some embodiments, if an electronic device jumps to an APP and displays a second interface, and the second interface includes a jump link corresponding to a third application, the user can perform a fourth trigger operation on the jump link corresponding to the third application. The fourth trigger operation is used to instruct the jump to display a third interface corresponding to the third application. The third application is different from the second application, and the third application can be the same as or different from the first application.
[0166] In response to the received fourth trigger operation, the electronic device can obtain the second application information corresponding to the second application and the third application information corresponding to the third application. Based on the second application information and / or the third application information, the electronic device can determine the second control condition from the at least one control condition. After the electronic device obtains the control result corresponding to the second control condition, it can make a corresponding response based on the control result corresponding to the second control condition. Among them, the electronic device makes a corresponding response based on the control result corresponding to the second control condition. Please refer to the description of the electronic device making a corresponding response based on the control result corresponding to the first control condition in the aforementioned embodiment, which will not be repeated here.
[0167] In the method provided in the embodiments of the present application, when the electronic device receives a first trigger operation input by a user on a first interface, it can determine a first control condition based on the first application information and / or the second application information, and execute a corresponding response based on the control result corresponding to the first control condition to determine whether to perform an APP jump. This can reduce the number of attacks on the electronic device caused by APP jumps and improve security.
[0168] In some embodiments, the embodiment of the present application further provides an application management and control system, as shown in Figure 7, including a server and an electronic device. A communication connection is established between the server and the electronic device, and information exchange can be carried out. The electronic device may include an application management service module (also referred to as an AMS module in the embodiment of the present application), an ecological management service module (also referred to as an ERMS module in the embodiment of the present application), and a system application (also referred to as APPGallery in the embodiment of the present application).
[0169] The following is a detailed description of the management and control system provided in the embodiment of the present application in conjunction with Figures 7 and 8.
[0170] In some embodiments, the server stores at least one control condition, each corresponding to a control result. The control condition is compiled based on at least one DSL command in the DSL command set provided in the embodiments of the present application. The description of the DSL command can be found in the preceding embodiments and is not repeated here. The control results include a first control result, a second control result, and a third control result. The description of the control results can be found in the preceding embodiments and is not repeated here.
[0171] APPGallery can send a first request to the server to obtain the control conditions and the corresponding control results. After receiving the control conditions and the corresponding control results from the server, APPGallery can send the control conditions and the corresponding control results to the ERMS module. The ERMS module can receive and store the control conditions and the corresponding control results sent by APPGallery, waiting for subsequent calls.
[0172] In some embodiments, the APPGallery may send a first request to the server to obtain the control conditions and the control results corresponding to the control conditions at a preset time period. Each time the APPGallery receives the control conditions and the control results corresponding to the control conditions from the server, it may send the received control conditions and the control results corresponding to the control conditions to the ERMS module to update the control conditions and the control results corresponding to the control conditions stored in the ERMS module.
[0173] In some embodiments, when the AMS module detects that the electronic device receives a first trigger operation input by the user on the first interface, it can obtain the first application information and the second application information, and send a second request to the ERMS module to obtain the control result corresponding to the first control condition. The second request carries the first application information and the second application information. The first control condition is associated with the first application information and / or the second application information.
[0174] After receiving the second request from the AMS module, the ERMS module may determine the first control condition from the stored control conditions based on the first application information and / or the second application information, thereby further obtaining a control result corresponding to the first control condition. The ERMS module may then send the control result corresponding to the first control condition to the AMS module.
[0175] 9 , the ERMS module may include a policy execution engine and an experience matching engine. The policy execution engine may determine a first control condition from stored control conditions (e.g., control condition 1-control condition n) based on the first application information and / or the second application information sent by the AMS module. The experience matching engine may obtain a control result corresponding to the first control condition based on the correspondence between each control condition and the control result. Thereafter, the experience matching engine may send the obtained control result corresponding to the first control condition to the AMS module.
[0176] In some embodiments, the AMS module may execute corresponding responses based on the management and control results received from the ERMS module.
[0177] In some embodiments, if the control result received by the AMS module from the ERMS module is the first control result, the AMS module may send a first instruction to the APPGallery. In response to the received first instruction, the APPGallery may control the display of a prompt message on the first interface for obtaining permission to jump to the second interface.
[0178] If APPGallery detects that the user inputs a second trigger operation for the prompt information, the electronic device may be allowed to jump to the APP to display the second interface.
[0179] If APPGallery detects that the user inputs a third trigger operation for the prompt information, the electronic device may be prohibited from jumping to the APP and the prompt information may be closed to display the first interface.
[0180] In some embodiments, if the control result received by the AMS module from the ERMS module is the second control result, the AMS module may send a second instruction to the APPGallery. In response to the received second instruction, the APPGallery may prohibit the electronic device from APP jumping to maintain the display of the first interface.
[0181] In some embodiments, if the control result received by the AMS module from the ERMS module is the third control result, the electronic device may be allowed to perform an APP jump to switch the displayed interface to the second interface. The AMS module may send an instruction to the first application to instruct the execution of the interface jump. After receiving the instruction sent by the AMS module to instruct the execution of the interface jump, the first application may call the second application to display the second interface corresponding to the second application.
[0182] In some schemes, multiple embodiments of the present application can be combined and the combined scheme can be implemented. Optionally, some operations in the process of each method embodiment are optionally combined, and / or the order of some operations is optionally changed. In addition, the execution order between the steps of each process is only exemplary and does not constitute a limitation on the execution order between the steps. There can also be other execution orders between the steps. It is not intended to indicate that the execution order is the only order in which these operations can be performed. Ordinary technicians in this field will think of many ways to reorder the operations described herein. In addition, it should be noted that the process details involved in a certain embodiment of this article are also applicable to other embodiments in a similar manner, or different embodiments can be used in combination.
[0183] Furthermore, some steps in the method embodiments may be equivalently replaced with other possible steps. Alternatively, some steps in the method embodiments may be optional and may be deleted in certain usage scenarios. Alternatively, other possible steps may be added to the method embodiments.
[0184] Furthermore, the various method embodiments may be implemented separately or in combination.
[0185] It is understandable that in order to implement the above functions, the electronic device includes hardware and / or software modules corresponding to the execution of each function. In combination with the algorithm steps of each example described in the embodiments disclosed herein, 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. Those skilled in the art can use different methods to implement the described functions for each specific application in combination with the embodiments, but such implementation should not be considered to be beyond the scope of this application.
[0186] This embodiment can divide the electronic device into functional modules based on the above-mentioned method example. For example, each functional module can be divided according to its function, or two or more functions can be integrated into a single processing module. The above-mentioned integrated modules can be implemented in the form of hardware. It should be noted that the module division in this embodiment is illustrative and only represents a logical functional division. In actual implementation, other division methods may be used.
[0187] An embodiment of the present application further provides an electronic device, as shown in FIG10 , which may include one or more processors 1001 , a memory 1002 , and a communication interface 1003 .
[0188] The memory 1002 and the communication interface 1003 are coupled to the processor 1001. For example, the memory 1002, the communication interface 1003 and the processor 1001 may be coupled together via a bus 1004.
[0189] The communication interface 1003 is used to transmit data with other devices. The memory 1002 stores computer program code. The computer program code includes computer instructions. When the computer instructions are executed by the processor 1001, the electronic device executes the application management method in the embodiment of the present application.
[0190] Among them, the processor 1001 can be a processor or a controller, for example, a central processing unit (CPU), a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It can implement or execute the various exemplary logic blocks, modules and circuits described in conjunction with the contents of this disclosure. The processor can also be a combination that implements computing functions, for example, a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like. The processor can be used to support the electronic device in executing the method steps provided in the above embodiments.
[0191] The bus 1004 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. The bus 1004 may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, FIG10 shows only one thick line, but this does not mean that there is only one bus or only one type of bus.
[0192] An embodiment of the present application also provides a chip system, including: a processor, the processor is coupled to a memory, the memory is used to store programs or instructions, when the program or instructions are executed by the processor, the chip system implements the method in any of the above method embodiments.
[0193] Optionally, there may be one or more processors in the chip system. The processor may be implemented in hardware or software. When implemented in hardware, the processor may be a logic circuit, an integrated circuit, etc. When implemented in software, the processor may be a general-purpose processor implemented by reading software code stored in a memory.
[0194] Optionally, the memory in the chip system may be one or more. The memory may be integrated with the processor or may be provided separately from the processor, which is not limited in the embodiments of the present application. For example, the memory may be a non-transient processor, such as a read-only memory (ROM), which may be integrated with the processor on the same chip or provided on different chips. The embodiments of the present application do not specifically limit the type of memory or the configuration of the memory and the processor.
[0195] Exemplarily, the chip system may be a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on chip (SoC), a central processor unit (CPU), a network processor (NP), a digital signal processor (DSP), a microcontroller unit (MCU), a programmable logic device (PLD) or other integrated chips.
[0196] It should be understood that each step in the above method embodiment can be completed by hardware integrated logic circuits in a processor or by software instructions. The method steps disclosed in the embodiments of the present application can be directly embodied as being executed by a hardware processor, or by a combination of hardware and software modules in a processor.
[0197] An embodiment of the present application further provides a computer-readable storage medium, in which computer program code is stored. When the processor executes the computer program code, the electronic device executes the relevant method steps in the above method embodiment.
[0198] An embodiment of the present application further provides a computer program product, which, when executed on a computer, enables the computer to execute the relevant method steps in the above method embodiment.
[0199] In addition, embodiments of the present application further provide a device. Specifically, the device may be a component or module, and may include one or more processors and a memory connected to each other. The memory is configured to store a computer program. When the computer program is executed by one or more processors, the device performs the scenario configuration method described in each of the above method embodiments.
[0200] The apparatus, computer-readable storage medium, computer program product, or chip provided in the embodiments of the present application are all used to execute the corresponding methods provided above. Therefore, the beneficial effects that can be achieved can refer to the beneficial effects of the corresponding methods provided above, and will not be repeated here.
[0201] The steps of the method or algorithm described in conjunction with the disclosure of the embodiments of the present application can be implemented in hardware or by executing software instructions by a processor. The software instructions can be composed of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory (ROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, mobile hard disks, read-only compact discs (CD-ROMs), or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an application specific integrated circuit (ASIC).
[0202] Through the description of the above embodiments, those skilled in the art will clearly understand that for the sake of convenience and brevity, 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. The specific working processes of the above-mentioned systems, devices, and units can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0203] 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 the modules or units is merely 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.
Claims
1. A method for controlling an application, characterized in that: Applied to an electronic device, the electronic device stores a correspondence between at least one control condition and a control result, wherein each control condition corresponds to a control result, the method comprising: Receiving a first trigger operation for a first interface; the first interface corresponds to a first application; the first trigger operation is used to instruct to jump to display a second interface, the second interface corresponds to a second application; the first application is different from the second application; In response to the first trigger operation, determining a first control condition from the at least one control condition based on first application information corresponding to the first application and / or second application information corresponding to the second application; Based on the control result corresponding to the first control condition, display first prompt information, where the first prompt information is used to prompt obtaining permission to jump to display the second interface; Receiving a second trigger operation for the first prompt information; the second trigger operation is used to indicate permission to jump to display the second interface; In response to the second trigger operation, jump to display the second interface.
2. The method according to claim 1, characterized in that The first application information includes at least one of an application type and an authentication type of the first application and a calling permission of the first application to the second application; The second application information includes at least one of an authentication type, an advertisement type, a jump control type, and an attribution type of the second application; Among them, the first interface includes advertisements and jump controls associated with the second application; the jump control type is the type of jump control associated with the second application included in the first interface; the advertisement type of the second application is the type of advertisement associated with the second application included in the first interface.
3. The method according to claim 1 or 2, characterized in that: After displaying the first prompt information, the method further includes: receiving a third trigger operation for the first prompt information, wherein the third trigger operation is used to indicate prohibiting jumping to display the second interface; In response to the third trigger operation, the first prompt information is closed and the first interface remains displayed.
4. The method according to any one of claims 1 to 3, characterized in that: The control result includes a first control result, a second control result and a third control result; the first control result is used to indicate the display of prompt information; The second control result is used to indicate that interface jump is prohibited; The third control result is used to indicate the execution interface jump; The displaying of first prompt information based on the control result corresponding to the first control condition includes: If the control result corresponding to the first control condition is the first control result, the first prompt information is displayed on the first interface.
5. The method according to claim 4, characterized in that The method further comprises: If the control result corresponding to the first control condition is the second control result, keep displaying the first interface; If the control result corresponding to the first control condition is the third control result, the second interface is displayed.
6. The method according to any one of claims 1 to 5, characterized in that: After the jump to display the second interface, the method further includes: receiving a fourth trigger operation for the second interface; the fourth trigger operation is used to instruct to jump to display a third interface, the third interface corresponds to a third application; the third application is different from the second application; In response to the fourth trigger operation, determining a second control condition from the at least one control condition based on second application information corresponding to the second application and / or third application information corresponding to the third application; Based on the control result corresponding to the second control condition, a second prompt message is displayed, where the second prompt message is used to prompt for obtaining permission to jump to display the third interface.
7. The method according to any one of claims 1 to 6, characterized in that: If the target control condition in the at least one control condition is that the caller application has the calling permission to the callee application, the control result corresponding to the target control condition is used to indicate the execution interface jump; If the target control condition in the at least one control condition is that the caller application does not have the calling authority to the callee application, the control result corresponding to the target control condition is used to indicate that the interface jump is prohibited.
8. The method according to any one of claims 1 to 7, characterized in that: If the target control condition among the at least one control condition is that the jump control type of the caller application is a release link type, then the control result corresponding to the target control condition is used to indicate the display of prompt information.
9. The method according to any one of claims 1 to 8, characterized in that: The control condition is arranged based on at least one preset command.
10. The method according to any one of claims 1 to 9, characterized in that: The method further comprises: Obtain the at least one control condition from the server according to a preset time period.
11. The method according to any one of claims 1 to 3, characterized in that: The electronic device comprises an application management service module and an ecosystem management service module, and a system application is installed in the electronic device; After receiving the first trigger operation for the first interface, the method further includes: The application management service module obtains first application information corresponding to the first application and second application information corresponding to the second application; The determining a first control condition from the at least one control condition based on first application information corresponding to the first application and / or second application information corresponding to the second application includes: The ecological management service module determines a first control condition from the at least one control condition based on the first application information and / or the second application information; After determining the first control condition from the at least one control condition, the method further includes: The ecological management service module obtains the control result corresponding to the first control condition based on the correspondence between the at least one control condition and the control result; The jumping to display the second interface includes: The system application jumps to display the second interface.
12. The method according to claim 11, characterized in that The displaying of first prompt information based on the control result corresponding to the first control condition includes: If the control result is used to indicate displaying prompt information, the system application displays the first prompt information; The method further comprises: If the control result is used to indicate that interface jump is prohibited, the system application displays the first interface; If the control result is used to indicate an execution interface jump, the first application jumps to display the second interface.
13. An electronic device, characterized in that: include: A memory and one or more processors; the memory is coupled to the processor; wherein the memory stores computer program code, the computer program code includes computer instructions, and when the computer instructions are executed by the processor, the electronic device executes the method as described in any one of claims 1-12.
14. A computer-readable storage medium comprising computer instructions, characterized in that: 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 12.
15. A computer program product, characterized in that When the computer program product is executed on a computer, the computer is caused to execute the method according to any one of claims 1 to 12.