Risk control method and device of application program, computer device and storage medium

By receiving and matching service call requests from applications, determining their compliance, rejecting abnormal requests, and updating interface parameters, the problem of unrestricted interface call permissions in traditional applications is solved, thus achieving secure protection of user information.

CN117056908BActive Publication Date: 2026-08-25TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210492653.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-07
Publication Date
2026-08-25
Estimated Expiration
2042-05-07

AI Technical Summary

Technical Problem

Traditional applications have unrestricted access to APIs throughout their lifecycle, leading to excessive access, potential leakage of user information, and security risks.

Method used

By receiving service call requests from the target application, the system identifies the business identifier and business service module, matches the business service interface, determines whether the request is abnormal or compliant, rejects abnormal requests, displays the permission operation page, and updates the business service interface parameters to clean up business behavior.

Benefits of technology

It enables fine-grained control over business service interfaces, avoids excessive calls, protects user privacy, and ensures information security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117056908B_ABST
    Figure CN117056908B_ABST
Patent Text Reader

Abstract

The application relates to a risk control method and device of an application program, a computer device and a storage medium. The method can be applied to the field of computer software, such as an application program installed in a vehicle-mounted device, and comprises the following steps: receiving a service calling request sent by a target application program; obtaining a business identifier according to the service calling request, and determining a triggered business service module in the target application program based on the business identifier; determining a business service interface requested by the target application program based on the service calling request; if the business service interface does not match the business service module, determining that the service calling request initiated by the target application program is an abnormal request; and if the business service interface matches the business service module, determining that the service calling request initiated by the target application program is a compliant request. By using the method, whether the service calling request of the business service interface is an abnormal request can be determined under different business service modules, and the information security of a user is protected.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to risk control methods, apparatus, computer equipment, and storage media for applications. Background Technology

[0002] With the development of computer technology, the applications used on computer devices are becoming increasingly diverse. Applications need to request permissions from users to execute corresponding business services.

[0003] In traditional technologies, once access to a specific application interface is granted, that interface can be accessed throughout the entire lifecycle of the application. In reality, when performing certain business services, it is not necessary to access all of the application's interfaces. However, the current approach leads to excessive access to interfaces, which may result in the leakage of user information and pose security risks to users. Summary of the Invention

[0004] Therefore, it is necessary to provide a method, apparatus, computer device, computer-readable storage medium, and computer program product for risk control of applications, which can effectively prevent the leakage of user information and ensure information security, in response to the above-mentioned technical problems.

[0005] Firstly, this application provides a risk control method for an application. The method includes:

[0006] Receive service call requests sent by the target application;

[0007] Obtain the service identifier based on the service call request, and determine the triggered business service module in the target application based on the service identifier;

[0008] The business service interface requested by the target application is determined based on the service call request;

[0009] If the business service interface does not match the business service module, the service call request initiated by the target application will be identified as an abnormal request.

[0010] If the business service interface matches the business service module, the service call request initiated by the target application will be determined as a compliant request.

[0011] Secondly, this application also provides a risk control device for an application. The device includes:

[0012] The service call request receiving module is used to receive service call requests sent by the target application.

[0013] The service identifier determination module obtains the service identifier based on the service call request, and determines the triggered service module in the target application based on the service identifier;

[0014] The business service interface determination module is used to determine the business service interface requested by the target application based on the service call request;

[0015] The first matching module is used to determine the service call request initiated by the target application as an abnormal request if the business service interface does not match the business service module.

[0016] The second matching module is used to determine the service call request initiated by the target application as a compliant request if the business service interface matches the business service module.

[0017] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:

[0018] In response to an object retrieval request sent by the target application, obtain the pre-created service proxy object;

[0019] In response to the target service call request sent by the target application when initiating the target business service, the target business service interface of the target business service is called through the service proxy object;

[0020] Obtain the service record object obtained by encapsulating the target business service;

[0021] When the parameters of the target business service interface are updated after being called, the business attributes of the service record object are modified based on the updated target business service interface to obtain the modified business attributes;

[0022] Based on the modified business attributes, the business behaviors corresponding to the target business service are cleaned up.

[0023] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:

[0024] In response to an object retrieval request sent by the target application, obtain the pre-created service proxy object;

[0025] In response to the target service call request sent by the target application when initiating the target business service, the target business service interface of the target business service is called through the service proxy object;

[0026] Obtain the service record object obtained by encapsulating the target business service;

[0027] When the parameters of the target business service interface are updated after being called, the business attributes of the service record object are modified based on the updated target business service interface to obtain the modified business attributes;

[0028] Based on the modified business attributes, the business behaviors corresponding to the target business service are cleaned up.

[0029] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:

[0030] Receive service call requests sent by the target application;

[0031] Obtain the service identifier based on the service call request, and determine the triggered business service module in the target application based on the service identifier;

[0032] The business service interface requested by the target application is determined based on the service call request;

[0033] If the business service interface does not match the business service module, the service call request initiated by the target application will be identified as an abnormal request.

[0034] If the business service interface matches the business service module, the service call request initiated by the target application will be determined as a compliant request.

[0035] In the aforementioned risk control method for applications, the terminal receives service call requests sent by the target application, determines the business identifier and business service interface based on the service call request, and if the business service interface does not match the business service module corresponding to the business service identifier, the service call request is determined to be an abnormal request; if the business service interface matches the business module corresponding to the business service identifier, the service call request is determined to be a compliant request. This application determines the business service module based on the business identifier corresponding to the service call request, and determines whether a service call request sent by the target application under that business service module is an abnormal request or a compliant request based on the matching of the business service interface and the business service module. A compliant service call request under one business service module does not mean that the service call request is a compliant request throughout the entire lifecycle of the target application. If a service call request sent by the target application under that business service module is an abnormal request, the service call request can be rejected. Fine-grained differentiation of business service interface calls is implemented, determining whether a service call request calling a business service interface is an abnormal request under different business service modules, thus preventing the target application from excessively calling business service interfaces and thereby preventing the leakage of user privacy information, providing security protection for user privacy information.

[0036] Sixthly, this application also provides a risk control method for an application. The method includes:

[0037] In response to an object retrieval request sent by the target application, obtain the pre-created service proxy object;

[0038] In response to the target service call request sent by the target application when initiating the target business service, the target business service interface of the target business service is called through the service proxy object;

[0039] Obtain the service record object obtained by encapsulating the target business service;

[0040] When the parameters of the target business service interface are updated after being called, the business attributes of the service record object are modified based on the updated target business service interface to obtain the modified business attributes;

[0041] Based on the modified business attributes, the business behaviors corresponding to the target business service are cleaned up.

[0042] Seventhly, this application also provides a risk control device for an application. The device includes:

[0043] The service proxy object acquisition module is used to obtain a pre-created service proxy object in response to an object acquisition request sent by the target application.

[0044] The business service interface invocation module is used to respond to the target service invocation request sent by the target application when initiating the target business service, and invoke the target business service interface of the target business service through the service proxy object;

[0045] The service record object acquisition module is used to acquire the service record object obtained by encapsulating the target business service.

[0046] The business attribute modification module is used to modify the business attributes of the service record object based on the updated target business service interface when the parameters of the target business service interface are updated after the call, so as to obtain the modified business attributes.

[0047] The business behavior cleanup module is used to clean up the business behaviors corresponding to the target business service based on the modified business attributes.

[0048] Eighthly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:

[0049] In response to an object retrieval request sent by the target application, obtain the pre-created service proxy object;

[0050] In response to the target service call request sent by the target application when initiating the target business service, the target business service interface of the target business service is called through the service proxy object;

[0051] Obtain the service record object obtained by encapsulating the target business service;

[0052] When the parameters of the target business service interface are updated after being called, the business attributes of the service record object are modified based on the updated target business service interface to obtain the modified business attributes;

[0053] Based on the modified business attributes, the business behaviors corresponding to the target business service are cleaned up.

[0054] Ninthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:

[0055] In response to an object retrieval request sent by the target application, obtain the pre-created service proxy object;

[0056] In response to the target service call request sent by the target application when initiating the target business service, the target business service interface of the target business service is called through the service proxy object;

[0057] Obtain the service record object obtained by encapsulating the target business service;

[0058] When the parameters of the target business service interface are updated after being called, the business attributes of the service record object are modified based on the updated target business service interface to obtain the modified business attributes;

[0059] Based on the modified business attributes, the business behaviors corresponding to the target business service are cleaned up.

[0060] Tenthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:

[0061] In response to an object retrieval request sent by the target application, obtain the pre-created service proxy object;

[0062] In response to the target service call request sent by the target application when initiating the target business service, the target business service interface of the target business service is called through the service proxy object;

[0063] Obtain the service record object obtained by encapsulating the target business service;

[0064] When the parameters of the target business service interface are updated after being called, the business attributes of the service record object are modified based on the updated target business service interface to obtain the modified business attributes;

[0065] Based on the modified business attributes, the business behaviors corresponding to the target business service are cleaned up.

[0066] In the aforementioned risk control method for the application, the terminal receives an object acquisition request initiated by the target application, obtains a pre-created service proxy object, and then calls the target business service through the service proxy object, as well as the business service interface of the target business service. The parameters of the business service interface are updated to modify the business attributes of the service record object. Based on the modified business attributes, the business behaviors corresponding to the target business service are cleaned up. If the business attributes corresponding to the target business service in the service record object are not modified, third-party applications can statistically obtain the business behaviors of the target business service through the service record object. After obtaining the statistical data on the business behaviors of the target business service, the target application may be restricted from calling the target business service, affecting its usability. Furthermore, this application, by updating the parameters of the business service interface, modifies the business attributes of the service record object, thereby cleaning up the business behaviors corresponding to the target business service. Third-party applications cannot statistically obtain the business behaviors corresponding to the target business service, thus not affecting the target application's ability to call the target business service. This fundamentally solves the problem of restricted access to the target business service by the target application, ensuring the normal use of the target application. Attached Figure Description

[0067] Figure 1 This is an application environment diagram of the risk control method of an application in one embodiment;

[0068] Figure 2 This is a flowchart illustrating a risk control method for an application in one embodiment;

[0069] Figure 3 This is an example diagram of the first permission operation page in one embodiment;

[0070] Figure 4 This is a flowchart illustrating the process of displaying the first permission operation page when the business service interface is the target business service interface in one embodiment.

[0071] Figure 5 Here is an example diagram of authorization guidance information in one embodiment;

[0072] Figure 6 This is a schematic diagram of a terminal obtaining updated authorization guidance information from a cloud server in one embodiment;

[0073] Figure 7 This is an example diagram of authorization guidance information in another embodiment;

[0074] Figure 8 This is an example diagram of the second permission operation page when other business services include enabling the camera, as shown in one embodiment.

[0075] Figure 9 In another embodiment, when the other service is the service of enabling the camera, this is an example diagram of the second permission operation page;

[0076] Figure 10 This is an example diagram of the first permission operation page in another embodiment;

[0077] Figure 11 This is a schematic diagram of the process for determining the absolute address of a first local service in one embodiment;

[0078] Figure 12 This is a flowchart illustrating the risk control method of an application in a specific embodiment.

[0079] Figure 13 This is a flowchart illustrating the application's risk control method in a scenario, as shown in one embodiment.

[0080] Figure 14 This is a flowchart illustrating a risk control method for an application in one embodiment;

[0081] Figure 15 This is a schematic diagram illustrating cross-process communication via the Binder mechanism in one embodiment of the operating system.

[0082] Figure 16 This is a schematic diagram of a structure in one embodiment that detects process liveness through a first process, a second process, a first sub-process, a second sub-process, a first thread, and a second thread;

[0083] Figure 17 This is a flowchart illustrating the process lifespan detection process in one embodiment, involving a first process, a second process, a first child process, a second child process, a first thread, and a second thread.

[0084] Figure 18 This is a schematic diagram illustrating the process of sending an object retrieval request to the target application via cloud control information management when the process is detected to have ended in one embodiment.

[0085] Figure 19 This is a flowchart illustrating the risk control method of an application in another specific embodiment;

[0086] Figure 20 This is a schematic diagram illustrating the change in monthly active users after the target application uses the application's risk control method in one embodiment.

[0087] Figure 21 This is a schematic diagram of user retention data of a target application in one embodiment, without using the application's risk control method;

[0088] Figure 22 This is a schematic diagram of user retention data of a target application in one embodiment, when using the application's risk control method;

[0089] Figure 23 In one embodiment, a third-party application statistically analyzes the business behavior of the target application initiating the target business service without using the application's risk control method;

[0090] Figure 24 In one embodiment, this is a diagram illustrating how a third-party application cannot statistically analyze the business behavior initiated by the target application when using the application's risk control method;

[0091] Figure 25 This is a structural block diagram of the risk control device of an application in one embodiment;

[0092] Figure 26 This is a structural block diagram of the risk control device for an application in another embodiment;

[0093] Figure 27 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation

[0094] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0095] Figure 1 This is an application environment diagram illustrating the risk control method of an application in one embodiment. (Refer to...) Figure 1 The application's risk control methods can be applied to the application's behavior processing system, which includes:

[0096] The system comprises an interface permission management component 102, a permission request page control component 104, a business behavior cleanup component 106, and a process protection component 108. The interface permission management component 102 includes a business service determination unit 1021, an abnormal request detection unit 1022, and a permission information detection unit 1023. The permission request page control component 104 includes an authorization guidance information acquisition unit 1041 and a permission operation setting unit 1042. The business behavior cleanup component 106 includes a reflection breakthrough unit 1061, a service proxy object acquisition unit 1062, and an interface parameter update unit 1063. The process protection component 108 includes a process detection unit 1081 and an object acquisition request sending unit 1082.

[0097] The interface permission management component 102 can receive service call requests sent by the target application, determine the business identifier based on the service call request, determine the business service module based on the business identifier, and determine the business service interface based on the service call request. If the business service interface does not match the business service module, the service call request is an abnormal request. If the business service interface matches the business service module, the service call request is a compliant request.

[0098] The business service determination unit 1021 in the interface permission management component 102 can be used to receive service call requests sent by the target application, determine the business identifier based on the service call request, determine the business service module based on the business identifier, and determine the business service interface based on the service call request.

[0099] The abnormal request detection unit 1022 in the interface permission management component 102 can be used to detect whether the business service interface and the business service module match. If they do not match, the service call request is determined to be an abnormal request. If they match, the service call request is determined to be a compliant request.

[0100] The permission information detection unit 1023 in the interface permission management component 102 can be used to detect the permission information of the business service module for the business service interface. The permission information is used to indicate whether the business service module has the permission to call the business service interface or does not have the permission to call the business service interface.

[0101] In a privacy or security protection application scenario, the service call request is a request to call the camera interface, and the business service interface is the camera interface. Based on the service call request, the business service module is determined to be the unknown caller identification business service module. The unknown caller identification business service module does not match the camera interface. In other words, unknown caller identification does not require the use of a camera. Therefore, the request to call the camera interface under the unknown caller identification business service module is an abnormal request.

[0102] In a privacy or security protection application scenario, the service call request is a request to call the camera interface. The business service interface is the camera interface. Based on the service call request, the business service module is determined to be the scanning business service module. The scanning business service module matches the camera interface. In other words, scanning requires the use of a camera. Therefore, requesting to call the camera interface under the scanning business service module is a compliant request.

[0103] The permission request page control component 104 can display the first permission operation page when the business service module does not have the permission to call the business service interface, and return the business service interface to the target application through the first permission operation page, or refuse to return the business service interface to the target application.

[0104] The authorization guidance information acquisition unit 1041 in the permission request page control component 104 can be used to send an information acquisition request for the target business service to the cloud server in order to obtain the authorization guidance information of the target business service.

[0105] The operation permission setting unit 1042 in the permission page control component 104 can be used to display the first permission operation page in response to the triggering operation of the authorization guidance information, and to mark the operation permission of the target business service in the first permission operation page as enabled in response to the permission operation triggered on the first permission operation page.

[0106] In a privacy or security protection application scenario, the business service interface is a camera interface, and the business service module is a scanning business service module. If the scanning business service module does not have permission to call the camera interface, the first permission operation page is displayed. The first permission operation page grants the scanning business service module permission to call the camera interface, or denies the granting of permission to the scanning business service module to call the camera interface.

[0107] The business cleanup component 106 can be used to: respond to an object retrieval request sent by the target application to obtain a pre-created service proxy object; respond to a target service call request sent by the target application when initiating a target business service, and call the target business service interface of the target business service through the service proxy object; obtain a service record object encapsulated from the target business service; when the parameters of the target business service interface are updated after the call, modify the business attributes of the service record object based on the updated target business service interface to obtain the modified business attributes; and clean up the business behavior corresponding to the target business service based on the modified business attributes.

[0108] The reflection breakthrough unit 1061 in the business cleanup component 106 can be used to call the meta-reflection function through reflection, and then call the hidden interface exemption function through the meta-reflection function. The exemption condition of the hidden interface exemption function is set as the signature prefix of the object acquisition request and the service call request, thereby enabling the target application to initiate the object acquisition request and the service call request.

[0109] The service proxy object acquisition unit 1062 in the business cleanup component 106 can be used to acquire a pre-created service proxy object in response to an object acquisition request sent by the target application.

[0110] The interface parameter update unit 1063 in the business cleanup component 106 can be used to respond to the target service call request sent by the target application when initiating the target business service, and call the target business service interface of the target business service through the service proxy object; and when the parameters of the target business service interface are updated after the call, modify the business attributes of the service record object based on the updated target business service interface to obtain the modified business attributes.

[0111] In one application scenario, the target business service is the service that starts the Service component. The target application starts the Service component, causing the target application to restart and run. The target business service interface is the interface called after the Service component starts. Modify the parameters of the target business service interface, and based on the parameters of the target business service interface, modify the attributes of the service record object to obtain the modified business attributes, thereby realizing the cleanup of the business behavior of starting the Service component.

[0112] The process guardian component 108 can be used to create a first process and a second process, and to create a first file and a second file. The first process holds the file lock of the first file, and the second process holds the file lock of the second file. The first process and the second process can detect the liveness of each other's processes and send an object acquisition request when the other process is terminated.

[0113] The process detection unit 1081 in the process guardian component 108 can be used for the first process and the second process to detect the survival status of each other's processes; the object acquisition request sending unit 1082 in the process guardian component 108 can be used to send an object acquisition request when the other process is terminated.

[0114] In one application scenario, the first process and the second process mutually detect the liveness of each other's processes. If the other process is detected to have been terminated, an object retrieval request is sent, thereby starting the target business service and launching a new process.

[0115] The application's behavior processing system can be installed on the terminal, enabling the terminal to execute the application's risk control methods. The terminal can be a smartphone, tablet, laptop, desktop computer, smart speaker, smartwatch, IoT device, or portable wearable device. IoT devices can include smart speakers, smart TVs, smart air conditioners, and smart in-vehicle systems, etc. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted devices, etc.

[0116] In one embodiment, such as Figure 2 As shown, a risk control method for an application is provided. This embodiment illustrates the method by applying it to a terminal. The terminal uses... Figure 1The interface permission management component 102 implements this method, which includes the following steps:

[0117] Step S202: Receive the service call request sent by the target application.

[0118] The target application can be any application installed on the terminal. A service call request can be used to request a call to a business service interface, or it can be used to initiate a business service.

[0119] The terminal can be accessed via Figure 1 The business identifier matching unit 1021 of the interface permission management component 102 implements the following: receiving service call requests sent by the target application.

[0120] Specifically, service call requests include service call requests for system service classes, which can be used to initiate system-level business services. The terminal receives these system service class service call requests through a pre-created service proxy object; for example, the terminal receives a service call request to launch an application (Service) component through a pre-created service proxy object. Service call requests also include service call requests for first local service classes, which can be used to request calls to the business service interfaces of the first local service class. The terminal receives these first local service class service call requests through hook functions; for example, the terminal receives a service call request to call a camera interface through a hook function. Finally, service call requests include service call requests for second local service classes, which can be used to request calls to the business service interfaces of the second local service class. The terminal receives these second local service class service call requests through a pre-encapsulated class; for example, the terminal receives a service call request to call a file interface through a pre-encapsulated class.

[0121] Step S204: Obtain the business identifier based on the service call request, and determine the business service module triggered in the target application based on the business identifier.

[0122] The business service module can be a functional module of the target application. For example, the target application's business service modules may include: a scanning function module, a harassment blocking function module, an instant messaging receiving function module, and an unknown caller identification function module. Service call requests can be initiated through the business service module to implement the fine-grained functions within that module. The business identifier can be represented by a string, and each business service module of the target application has its corresponding business identifier.

[0123] The terminal can be accessed via Figure 1The business identifier matching unit 1021 of the interface permission management component 102 implements the following: obtain the business identifier based on the service call request, and determine the triggered business service module in the target application based on the business identifier.

[0124] Specifically, the business service module initiates a service call request and simultaneously uploads the corresponding business identifier to a preset interface. Upon receiving the service call request, the terminal retrieves the corresponding business identifier from the preset interface and can then use this identifier to query the triggered business service module within the target application. For example, if the terminal obtains the business identifier "y1" based on the service call request, it can query the business service module corresponding to "y1" as the harassment interception function module.

[0125] Step S206: Determine the business service interface requested by the target application based on the service call request.

[0126] Among them, the business service interface is the interface that requires the user to request operation permissions.

[0127] The terminal can be accessed via Figure 1 The business identifier matching unit 1021 of the interface permission management component 102 implements the following: determining the business service interface requested by the target application based on the service call request.

[0128] Specifically, a business service interface can be the interface requested by the service call request. For example, if the service call request is to call the camera interface, then the business service interface can be identified as the camera interface. A business service interface can also be the interface called after the service call request initiates the business service. For example, if the service call request initiates a request to start a Service component, the business service interface is the interface called after the Service component has finished starting.

[0129] Step S208: If the business service interface does not match the business service module, the service call request initiated by the target application will be identified as an abnormal request.

[0130] The terminal can be accessed via Figure 1 The abnormal request detection unit 1022 of the interface permission management component 102 implements the following: determine whether the business service interface matches the business service module. If they do not match, the service call request is identified as an abnormal request.

[0131] Specifically, pre-defined interfaces are established for each business service module. These pre-defined interfaces are used to implement the fine-grained functions of the business service module. When the target application runs a business service module, the target application can only call the pre-defined interfaces corresponding to that business service module.

[0132] If a business service interface is not a pre-defined interface corresponding to a business service module, then the business service interface and the business service module do not match. "Business service interface is not a pre-defined interface corresponding to a business service module" means that the business service interface is not used to implement the fine-grained functions of the business service module, and the service call request corresponding to that business service interface is determined to be an abnormal request.

[0133] For example, if the business service module is a scanning function module, the preset interfaces corresponding to the scanning function module include: camera interface and album interface. If the business service interface is a call information interface, then the business service interface does not match the scanning function module (the scanning function does not need to access call information), and it can be determined that the service call request corresponding to the call information interface is an abnormal request.

[0134] In one embodiment, after determining that the service call request initiated by the target application is an abnormal request, the method further includes: refusing to return the business service interface to the target application and reporting the abnormal request to the cloud server.

[0135] Specifically, when a service call request initiated by the target application is determined to be an abnormal request, the abnormal request is reported to the cloud server so that staff can modify the target application's calls to business service interfaces. This eliminates the situation where the target application initiates abnormal service call requests, ensuring that all calls to business service interfaces by the target application meet the needs of the business service modules. By using cloud security, excessive calls to business service interfaces are avoided, thus protecting user information security.

[0136] Step S210: If the business service interface matches the business service module, the service call request initiated by the target application is determined to be a compliant request.

[0137] The terminal can be accessed via Figure 1 The abnormal request detection unit 1022 of the interface permission management component 102 implements the following: determine whether the business service interface matches the business service module. If they match, the service call request is determined to be a compliant request.

[0138] Specifically, if a business service interface belongs to a pre-defined interface corresponding to a business service module, then the business service interface matches the business service module. A business service interface belonging to a pre-defined interface corresponding to a business service module means that the business service interface is used to implement the fine-grained functions of the business service module, and the service call request corresponding to this business service interface is determined to be a compliant request.

[0139] For example, if the business service module is a scanning function module, the preset interfaces corresponding to the scanning function module include: a camera interface and a photo album interface. If the business service interface is the photo album interface, then the business service interface matches the scanning function module (the scanning function needs to access the photo album), and it can be determined that the service call request corresponding to the photo album interface is a compliant request.

[0140] It should be noted that for the first and second business service modules of the target application, if the business service interface matches the first business service module, then the service call request calling the business service interface under the first business service module is a compliant request. If the business service interface does not match the second business service module, then the service call request calling the business service interface under the second business service module is an abnormal request. In other words, whether a service call request calling a business service interface is compliant is determined based on the business service module. A service call request that is compliant under one business service module of the target application does not mean that the same service call request will be compliant under other business service modules of the target application.

[0141] In the aforementioned risk control method for applications, the terminal receives service call requests sent by the target application, determines the business identifier and business service interface based on the service call request, and if the business service interface does not match the business service module corresponding to the business service identifier, the service call request is determined to be an abnormal request; if the business service interface matches the business module corresponding to the business service identifier, the service call request is determined to be a compliant request. This application determines the business service module based on the business identifier corresponding to the service call request, and determines whether a service call request sent by the target application under that business service module is an abnormal request or a compliant request based on the matching of the business service interface and the business service module. A compliant service call request under one business service module does not mean that the service call request is a compliant request throughout the entire lifecycle of the target application. If a service call request sent by the target application under that business service module is an abnormal request, the service call request can be rejected. Fine-grained differentiation of business service interface calls is implemented, determining whether a service call request calling a business service interface is an abnormal request under different business service modules, thus preventing the target application from excessively calling business service interfaces and thereby preventing the leakage of user privacy information, providing security protection for user privacy information.

[0142] In one embodiment, the application's risk control method further includes: detecting the permission information of the business service module for the business service interface; and when the permission information indicates that the business service module has the permission to call the business service interface, returning the business service interface to the target application.

[0143] The permission information of the business service module for the business service interface is either the first information or the second information. If the permission information of the business service module for the business service interface is the first information, it means that the business service module has the permission to call the business service interface. If the permission information of the business service module for the business service interface is the second information, it means that the business service module does not have the permission to call the business service interface.

[0144] The terminal can detect the permission information of the business service module for the business service interface through the permission information detection unit 1023 in the interface permission management component 102.

[0145] Specifically, if a business service module has permission to call a business service interface, it directly returns the business service interface to the target application. For example, if the business service module is a scanning function module and the business service interface is a camera interface, and the scanning function module's permission information for the camera interface is detected as the first piece of information, it can be determined that the target application had already obtained permission to call the camera interface when it previously ran the scanning function module. Therefore, the target application can directly call the camera interface.

[0146] In the above embodiments, if the service call request is a compliant request, the permission information of the business service module for the business service interface is checked. If the business service module has the permission to call the business service interface, the business service interface is directly returned to the application. The fact that one business service module of the target application has the permission to call the business service interface does not mean that other business service modules of the target application also have the permission. This ensures that the target application does not have the permission to call the business service interface throughout its entire lifecycle. Instead, different business service modules need to determine whether the target application has the permission to call the business service interface. The target application can only access relevant information within the scope authorized by the user, avoiding excessive calls to the business service interface and thus preventing the leakage of user privacy information, providing security protection for user privacy.

[0147] In one embodiment, if the business service interface matches the business service module, after detecting the permission information of the business service module for the business service interface, the method further includes: when the permission information indicates that the business service module does not have the permission to call the business service interface, displaying a first permission operation page for requesting the calling permission; when an authorization instruction triggered by the first permission operation page is detected, returning the business service interface to the target application; when a denial authorization instruction triggered by the first permission operation page is detected, refusing to return the business service interface to the target application.

[0148] The first permission operation page includes description information of the business service interface, which describes the purpose of calling the business service interface. The first permission operation page can enable or disable the business service module to call the business service interface.

[0149] The terminal can use the permission request page control component 104 to: display the first permission operation page and return the business service interface to the target application through the first permission operation page, or refuse to return the business service interface to the target application.

[0150] Specifically, if the permission information of a business service module for a business service interface is detected as the second type, indicating that the business service module does not have permission to call the business service interface, then the first permission operation page is displayed. The business service module not having permission to call the business service interface includes, but is not limited to, the following situations: if the business service module is calling the business service interface for the first time, then the business service module does not have permission to call the business service interface; or if the business service module has previously called the business service interface, but the user did not agree to the business service module calling the business service interface, therefore the business service module does not have permission to call the business service interface.

[0151] In one implementation, the first permission operation page includes an authorization control and a denial authorization control for the business service interface; in response to a trigger operation received by the authorization control in the first permission operation page, an authorization instruction is generated and the business service interface is returned to the target application; in response to a trigger operation received by the denial authorization control in the first permission operation page, a denial authorization instruction is generated and the business service interface is refused to be returned to the target application.

[0152] For example, the business service module is an unknown caller identification function module, and the business service interface is a call information interface, such as... Figure 3 As shown, the first permission operation page is M1. The first permission operation page M1 includes description information n11, authorization control n12, and denial authorization control n13. The description information n11 includes the purpose of calling the call information interface. The authorization control n12 includes the text information "Agree". When the user triggers the authorization control n12, an authorization instruction is generated. The denial authorization control n13 includes the text information "Not used for the time being". When the user triggers the denial authorization control n13, a denial authorization instruction is generated.

[0153] In the above embodiments, users can learn about the purpose of calling the business service interface through the first permission operation page, and grant or deny the permission to call the business service interface under the business service module through the first permission operation page. The target application can only access relevant information within the scope authorized by the user, thereby avoiding the leakage of the user's privacy information and providing security protection for the user's privacy information.

[0154] In one embodiment, the business service interface includes the target business service interface invoked by the business service module after initiating the target business service. The target business service can be a service used to start the target application. In practical applications, the target business service can be a service that starts a Service component; for example, the business service module is an instant messaging function module. This instant messaging function module initiates a service to start the Service component, so that when the target application is terminated, the instant messaging function module starts the Service component to start the target application, thereby enabling the target application to receive instant messages.

[0155] The target business service interface can be called when the target business service has finished starting. In practical applications, when the target business service is not the service that started the Service component, the target business service interface is called to invoke the serviceDoneExecuting method, which is called when the Service component has finished starting.

[0156] like Figure 4 As shown, the business service interface is the target business service interface. When the permission information indicates that the business service module does not have the permission to call the business service interface, the first permission operation page for requesting calling permission is displayed, including:

[0157] Step S402: When the permission information indicates that the business service module does not have the permission to call the target business service interface, a request to obtain information about the target business service is sent to the cloud server.

[0158] Among them, the information retrieval request is used to obtain authorization guidance information, which is used to guide the user to enable the operation permission of the target business service.

[0159] The terminal can be accessed via Figure 1 The authorization guidance information acquisition unit 1041 of the permission page control component 104 in the middle implements the sending of information acquisition requests.

[0160] Specifically, when a business service module matches a target business service interface, the permission information of the business service module for the target business service interface is obtained. For example, if the business service module is a module for receiving instant messages, and the preset interface corresponding to the module for receiving instant messages includes the target business service interface, then the module for receiving instant messages matches the target business service interface, and the permission information of the module for receiving instant messages for the target business service interface is obtained.

[0161] If the business service module does not have the permission to call the target business service interface, the terminal sends an information retrieval request to the cloud server to obtain authorization guidance information.

[0162] In one embodiment, the terminal may send an information retrieval request to the cloud server in response to a trigger operation on a target business service control in the target application, including: retrieving device information in response to the trigger operation on the target business service control; generating an information retrieval request based on the device information and the target business service; and sending the information retrieval request to the cloud server.

[0163] Specifically, the target business service control is pre-set and used to enable the operation permission of the target business service. When the target business service control is triggered, the terminal can initiate a target service call request through the business service module. When the target business service control is triggered, it indicates that the user may need to initiate the target business service. For example, the target business service control may be a control in the target application used to post social updates. When this target business service control is triggered, it indicates that the user may need the target application to remain running in the background to receive real-time social interaction messages; or, the target business service control may be a control in the target application used to follow a specific user. When this target business service control is triggered, it indicates that the user may need the target application to remain running in the background to receive real-time updates from the user they are following.

[0164] In response to a trigger operation on the target service control, the system determines whether the target service's operation permission is enabled. If the target service's operation permission is not enabled, it retrieves device information, which includes, but is not limited to, the terminal's device information, such as manufacturer, device model, and system version number. Based on the device information and the target service, an information retrieval request is generated and sent to the cloud server. The triggering of the target service control indicates that the user may need to enable the target service, thus sending an information retrieval request to the cloud server. This allows for timely response to user needs, eliminating the need for multiple manual operations to enable the target service's operation permission, thereby improving the efficiency of enabling the target service's operation permission.

[0165] In one embodiment, the terminal may periodically send information retrieval requests to the cloud server, including: periodically retrieving device information, generating an information retrieval request based on the device information and the target business service, and sending the information retrieval request to the cloud server.

[0166] Specifically, due to system updates on the terminal, authorization guidance information issued through the cloud server may become invalid. If the target service's access permissions are not enabled, the target application can periodically obtain device information, generate an information retrieval request based on the device information and the target service, and send the request to the cloud server to request new authorization guidance information. In this way, when the terminal undergoes a system update, the terminal can obtain authorization guidance information adapted to the updated system.

[0167] Step S404: Receive and display the authorization guidance information for the target business service issued by the cloud server.

[0168] The authorization guidance information includes: a description of the operation permissions for the target business service, and permission setting controls for setting these permissions. The description of the target business service's operation permissions explains the purpose of enabling these permissions. For example... Figure 5 As shown, M2 is an example of authorization guidance information, n21 is a description of the operation permissions of the target business service, and n22 is a permission setting control used to set the operation permissions of the target business service.

[0169] The terminal can be accessed via Figure 1 The authorization guidance information acquisition unit 1041 of the permission page control component 104 in the cloud implements: receiving the authorization guidance information of the target business service issued by the cloud server.

[0170] Specifically, after receiving an information retrieval request, the cloud server retrieves the corresponding authorization guidance information from the authorization guidance scheme library, and sends the authorization guidance information to the terminal, enabling the terminal to obtain the authorization guidance information for the target business service.

[0171] Step S406: In response to the triggering operation of the authorization guidance information, the first permission operation page is displayed.

[0172] The terminal can be accessed via Figure 1 The operation permission setting unit 1042 of the permission page control component 104 implements the following: in response to the triggering operation of the authorization guidance information, the first permission operation page is displayed.

[0173] Specifically, in one implementation, the first permission operation page includes a target switch control for setting the operation permissions of a target business service. Different display styles of the target switch control can determine whether the operation permission of the target business service is in an on or off state. For example, when the target switch control is grayed out, the operation permission of the target business service is in a off state; when the target switch control is green, the operation permission of the target business service is in an on state. This embodiment does not limit the display style of the target switch control used to indicate the on or off state.

[0174] When the operation permission for the target business service is not enabled, the terminal sends an information retrieval request to the cloud server. Therefore, the display style of the target switch control corresponding to the target business service on the first permission operation page is used to indicate that the operation permission for the target business service is disabled.

[0175] Step S408: In response to the permission operation triggered on the first permission operation page, mark the operation permission for the target business service on the first permission operation page as enabled.

[0176] Among them, for the target business service that is in the enabled state, the corresponding business behavior is cleaned up according to the modified business attributes; the modified business attributes are obtained by modifying the target business service interface based on the target business service.

[0177] The terminal can be accessed via Figure 1 The operation permission setting unit 1042 of the permission page control component 104 implements the following: in response to the permission operation triggered on the first permission operation page, the operation permission of the target business service in the first permission operation page is marked as enabled.

[0178] Specifically, the permission operation triggered on the first permission operation page is used to change the display style of the target switch control corresponding to the target business service. By changing the display style of the target switch control corresponding to the target business service, the operation permission for the target business service on the first permission operation page is marked as enabled.

[0179] In response to the permission operation triggered on the first permission operation page, the operation permission for the target business service on the first permission operation page is marked as enabled. In addition, in response to the permission operation triggered on the first permission operation page, an authorization instruction is generated and the target business service interface is returned to the target application.

[0180] In response to a cancellation operation triggered on the first permission operation page, a denial authorization instruction is generated, refusing to return the target business service interface to the target application, and the operation permission for the target business service on the first permission operation page is marked as closed.

[0181] It should be noted that when the operation permission of the target business service is enabled, the business service module has the permission to call the target business service interface; when the operation permission of the target business service is disabled, the business service module does not have the permission to call the target business service interface.

[0182] Before receiving the permission operation triggered on the first permission operation page, the target switch control corresponding to the target business service is displayed in the first style on the first permission operation page, indicating that the operation permission of the target business service is in the closed state. In response to the triggering operation of the authorization guidance information, the target switch control corresponding to the target business service is displayed in the second style, indicating that the operation permission of the target business service is in the open state.

[0183] In one implementation, the target business service is the service that starts the Service component. After granting operation permissions to the target business service, the target application can automatically start the Service component, call the target business service interface after the Service component starts, modify the parameters of the target business service interface, modify the attributes of the service record object based on the parameters of the target business service interface, obtain the modified business attributes, and thus clean up the business behavior of starting the Service component.

[0184] In the above embodiments, the terminal retrieves authorization guidance information for the target business service from the cloud server. Through the authorization guidance information, the terminal can understand the purpose of the operation permission to enable the target business service. It can also display a first permission operation page through the authorization guidance information, enabling the operation permission for the target business service on the first permission operation page. This allows the target business module to have the permission to call the target business service interface. By guiding the user to enable the operation permission for the target business service through the authorization guidance information, the process of enabling the operation permission for the target business service is simpler and easier to operate, improving the efficiency of enabling the operation permission for the target business service and the efficiency of enabling the calling permission for the target business service interface.

[0185] In one embodiment, the application's risk control method further includes: within a preset time period after receiving the authorization guidance information, obtaining a first display count of the authorization guidance information or a second display count of the first permission operation page; sending the first display count or the second display count to the cloud server; and receiving updated authorization guidance information issued by the cloud server if the first display count or the second display count meets a preset condition.

[0186] The first display count of the authorization guidance information refers to the number of times the authorization guidance information is displayed, and the second display count of the second permission operation page refers to the number of times the second operation permission is displayed. The preset condition is that either the first display count or the second display count is less than the display threshold.

[0187] The terminal can be accessed via Figure 1 The authorization guidance information acquisition unit 1041 of the permission page control component 104 in the middle obtains the updated authorization guidance information.

[0188] Specifically, after obtaining the authorization guidance information from the cloud server, the terminal stores the obtained authorization guidance information locally. In response to the triggering operation of the target business service control, it retrieves the authorization guidance information locally. If the authorization guidance information is adapted to the terminal, the locally retrieved authorization guidance information can be displayed normally, and in response to the triggering operation of the authorization guidance information, the first permission operation page can be displayed normally.

[0189] Due to system updates on the terminal, the authorization guidance information obtained through the cloud server may not be compatible with the updated terminal, thus failing to display the locally obtained authorization guidance information, or failing to display the first permission operation page in response to the triggering operation of the authorization guidance information.

[0190] like Figure 6 As shown, the terminal obtains device information, generates an information retrieval request based on the device information and the target service, and sends the request to the cloud server. The cloud server determines authorization guidance information based on the request and sends it to the terminal. After receiving the authorization guidance information, the terminal determines the first display count or the second display count based on the authorization guidance information within a preset time period. The terminal then sends these counts to the cloud server. If the first display count is less than a display threshold, or the second display count is less than a display threshold, the authorization guidance information is deemed incompatible with the terminal. The cloud server then retrieves updated authorization guidance information from the authorization guidance scheme library and sends the updated information to the terminal.

[0191] In one embodiment, the cloud server generates authorization guidance information based on device information, tests the authorization guidance information through a gray-scale verification process, and adds the authorization guidance information that passes the test to the authorization guidance scheme library. The cloud server receives feedback from the terminal on the first display count or the second display count. If the first display count is less than the display threshold, or the second display count is less than the display threshold, the cloud server generates updated authorization guidance information based on the device again, tests the updated authorization guidance information through a gray-scale verification process, adds the authorized guidance information that passes the test to the authorization guidance scheme library, and the cloud server sends the authorized guidance information that passes the test to the terminal.

[0192] In the above embodiments, after obtaining the authorization guidance scheme issued by the cloud server, the user is guided to enable the operation permission of the target business service through the authorization guidance information. Within a preset time period after receiving the authorization guidance information, the first display count or the second display count is obtained and sent to the cloud server. The cloud server determines whether the authorization guidance information is suitable for the terminal based on the first display count or the second display count. If the authorization guidance information is not suitable for the terminal, the updated authorization guidance information is sent to the terminal. This allows the terminal to obtain the updated authorization guidance information in a timely manner when the authorization guidance information is not suitable for the terminal, thereby enabling the authorization guidance information and the first permission operation page to be displayed normally.

[0193] In one embodiment, the authorization guidance information includes a permission setting control and a guidance animation for displaying the operation permission to enable the target business service. Responding to a triggering operation on the authorization guidance information, displaying a first permission operation page includes: responding to a triggering operation on the permission setting control to display the first permission operation page.

[0194] The guidance animation includes multiple guidance images, each corresponding to a step in granting access to the target service. These images are displayed sequentially according to the order in which the access permissions are granted. The steps shown in the animation can be either granting access through the terminal's settings or through the target application's permission management center.

[0195] Specifically, the authorization guidance information includes a permission setting control. By triggering the permission setting control, one can be redirected to the first permission operation page, where operation permissions for the target business service can be enabled. The permission setting control may include the text information "Go to Settings" or "Go to Enable," but this embodiment does not limit the specific text.

[0196] For example, such as Figure 7 As shown, M3 is another example of authorization guidance information. Authorization guidance information M3 includes a guidance animation n31 and a permission setting control n32. The guidance animation includes multiple guidance images corresponding to various steps. n301 displays the guidance image corresponding to the second step: clicking the target business service. Triggering the permission setting control will redirect to the first permission operation page.

[0197] In the above embodiments, the authorization guidance information includes a guidance animation that demonstrates multiple steps to enable the operation permission for the target business service. If the user does not currently need to enable the operation permission for the target business service, the guidance animation can inform the user of the steps to enable it. This allows the user to enable the operation permission for the target business service according to the multiple steps shown in the guidance animation when needed, providing the user with multiple ways to enable the operation permission for the target business service and the access permission to call the target business service interface, thus improving the diversity of enabling the operation permission for the target business service and the access permission to call the target business service interface. The authorization guidance information also includes a permission setting control. If the user currently needs to enable the operation permission for the target business service, they can directly jump to the first permission operation page by triggering the permission setting control, improving the efficiency of enabling the operation permission for the target business service and the access permission to call the target business service interface.

[0198] In one embodiment, before sending an information retrieval request about the target business service to the cloud server, the method further includes: displaying a second permission operation page when the target application initiates other business services; and, in response to a permission operation triggered on the second permission operation page, marking the operation permission for other business services in the second permission setting page as enabled.

[0199] Other business services include: system services called through pre-created service proxy objects, first local services called through local interfaces, and second local services called through pre-encapsulated classes.

[0200] The second permission operation page includes descriptive information about the operation permissions of other business services. This description information explains the purpose of enabling these permissions. The second permission operation page also includes other switch controls for setting the operation permissions of other business services. Different display styles of these switch controls indicate whether the operation permissions of other business services are enabled or disabled. For example, when a switch control is grayed out, the operation permissions are disabled; when it is green, the operation permissions are enabled. This embodiment does not limit the display style of the other switch controls used to indicate the enabled or disabled state.

[0201] For example, such as Figure 8 As shown, other business services include the service of enabling the camera. M4 is an example of the second permission operation page corresponding to the service of enabling the camera. n41 is the description information of the operation permission of enabling the camera. n42 is the other switch control corresponding to enabling the camera.

[0202] The terminal can be accessed via Figure 1 The operation permission setting unit 1042 of the permission page control component 104 implements the following: when the target application initiates other business services, a second permission operation page is displayed; in response to the permission operation triggered on the second permission operation page, the operation permissions for other business services in the second permission setting page are marked as enabled.

[0203] Specifically, when the target application initiates other business services through the business service module, it determines whether the operation permissions of those other business services under that business service module are enabled. If the operation permissions of those other business services under that business service module are not enabled, a second permission operation page is displayed. This second permission operation page can be displayed as a pop-up window, appearing above the currently displayed page of the target application and smaller than the current page; alternatively, it can be displayed as a separate page, accessible by navigating from the currently displayed page of the target application.

[0204] In the second permission operation page, the display style of other switch controls indicates that the operation permissions of other business services under this business service module are disabled. In response to permission operations triggered on the second permission operation page for other switch controls, the operation permissions of other business services under this business service module are enabled, and the display style of the other switch controls is changed so that the modified display style indicates that the operation permissions of other business services under this business service module are enabled. When the operation permissions of other business services are enabled, the access permission to call the corresponding interfaces of other business services under this business module is also enabled, allowing calls to these interfaces within this business module.

[0205] In one embodiment, the second permission operation page includes: description information of operation permissions for other business services, and a permission enabling control. The permission enabling control may include the text information "Agree" or the text information "Enable"; by triggering the permission enabling control, operation permissions for other business services are enabled.

[0206] For example, such as Figure 9 As shown, other business services include the service of enabling the camera. M5 is an example of the second permission operation page corresponding to the service of enabling the camera. n51 is the description information of the operation permission of enabling the camera. n52 is the permission enabling control, and n52 includes the text information "Agree".

[0207] In the above embodiments, when the target application initiates other business services through the business service module, if the operation permissions of other business services under the business module are in a closed state, a second permission operation page is displayed. Through the second permission operation page, one can understand the purpose of enabling the operation permissions of other business services under the business service module. In the second permission operation, triggering other switch controls can enable the operation permissions of other business services under the business service module, so that other business service interfaces can be called under the business service module without having to manually enable the operation permissions of other business services multiple times, thus improving the efficiency of enabling the operation permissions of other business services and the calling permissions of other business service interfaces.

[0208] In one embodiment, the first permission operation page also includes other switch controls for operation permissions of other business services. After the first permission operation page is displayed in response to the triggering operation of the authorization guidance information, when the operation permissions of other business services are in a closed state, in response to the triggering operation of other switch controls in the first permission operation page, the operation permissions of other business services in the first permission operation page are marked as open, and an authorization instruction is generated to return the other business service interface to the target application; when the operation permissions of other business services are in a closed state, in response to the triggering operation of other switch controls in the first permission operation page, the operation permissions of other business services in the first permission operation page are marked as closed, and a denial authorization instruction is generated to refuse to return the other business service interface to the target application.

[0209] For example, such as Figure 10 As shown, M6 is an example in the first permission operation page, which includes a target switch control n61 for the target business service, other switch controls n62 for turning on the camera, other switch controls n63 for other business service 1, and other switch controls n64 for other business service 2. If n61 is used to indicate that the operation permission of the target business service is enabled, then n63 is used to indicate that the operation permission of other business service 1 is disabled.

[0210] In the above embodiments, the target switch control for the target business service and other switch controls for other business services in the first permission operation page allow for a clear understanding of whether the operation permissions for the target business service and other business services are enabled. The operation permissions for the target business service and other business services of the target application can be managed uniformly through the first permission operation page. Users can directly enable or disable the operation permissions for the target business service and other business services in the first permission operation page, eliminating the need for multiple manual operations to enable or disable the operation permissions for the target business service and other business services, thus improving the efficiency of setting the operation permissions for the target business service and other business services.

[0211] In one embodiment, other business services include: system services invoked through a pre-created service proxy object; other business services invoked by the terminal through the pre-created service proxy object; and other business services invoked by the target application through the pre-created service proxy object.

[0212] During the pre-creation of the service proxy object, the name of the method used to call other business services is written in the invoke method of the InvocationHandler interface of the service proxy object, so that the terminal can intercept the target application's call to other business services through the pre-created service proxy object.

[0213] In one embodiment, other business services include: a first local service called through a local interface; the absolute address of the first local service is written into a hook function, which allows the terminal to intercept the target application's call to the first local service.

[0214] Specifically, many low-level functions in the operating system are implemented in C / C++ and stored in .so files. The services corresponding to these low-level functions implemented in C / C++ and stored in .so files are denoted as the first local services. The first local services can be file read / write services, network connection services, etc.

[0215] The target application calls the first local service in the .so file, obtains the base address and relocation information of the first local service in the .so file, and adds the base address and relocation information to obtain the absolute address of the first local service. The relocation information of the first local service reflects the offset of the first local service relative to its base address in the .so file during runtime.

[0216] The relocation information for the first local service is determined based on the .rel.plt, .dynst, and .dynstr arrays. The .rel.plt array contains multiple relocation information items, the .dynst array contains the correspondence between multiple relocation information items and multiple function indices, and the .dynstr array is a symbol table string table, which contains the correspondence between multiple function indices and multiple function names.

[0217] Iterate through each relocation information item in the .rel.plt array. For the current relocation information obtained from the iteration, find the current function index corresponding to the current relocation information in the .dynst array, and find the function name corresponding to the current function index in the .dynstr array. If the function name found is the function name of the first local service, then use the current relocation information as the relocation information of the first local service.

[0218] like Figure 11 As shown, the process of determining the absolute address of the first local service includes:

[0219] S1102, the current relocation information obtained by traversing the .rel.plt array can be represented by the data structure Elf32_Rel. The data structure Elf32_Rel includes the r_offset parameter and the r_info parameter. The r_offset parameter is the current relocation information, and the r_info parameter is the query index of the current relocation information.

[0220] S1104, the function index corresponding to the current relocation information is determined in the .dynst array based on the r_info parameter; the data structure obtained by querying the .dynst array based on the r_info parameter includes: the st_name parameter, which is the function index corresponding to the current relocation information;

[0221] S1106, retrieve the function name corresponding to the function index from the .dynstr array;

[0222] S1108, If the function name obtained by the query is the function name of the first local service, then the r_offset parameter in the data structure Elf32_Rel is used as the relocation information of the first local service;

[0223] S1110: Obtain the base address of the first local service in the .so file, add the base address of the first local service and the relocation information to obtain the absolute address of the first local service.

[0224] For example, the first local service is the file opening service, and the function name of the first local service is "open". The Elf32_Rel data structure for relocation information is obtained by traversing the .rel.plt array. The Elf32_Rel data structure includes the r_offset parameter and the r_info parameter. Based on the r_info parameter, the st_name parameter is obtained by querying the .dynst array. Assuming that the st_name parameter is 7, the 7th data item is searched in the .dynstr array. If the string in the 7th data item is "open", then the Elf32_Rel data structure including the r_offset parameter is used as the relocation information of the first local service.

[0225] In one embodiment, other business services include: a second local service called through a pre-encapsulated class. The second local service is a business service that cannot be intercepted by a hook function. The second local service is pre-encapsulated in a class to obtain the pre-encapsulated class, so that the target application can call the second local service through the pre-encapsulated class. Therefore, the terminal can perceive the target application calling the second local service through the pre-encapsulated class.

[0226] In the above embodiments, other business services include system services, a first local service, and a second local service called through a pre-created service proxy object. The terminal intercepts the target application's call to the system service through the pre-created service proxy object, intercepts the target application's call to the first local service through a hook function, and detects the target application's call to the second local service through a pre-encapsulated class. In response to the target application's call to other business services, a second permission operation page is displayed. Through the second permission operation page, the purpose of the operation permission to enable other business services is understood, and the operation permission to enable other business services can be enabled in the second permission page, thereby improving the efficiency of enabling operation permissions to enable other business services.

[0227] In one specific embodiment, such as Figure 12 As shown, the application's risk control methods include:

[0228] Step S1201: Receive a service call request sent by the target application, obtain the service identifier based on the service call request, and determine the triggered service module in the target application based on the service identifier; determine the service interface requested by the target application based on the service call request.

[0229] Step S1202: If the business service interface matches the business service module, the service call request initiated by the target application is determined to be a compliant request.

[0230] Step S1203: Detect the permission information of the business service module for the business service interface;

[0231] Step S1204: When the permission information indicates that the business service module has the permission to call the business service interface, return the business service interface to the target application.

[0232] Step S1205: When the permission information indicates that the business service module does not have the permission to call the business service interface, and the business service interface is the target business service interface called after the business service module initiates the target business service, a request to obtain information about the target business service is sent to the cloud server.

[0233] Step S1206: Receive and display the authorization guidance information for the target business service issued by the cloud server; the authorization guidance information includes permission setting controls and a guidance animation for displaying the calling permission to enable the target business service interface;

[0234] Step S1207: In response to the trigger operation of the permission setting control, the first permission operation page is displayed;

[0235] Step S1208: When an authorization instruction triggered by the first permission operation page is detected, a business service interface is returned to the target application;

[0236] Step S1209: In response to the permission operation triggered on the first permission operation page, mark the operation permission for the target business service on the first permission operation page as enabled.

[0237] Step S1210: If the business service interface does not match the business service module, the service call request initiated by the target application is identified as an abnormal request.

[0238] Step S1211: When a denial authorization instruction triggered by the first permission operation page is detected, the business service interface is refused to be returned to the target application.

[0239] In this specific embodiment, the process of updating authorization guidance information is also included. After step S1206, the process further includes:

[0240] Step S1212: Within a preset time period after receiving the authorization guidance information, obtain the first display count of the authorization guidance information or the second display count of the permission request page; send the first display count or the second display count to the cloud server; if the first display count or the second display count meets the preset conditions, receive the updated authorization guidance information sent by the cloud server.

[0241] In this specific embodiment, the process of granting operation permissions for other business services is also included. After step S1203, the process further includes:

[0242] Step S1213: When the permission information indicates that the business service module does not have the permission to call the business service interface, and the business service interface is another business service interface of another business service, the second permission operation page is displayed; in response to the permission operation triggered on the second permission operation page, the operation permission for other business services in the second permission setting page is marked as enabled; wherein, other business services include: system services called through a pre-created service proxy object, first local services called through a local interface, and second local services called through a pre-encapsulated class.

[0243] like Figure 13 As shown, the application's risk control methods can be used in the following application scenarios:

[0244] Step S1301: The target application is a utility application, which receives a service call request for the camera interface sent by the utility application.

[0245] Step S1302: Obtain the service identifier r1 of the service call request of the camera interface at the preset interface, and determine the service module as the scanning function module based on r1.

[0246] Step S1303: The preset interface corresponding to the scanning function module includes: camera interface. Therefore, it is determined that the camera interface matches the scanning function module.

[0247] Step S1304: Detect the permission information of the scanning function module for the camera interface;

[0248] In step S1305, if the permission information indicates that the scanning function module does not have permission to call the camera interface, then the first permission operation page will be displayed.

[0249] Step S1306: Upon detecting the authorization instruction triggered by the first permission operation page, the camera interface is returned to the target application.

[0250] The application's risk control methods can also be used in the following application scenarios:

[0251] The target application is a social application. It receives a target service call request from a social application; this request is used to start a Service component. The system retrieves the business identifier (r2) of the target service call request from a preset interface. Based on r2, it determines the business service module to be the instant messaging receiving module. It identifies the target business service interface corresponding to the target service call request, which is the interface invoked after the Service component starts. The preset interfaces corresponding to the instant messaging receiving module include the target business service interface; therefore, it determines that the target business service interface matches the instant messaging receiving module. It checks the instant messaging receiving module's permission information for the target business service interface. If the permission information indicates that the instant messaging receiving module does not have permission to call the target business service interface, it sends information to the cloud server to obtain information. It receives and displays the authorization guidance information for the target business service issued by the cloud server. In response to the triggered operation of the authorization guidance information, it displays the first permission operation page. In response to the permission operation triggered on the first permission operation page, it marks the operation permission for the target business service on the first permission operation page as enabled. Finally, it returns the target business service interface to the target application service.

[0252] The risk control method of the aforementioned application determines whether a service call request sent by the target application under a specific business service module is an abnormal or compliant request by matching the business service interface with the business service module. A compliant service call request under one business service module does not guarantee compliance throughout the entire lifecycle of the target application. If a service call request sent by the target application under a specific business service module is an abnormal request, it can be rejected. This fine-grained differentiation of business service interface calls, determining whether a service call request under different business service modules is an abnormal request, prevents the target application from excessively calling business service interfaces, thereby preventing the leakage of user privacy information and providing security protection for user privacy.

[0253] The terminal retrieves authorization guidance information for the target business service from the cloud server. Through this information, the user can understand the purpose of granting the user permission to access the target business service. The terminal can also access the first permission operation page, where the user can grant the user permission to access the target business service. This grants the target business module the permission to call the target business service interface. By guiding the user through the authorization guidance information, the process of granting the user permission to access the target business service becomes simpler and easier, improving the efficiency of granting the user permission to access the target business service and the efficiency of granting the user permission to call the target business service interface.

[0254] Within a preset time period after receiving the authorization guide scheme issued by the cloud server, the first display count or the second display count is obtained and sent to the cloud server. If the cloud server determines that the authorization guide information is not compatible with the terminal based on the first display count or the second display count, the updated authorization guide information will be sent to the terminal. Thus, when the terminal is not compatible with the authorization guide information, it can obtain the updated authorization guide information in a timely manner, so that the authorization guide information and the first permission operation page can be displayed normally.

[0255] When the target application initiates other business services through the business service module, a second permission operation page is displayed. Through the second permission operation page, users can understand the purpose of the operation permission for enabling other business services by the business service module, as well as the operation permission for enabling other business services under the business service module. This eliminates the need for multiple manual operations to enable operation permissions for other business services, thus improving the efficiency of enabling operation permissions for other business services and calling permissions for other business service interfaces.

[0256] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0257] In one embodiment, such as Figure 14 As shown, a risk control method for an application is provided. This embodiment illustrates the method by applying it to a terminal. The terminal uses... Figure 1 The business behavior cleanup component 106 in the middle implements this method, which includes the following steps:

[0258] Step S1402: In response to the object retrieval request sent by the target application, obtain the pre-created service proxy object.

[0259] The target application can be any application installed on the terminal. The object acquisition request is sent from the client process of the terminal's operating system to the server process. The service proxy object is a proxy object of the ActivityManagerService (AMS). After obtaining the service proxy object, various system services can be called through the service proxy object.

[0260] For example, when the target application is terminated, the operating system's Client process sends an object retrieval request to the Server process. This object retrieval request is used to obtain the AMS proxy object. In response to the object retrieval request sent by the target application, the terminal returns the pre-created AMS proxy object to the operating system's Client process.

[0261] The terminal can be accessed via Figure 1 The service proxy object acquisition unit 1062 of the business behavior cleanup component 106 in the middle realizes the acquisition of the pre-created service proxy object.

[0262] Specifically, the terminal can intercept object retrieval requests sent by the target application through hook functions. In response to the object retrieval request, the terminal puts the pre-created proxy service object into the service manager's mapping table, so that the service manager can retrieve the pre-created proxy service object from the mapping table and return the pre-created proxy service object to the target application.

[0263] The terminal's operating system can obtain pre-created service proxy objects through inter-process communication, such as... Figure 15 As shown, the operating system uses the Binder mechanism for inter-process communication. The inter-process communication process includes: the server process first registers with the service manager (SM), the client process initiates an object acquisition request (a request to call the object of the server process) through the inter-process communication driver (Binder driver), the SM obtains the service object of the server process in the map, and converts the service object into a service proxy object through the Binder driver and returns it to the client process.

[0264] In practical applications, based on the above-mentioned inter-process communication process, the terminal can pre-create a service proxy object. When the terminal intercepts the object retrieval request initiated by the target application through the Client process through the hook function, in response to the object retrieval request, the pre-created service proxy object (AMS proxy object) is put into the SM's Map. Then, the SM retrieves the AMS proxy object from the Map and returns the AMS proxy object to the Client process, so that the Client process can obtain the AMS proxy object and call system services through the AMS proxy object.

[0265] Step S1404: In response to the target service call request sent by the target application when initiating the target business service, the target business service interface of the target business service is called through the service proxy object.

[0266] AMS is a core service of the operating system, managing its four main components: Activity, Service, ContentProvider, and Broadcast Receiver. The target business service can be a service used to launch the target application. In practice, this target business service object can be a service that launches the Service component, thus starting the target application. The target business service interface can be invoked when the target business service has finished launching. In practice, if the target business service is not a service that launches the Service component, invoking the target business service interface can involve calling the `serviceDoneExecuting` method, which is invoked when the Service component has finished launching.

[0267] The terminal can be accessed via Figure 1 The interface parameter update unit 1063 of the business behavior cleanup component 106 in the middle realizes the interception of the target business service interface of the target business service.

[0268] Specifically, the target application starts the Service component by calling `startservice` or `bindservice` through the service proxy object. In other words, the target service call request for the target business service is triggered by calling `startservice` or `bindservice`. Upon completion of the Service component's startup, the target business service interface is called through the service proxy object to invoke the `serviceDoneExecuting` method. The service proxy object can intercept the target application's call to the target business service interface.

[0269] During the pre-creation of the service proxy object (AMS's proxy object), the name of the serviceDoneExecuting method is written in the invoke method of the InvocationHandler interface of the AMS proxy object. This allows the terminal to intercept the target application's call to the target business service interface through the AMS proxy object, that is, to intercept the target application's call to the serviceDoneExecuting method through the service proxy object.

[0270] Step S1406: Obtain the service record object obtained by encapsulating the target business service.

[0271] The service record object can be an object used to manage the business behaviors corresponding to each business service. For example, the business attributes in the service record object can be used to determine the business behavior, and then the business behavior and the cumulative number of business behaviors can be counted. In practical applications, the service record object can include a ServiceRecord object or other objects used to manage the business behaviors corresponding to each business service.

[0272] A ServiceRecord object is a wrapper around a Service component on the Server process side. Each Service component in AMS has a corresponding ServiceRecord object, which is used to record relevant information about its corresponding Service component.

[0273] In one embodiment, after initiating a request to start the Service component by calling `startservice`, the `startServiceLocked` method is called to obtain the ServiceRecord object of the Service component. In another embodiment, after initiating a request to start the Service component by calling `bindservice`, the `bindServiceLocked` method is called to obtain the ServiceRecord object of the Service component.

[0274] Step S1408: When the target business service interface is updated after being called, the business attributes of the service record object are modified based on the updated target business service interface to obtain the modified business attributes.

[0275] The business attributes of the service record object are determined based on the parameters of the target business service interface. The terminal can... Figure 1 The interface parameter update unit 1063 of the business behavior cleanup component 106 in the middle realizes the interception and update of the parameters of the target business service interface, and the modification of the business attributes of the record object.

[0276] Specifically, the parameters of the target business service interface include return parameter values. When the return parameter value of the target business service interface is updated, the business attributes of the service record object are modified based on the updated return parameter value. In practical applications, the parameters of the target business service interface include the return parameter value (res parameter value) of the serviceDoneExecuting method. When the res parameter value of the serviceDoneExecuting method is updated, the business attributes of the service record object are modified based on the updated res parameter value of the serviceDoneExecuting method, resulting in the modified business attributes.

[0277] When the target business service is a service that starts the Service component, if the `res` parameter of the `serviceDoneExecuting` method returns the first return value, the business attribute of the service record object is the first business attribute; if the `res` parameter of the `serviceDoneExecuting` method returns the second return value, the business attribute of the service record object is the second business attribute. The second return value is then modified to the first return value to update the `res` parameter value of the `serviceDoneExecuting` method to the first return value, thereby modifying the business attributes of the service record object. The modified business attribute then becomes the first business attribute.

[0278] Step S1410: Based on the modified business attributes, clean up the business behaviors corresponding to the target business service.

[0279] The terminal can be accessed via Figure 1 The interface parameter update unit 1063 of the business behavior cleanup component 106 in the middle realizes: cleanup of the business behavior corresponding to the target business service according to the modified business attributes.

[0280] Specifically, when the business attribute of the service record object is the second business attribute, the service record object will record the business behavior of the target business service; when the business attribute of the service record object is the first business attribute (the modified business attribute), the service record object will not record the business behavior of the target business service, thereby realizing the cleanup of the business behavior of the target business service through the modified business attribute.

[0281] In the aforementioned risk control method for the application, the terminal receives an object acquisition request initiated by the target application, obtains a pre-created service proxy object, and then uses the service proxy object to call the target business service and its interface. The terminal updates the parameters of the target business service interface to modify the business attributes of the service record object. Based on the modified business attributes, the terminal cleans up the business behaviors corresponding to the target business service. If the business attributes of the target business service in the service record object are not modified, third-party applications can statistically obtain the business behaviors of the target business service through the service record object. After obtaining these behaviors, the target application may be restricted from calling the target business service, affecting its usability. Furthermore, this application modifies the business attributes of the service record object by updating the parameters of the target business service interface, thereby cleaning up the business behaviors corresponding to the target business service. Third-party applications cannot statistically obtain the business behaviors corresponding to the target business service, thus not affecting the target application's ability to call the target business service. This fundamentally solves the problem of restricted calls to the target business service, ensuring the normal use of the target application.

[0282] In one embodiment, when the parameters of the target business service interface are updated after the call, the business attributes of the service record object are modified based on the updated target business service interface, including: obtaining the return value of the service startup control interface; the service startup control interface is the control interface executed by the target application when initiating the target business service; updating the parameters of the target business service interface based on the return value; and modifying the business attributes of the service record object according to the updated parameters of the target business service interface.

[0283] The service startup control interface is an interface that is called before the target business service interface is invoked. The return value of the service startup control interface determines the return parameter value of the target business service interface. In practical applications, the service startup control interface is used to call the onstartCommand method, and the return value of the service startup control interface is the return value of the onstartCommand method. The return parameter value of the target business service interface is the res parameter value of the serviceDoneExecuting method, and the res parameter value of the serviceDoneExecuting method can be the return value of the onstartCommand method.

[0284] The business attribute of a service record object is stopIfkilled. Modifying the business attribute of a service record object means modifying the value of the stopIfkilled attribute; the value of the stopIfkilled attribute is determined by the res parameter value of the serviceDoneExecuting method.

[0285] Specifically, when the target application completes the startup of the Service component, the Client process is triggered to call the onstartCommand method, so that the Server process knows that the startservice component has started. Then, the Server process calls the serviceDoneExecuting method of the target business service interface and uses the return value of the onstartCommand method as the res parameter value of the serviceDoneExecuting method.

[0286] Furthermore, the return value of the `onstartCommand` method reflects the startup status of the Service component. If the return value of `onstartCommand` is `START_STICKY`, it means that the Service component will be restarted after it is terminated. Therefore, after exiting the target application, the business behavior of starting the Service component can be queried through the service record object. If the return value of `onstartCommand` is `START_NOT_STICKY`, it means that the Service component will not be restarted after it is terminated. Therefore, after exiting the target application, the business behavior of starting the Service component cannot be queried through the service record object.

[0287] For ease of explanation, let START_NOT_STICKY be designated as the first return value and START_STICKY as the second return value. If the return value of the onstartCommand method is the first return value, then the res parameter of the target business service interface will have the first return value, the business attribute of the service record object will have the first business attribute, and the attribute value of the first business attribute will be true. If the return value of the onstartCommand method is the second return value, then the res parameter of the target business service interface will have the second return value, the business attribute of the service record object will have the second business attribute, and the attribute value of the second business attribute will be false.

[0288] If the return value of the onstartCommand method is changed to the first return value, the res parameter value of the serviceDoneExecuting method will be updated to the first return value, and the stopIfkilled property of the service record object will be true. When the stopIfkilled property of the service record object is true, the business behavior of the target business service will be cleaned up.

[0289] In the above embodiments, by modifying the return value of the service startup control interface to the first return value, the parameters of the target business service interface are updated to the first return value. When the parameters of the target business service interface are updated to the first return value, the stopIfkilled attribute value of the service record object is modified to true, thereby cleaning up the business behavior of the target business service and making it impossible for third-party applications to count the business behavior of the target business service.

[0290] In one embodiment, updating the parameters of a target business service interface based on a return value includes: determining the type parameter value of the target business service interface; if the type parameter value is a first type parameter value, then updating the parameters of the target business service interface based on the return value; if the type parameter value is a second type parameter value, then updating the parameters of the target business service interface based on the return value after modifying the type parameter value to the first type parameter value.

[0291] The parameters of the target business service interface include: type parameter value and res parameter value. The type parameter value of the target business service interface is the type parameter value of the serviceDoneExecuting method.

[0292] Specifically, when a request to start a Service component is initiated by calling startservice, and the type parameter of the serviceDoneExecuting method has the first type parameter value: SERVICE_DONE_EXECUTING_START, then the res parameter value of the serviceDoneExecuting method will be modified to the first return value.

[0293] When a request to start a Service component is initiated by calling `bindservice`, the `type` parameter of the `serviceDoneExecuting` method is set to the second type parameter value: `SERVICE_DONE_EXECUTING_ANON`. If the `type` parameter of the `serviceDoneExecuting` method is `SERVICE_DONE_EXECUTING_ANON`, the business attributes of the service record object default to the second business attribute, and the attribute value of the service record object defaults to `false`, thus failing to clean up the business behavior of the target service. Therefore, it is necessary to change the `type` parameter value of the `serviceDoneExecuting` method to the first type parameter value, and then change the `res` parameter value of the `serviceDoneExecuting` method to the first return value to achieve the cleanup of the business behavior of the target service.

[0294] In the above embodiments, when a request to start the Service component is initiated by calling bindservice, the type parameter value of the target business service interface is a second type value, and the attribute value of the service record object's business attribute is defaulted to the second attribute value, making it impossible to clean up the business behavior of the target business service. However, when the type parameter value of the target business service interface is a second type value, by modifying the type parameter value of the target business service interface to a first type value and then modifying the res parameter value of the target business service interface to a first return value, it becomes possible to clean up the business behavior corresponding to the target business service when a request to start the Service component is initiated by calling bindservice.

[0295] In one embodiment, the object acquisition request may be initiated by a daemon process in the target application. Before acquiring the pre-created service proxy object in response to the object acquisition request sent by the target application, the process further includes: generating a first process and a second process of the target application; creating a first file and a second file; the first process holding a file lock for the first file and the second process holding a file lock for the second file; acquiring the file lock for the second file through the first process; detecting the status of the second process based on the file lock of the second file; and if the status of the second process is terminated, sending the object acquisition request through the first process.

[0296] The process involves a main process generating a first process, which in turn creates a second process. A first file is created specifically for the first process, and the first process holds the file lock for that file. Similarly, a second file is created specifically for the second process, and the second process holds the file lock for that file. Both the first and second processes can act as daemons for the target application. Upon detecting that a process has been terminated, the daemon process initiates an object retrieval request to start a new process.

[0297] The terminal can be accessed via Figure 1 The process detection unit 1041 of the process guardian component 104 implements the following: when a process is detected to have been terminated, an object acquisition request is initiated through the object acquisition request sending unit 1042.

[0298] Specifically, the second process locks the second file using a file lock. While the second process is alive, the file lock remains locked, preventing the first process from acquiring it. When the second process terminates, it releases the file lock, allowing the first process to acquire it. Therefore, by periodically acquiring the file lock of the second file, the first process can monitor the file lock in real time and determine its survival status based on the file lock information.

[0299] If the first process fails to acquire the file lock of the second file, it indicates that the second process is alive. If the first process acquires the file lock of the second file, it indicates that the second process is in a terminated state. When the second process is in a terminated state, the first process sends an object acquisition request to start a new process.

[0300] In one embodiment, the new process is treated as a new second process, which holds the file lock of the second file. The first process continues to acquire the file lock of the second file, and the survival status of the new second process is determined based on the file lock of the second file.

[0301] In the above embodiment, the first process acquires the file lock of the second file. If the second process is alive, the file lock of the second file is locked, so the first process cannot acquire the file lock of the second file. If the file lock of the second file is acquired, it means that the file lock of the second file is released, and it can be determined that the second process has been terminated. The first process sends an object acquisition request. In this way, after one process of the target application is terminated, a new process can be started, which improves the activity of the target application.

[0302] In one embodiment, after creating the first file and the second file, the process further includes: acquiring the file lock of the first file through the second process; detecting the state of the first process based on the file lock of the first file; and if the state of the first process is terminated, sending an object acquisition request through the second process.

[0303] The terminal can be accessed via Figure 1 The process detection unit 1081 of the process guardian component 108 implements the following: when a process is detected to have been terminated, an object acquisition request is initiated through the object acquisition request sending unit 1082.

[0304] Specifically, the first process locks the first file using a file lock. While the first process is alive, the file lock remains locked, preventing the second process from acquiring it. If the first process terminates, it releases the file lock, allowing the second process to acquire it. Therefore, by periodically acquiring the file lock of the first file by the second process, the file lock of the first file can be monitored in real-time, and the survival status of the first process can be determined based on the file lock information.

[0305] If the second process fails to acquire the file lock of the first file, it indicates that the first process is alive. If the second process acquires the file lock of the first file, it indicates that the first process is in a terminated state. When the first process is in a terminated state, a new process is started by sending an object acquisition request through the second process.

[0306] In one embodiment, the first process and the second process mutually check each other's file locks to detect the survival status of the other process. If the first process determines that the second process has been terminated, it starts a new process and uses the new process as the new second process. The first process and the new second process continue to mutually check each other's file locks. Similarly, if the second process determines that the first process has been terminated, it starts a new process and uses the new process as the new first process. The second process and the new first process continue to mutually check each other's file locks to determine the survival status of the other process based on the other process's file locks.

[0307] In the above embodiments, the first process and the second process detect the liveness of each other's processes. When the first process or the second process detects that the other process has been terminated, the first process or the second process sends an object acquisition request to start a new process, which further improves the activity of the target application.

[0308] In one embodiment, before acquiring the pre-created service proxy object in response to an object acquisition request sent by the target application, the method further includes: after generating a first process and a second process of the target application, generating a child process of the first process and a child process of the second process; creating a third file and a fourth file; the child process of the first process holding a file lock of the third file, and the child process of the second process holding a file lock of the fourth file; acquiring the file lock of the fourth file through the child process of the first process; detecting the state of the child process of the second process based on the file lock of the fourth file, and if the state of the child process of the second process is terminated, initiating an object acquisition request through the child process of the first process.

[0309] The terminal can be accessed via Figure 1 The process detection unit 1081 of the process guardian component 108 implements the following: when a process is detected to have been terminated, an object acquisition request is initiated through the object acquisition request sending unit 1082.

[0310] Specifically, after the target application starts, the first process of the target application is generated from the main process, and the second process is generated from the first process. The first and second processes call the fork method to create child processes of the first process and child processes of the second process. For ease of explanation, the child process of the first process is referred to as the first child process, and the child process of the second process is referred to as the second child process.

[0311] The second child process holds the file lock of the fourth file. The second child process locks the fourth file through the file lock of the fourth file. The first child process periodically acquires the file lock of the fourth file to realize real-time detection of the file lock of the fourth file, and detects the survival status of the second child process based on the file lock of the fourth file.

[0312] While the second child process is alive, the file lock of the fourth file is locked, preventing the first child process from acquiring it. If the second child process is terminated, it releases the file lock of the fourth file, making it available for the first child process to acquire. Therefore, if the first child process acquires the file lock, it indicates that the second child process is terminated. The first child process then sends an object acquisition request to start a new process.

[0313] The second child process and the second process belong to the same process group. When the second process is terminated, the second child process will be terminated. If the first child process detects that the second child process has been terminated by acquiring the file lock of the fourth file, it can be determined that the second process has been terminated.

[0314] In one embodiment, the newly started process is treated as a new second process, and a child process of the new second process is generated. The child process of the new second process holds the file lock of the fourth file. The child process of the first process continues to acquire the file lock of the fourth file. The child process of the new second process and the survival status of the new second process are determined based on the file lock of the fourth file.

[0315] In the above embodiment, the first child process acquires the file lock of the fourth file to detect the survival status of the second child process and indirectly detect the survival status of the second process. If the file lock of the fourth file is acquired, it indicates that the second child process and the second process have been terminated, which improves the accuracy of mutual detection between processes and increases the activity of the target application.

[0316] In one embodiment, after creating the third and fourth files, the method further includes: acquiring the file lock of the third file through a child process of the second process; detecting the state of the child process of the first process based on the file lock of the third file; and if the state of the child process of the first process is the terminated state, initiating an object acquisition request through the child process of the second process.

[0317] The terminal can be accessed via Figure 1 The process detection unit 1081 of the process guardian component 108 implements the following: when a process is detected to have been terminated, an object acquisition request is initiated through the object acquisition request sending unit 1082.

[0318] Specifically, the first child process holds the file lock of the third file, and locks the third file through the file lock. The second child process periodically acquires the file lock of the third file to realize real-time detection of the file lock of the third file, and detects the survival status of the first child process based on the file lock of the third file.

[0319] While the first child process is alive, the file lock of the third file is locked, preventing the second child process from acquiring it. If the first child process is terminated, it releases the file lock of the third file, making it free. This allows the second child process to acquire the file lock. Therefore, if the second child process acquires the file lock, it indicates that the first child process is terminated. The second child process can then send an object acquisition request to start a new process.

[0320] The first child process and the first process belong to the same process group. When the first process is terminated, the first child process will be terminated. If the second child process detects that the first child process has been terminated by acquiring the file lock of the third file, it can be determined that the first process has been terminated.

[0321] In one embodiment, the newly started process is taken as the new first process, and a child process of the new first process is generated. The child process of the new first process holds the file lock of the third file. The child process of the new first process continues to acquire the file lock of the third file. The child process of the new first process and the survival status of the new first process are determined based on the file lock of the third file.

[0322] In the above embodiment, the first child process acquires the file lock of the third file to detect the survival status of the first child process and indirectly detect the survival status of the first process. If the file lock of the third file is acquired, it indicates that the first child process and the first process have been terminated, which improves the accuracy of mutual detection between processes and increases the activity of the target application.

[0323] In one embodiment, after generating the child processes of the first process and the second process, the method further includes: creating a thread in the child process of the first process to obtain a first thread; acquiring a file lock of the first file through the first thread, and detecting the state of the first process based on the file lock of the first file; if the state of the first process is detected as terminated through the first thread, initiating an object acquisition request through the first thread.

[0324] The terminal can be accessed via Figure 1 The process detection unit 1081 of the process guardian component 108 detects that a process has been terminated and implements an object acquisition request through the object acquisition request sending unit 1082.

[0325] Specifically, the first thread periodically acquires the file lock of the first file to achieve real-time monitoring of the file lock. Since the first process holds the file lock of the first file, while the first process is alive, it locks the first file using the file lock, thus preventing the first thread from acquiring the file lock. If the first thread fails to acquire the file lock, the first process is determined to be alive; if the first thread acquires the file lock, the first process is determined to be terminated. A new process is then started by initiating an object acquisition request by the first thread.

[0326] In one embodiment, the newly started process is designated as the new first process. The new first process holds the file lock of the first file, generates a child process of the new first process, creates a new first thread through the child process of the new first process, and the new first thread continues to acquire the file lock of the first file. The survival status of the new first process is determined based on the file lock of the first file.

[0327] In the above embodiments, the survival status of the first process is detected by the first thread, the survival status of the first process is detected by the second process, and the survival status of the first child process and the first process is detected by the second child process. The survival status of the first process is detected by the above three methods of mutual detection between processes, which further improves the accuracy and stability of mutual detection between processes and improves the activity of the target application.

[0328] In one embodiment, after creating a thread in a child process of the first process to obtain the first thread, the process further includes: creating a thread in a child process of the second process to obtain the second thread; acquiring a file lock for the second file through the second thread, and detecting the state of the second process based on the file lock of the second file; if the state of the second process is terminated, initiating an object acquisition request through the second thread.

[0329] The terminal can be accessed via Figure 1 The process detection unit 1081 of the process guardian component 108 implements the following: when a process is detected to have been terminated, an object acquisition request is initiated through the object acquisition request sending unit 1082.

[0330] Specifically, the second thread periodically acquires the file lock of the second file to achieve real-time monitoring of the file lock. Since the second process holds the file lock, it locks the second file while the second process is alive, preventing the second thread from acquiring the file lock. If the second thread fails to acquire the file lock, the second process is determined to be alive; if it acquires the file lock, the second process is determined to be terminated. A new process is then started by initiating an object acquisition request by the second thread.

[0331] In one embodiment, the newly started process is treated as a new second process. The new second process holds the file lock of the second file, generates a child process of the new second process, creates a new second thread through the child process of the new second process, and the new second thread continues to acquire the file lock of the second file. The survival status of the new second process is determined based on the file lock of the second file.

[0332] In one embodiment, such as Figure 16As shown, the first process C1 and the second process C2 mutually check the survival status of each other's processes, and the first child process D1 and the second child process D2 mutually check the survival status of each other's processes, and can also indirectly check the survival status of the first process C1 and the second process C2; the survival status of the first process C1 is checked through the first thread p1, and the survival status of the second process C2 is checked through the second thread p2. Combined with... Figure 16 and Figure 17 After the target application starts, the onCreate method is called by the main process. In the onCreate method, the initialization interface of the detection component is called, and the following steps are executed by the process component:

[0333] a1. Create a first file f1, a second file f2, a third file f3, and a fourth file f4;

[0334] a2. Start the first process C1 through the main process, initialize the member variables of the first process C1, and the first process C1 holds the file lock of the first file f1;

[0335] a3. Start the second process C2 through the first process, initialize the member variables of the second process C2, and the second process C2 holds the file lock of the second file f2;

[0336] a4. First process C1 acquires the file lock of second file f2, and second process C1 acquires the file lock of first file f1.

[0337] a5. If the first process C1 acquires the file lock of the second file f2, then the first process C1 sends an object acquisition request.

[0338] a6. If the second process C2 acquires the file lock of the first file f1, then send an object acquisition request through the second process C2;

[0339] a7. The first process C1 enters the native layer, creates the first child process D1, initializes the member variables of the first child process D1, and the first child process D1 holds the file lock of the third file f3; C1 and D1 belong to the same process group;

[0340] a8. The second process C2 enters the native layer, creates a second child process D2, initializes the member variables of the second child process D2, and the second child process D2 holds the file lock of the fourth file f4; C2 and D2 belong to the same process group;

[0341] a9. The first child process D1 acquires the file lock of the fourth file f4, and the second child process D2 acquires the file lock of the third file f3.

[0342] a10. If the first child process D1 acquires the file lock of the fourth file f4, then send an object acquisition request through the first child process D1.

[0343] a11. If the second child process D2 acquires the file lock of the fourth file f3, then send an object acquisition request through the second child process D2.

[0344] a12. The first child process D1 creates the first thread p1, and the first thread p1 acquires the file lock of the first file f1.

[0345] a13. The second child thread D2 creates a second thread p2, and the second thread p2 acquires the file lock of the second file f2.

[0346] a14. If the first thread p1 acquires the file lock of the first file f1, then send an object acquisition request through the first thread p1.

[0347] a15. If the second thread p1 acquires the file lock of the first file f2, then the first thread p2 sends an object acquisition request.

[0348] In the above embodiments, the first process and the second process mutually detect the survival status of each other's processes, and the first child process and the second child process mutually detect the survival status of each other's processes, and can also indirectly detect the survival status of the first process and the second process; by detecting the survival status of the first process through the first thread, and by detecting the survival status of the second process through the second thread, the target application always has a living process, thereby improving the activity of the target application.

[0349] In one embodiment, by detecting the termination of other processes through any one of the first process, second process, first child process, second child process, first thread, and second thread, cloud control information is obtained. If the cloud control information is the first information, the Android system version number is obtained. If the Android system version number meets the startup conditions, an object acquisition request is sent through any one of the processes or threads.

[0350] Specifically, cloud control information can be uploaded to a cloud server by the vendor developing the target application, and then distributed to the terminal by the cloud server. When the process of the target application is terminated, the cloud control information controls the target application to send object acquisition requests, thereby controlling the target application to initiate target business services. Target business services are services used to start the process of the target application.

[0351] When the cloud control information is the second type, the target application is not allowed to initiate the target business service and exits. When the cloud control information is the first type, it is then determined whether the Android system version number meets the startup conditions. The startup condition can be that the Android system version number is not the target version number. If the Android system version number is not the target version number, an object acquisition request is sent through any process or thread to obtain a pre-created service proxy object. The target business service is then initiated through the pre-created service proxy object to start a new process. If the Android system version number is the target version number, the target business service is initiated through the proxy program (a program built using Instrumentation) to start a new process. It should be noted that when the target business service is initiated through Instrumentation, the business behavior of the target business service will not be recorded by third-party applications.

[0352] For example, such as Figure 18 As shown, if any one of the following processes or threads detects that another process has been terminated, cloud control information is obtained. It is then determined whether the cloud control information is the first information. If not, the target application is exited. If it is, the Android system version number is determined to be the target version number. If not, an object acquisition request is sent through the first process or thread to obtain a pre-created service proxy object. The target business service is then initiated through the pre-created service proxy object. If not, the target business service is initiated through the proxy program.

[0353] In the above embodiments, the application vendor controls whether the target application initiates the target business service through cloud control information. For example, during the maintenance and update phase of the target application, the target user application may experience instability. The application vendor can control the issued cloud control information to be the second information, so that the target application does not initiate the target business service, reducing the frequency of the target application running in the background, thereby reducing the instability of the target application. When the application vendor needs to improve the activity of the target application, it controls the issued cloud control information to be the first information, so that the target application can start a new process by initiating the target business service after the process is terminated, thereby improving the activity of the target application.

[0354] In one embodiment, before obtaining the pre-created service proxy object, the method further includes: invoking a meta-reflection function via reflection; invoking a hidden interface exemption function via reflection using the meta-reflection function; and setting the exemption conditions of the hidden interface exemption function to a preset array; the preset array being the signature prefix of the object acquisition request and the target service invocation request.

[0355] Among them, the meta-reflection function is the getDeclaredMethod function, the hidden interface exemption function is the setHiddenApiExemptions function, and the preset array is the common signature prefix for object retrieval requests and target service call requests.

[0356] Specifically, the operating system has restrictions on the use of hidden interfaces, which means that the operating system can only use public standard interfaces. The operating system restricts access to hidden interfaces (non-public standard interfaces) through Android reflection. However, the risk control methods of the above-mentioned application need to use Android reflection to access hidden interfaces, such as when the target application sends object acquisition requests and target service call requests. Therefore, a solution is needed to break through the operating system's restrictions so that the risk control methods of the above-mentioned application can be executed.

[0357] The terminal can be accessed via Figure 1 The reflection breakthrough unit 1061 of the business cleanup component 106 in the middle realizes: breaking through the operating system's restriction on calling hidden interfaces.

[0358] Based on the source code in the operating system used to restrict access to hidden interfaces via Android reflection, it can be known that there are exemption conditions for reflection. If exemption conditions are set through the hidden interface exemption function, access to the interface corresponding to the exemption condition via reflection will not be restricted by the operating system. Furthermore, it can be known that methods called by system classes will not be restricted by the operating system.

[0359] This embodiment calls the `getDeclaredMethod` function via reflection. Since `getDeclaredMethod` belongs to the system class, calling it via reflection is not restricted by the operating system. Therefore, `getDeclaredMethod` is called a meta-reflection function. Furthermore, because `getDeclaredMethod` belongs to the system class, calling a hidden interface exemption function via meta-reflection will be considered a system call. Therefore, any function can be called via meta-reflection.

[0360] When calling a hidden interface, if the IsExempted method returns true, the operating system will not restrict the call to that hidden interface. Before obtaining the return value of the IsExempted method, the IsExempted method will call the DoesPrefixMatch method. The purpose of the DoPrefixMatch method is to compare the signature prefix of the called function with the exemption condition of the setHiddenApiExemptions function. If the signature prefix of the called function meets the exemption condition, the IsExempted method returns true, and the operating system will not restrict the call to that function.

[0361] If a common signature prefix is ​​identified for both the object retrieval request and the target service invocation request, and this signature prefix is ​​set as an exemption condition for the setHiddenApiExemptions function, then the operating system will not restrict the invocation of the object retrieval request and the target service invocation request.

[0362] In one embodiment, since the signatures of all Java method classes begin with "L", the signature prefix "L" of the Java method classes can be used as a preset array. After the target application starts, the meta-reflection function is called via reflection, and the hidden interface exemption function is called via reflection. "L" is used as the exemption condition for the hidden interface exemption function. Then, the operating system does not restrict the call to all hidden interfaces. The call to all hidden interfaces includes, but is not limited to: unrestricted calls to object retrieval requests and target service call requests.

[0363] Existing methods require creating a new class, setting its ClassLoader to the system's ClassLoader, and then using this class to reflect other classes. However, this approach requires intercepting libart.so using ELF Hook technology, resulting in a large amount of code and complex implementation. In the above embodiment, by identifying the hidden interfaces that the target application's risk control methods need to call and setting the common signature prefix of these hidden interfaces as exemption conditions, the operating system's reflection restrictions can be bypassed. This method involves less code and is simpler to implement.

[0364] In one specific embodiment, reference Figure 19 This provides a risk control method for an application, including the following steps:

[0365] S1902, after the target application starts, it calls the meta-reflection function through reflection, and then calls the hidden interface exemption function through reflection. "L" is used as the exemption condition for the hidden interface exemption function, so that the operating system does not restrict the call of all hidden interfaces.

[0366] S1904: A first process is created through the main process, a second process is created through the first process, and a first file and a second file are created through the main process; the first process holds the file lock of the first file, the second process holds the file lock of the second file, the first process acquires the file lock of the second file to check the survival status of the second process, and the second process acquires the file lock of the first file to check the survival status of the first process; if the first process is detected to have been terminated, the second process sends an object acquisition request, and if the second process is detected to have been terminated, the first process sends an object acquisition request.

[0367] S1906: A first child process is created through a first process, a second child process is created through a second process, and a third and a fourth file are created. The first child process holds the file lock of the third file, and the second child process holds the file lock of the fourth file. The first child process acquires the file lock of the fourth file to check the survival status of the second child process. If the second child process is detected to have been terminated, the first child process sends an object acquisition request. The second child process acquires the file lock of the third file to check the survival status of the first child process. If the first child process is detected to have been terminated, the second child process sends an object acquisition request.

[0368] S1908, a first thread is created through a first process, and a second thread is created through a second process; the first thread acquires the file lock of the first file to check the liveness of the first process. If the first process is detected to have been terminated, the first thread sends an object acquisition request. The second thread acquires the file lock of the second file to check the liveness of the second process. If the second process is detected to have been terminated, the second thread sends an object acquisition request.

[0369] S1910 intercepts the object retrieval request initiated by the target application through the Client process via a hook function, enabling the Client process to obtain a pre-created service proxy object (AMS's proxy object) and call system services through the AMS proxy object.

[0370] S1912, initiates a target service call request for the target business service (starting the Service component) through a pre-created service proxy object, and intercepts the target application's call to the serviceDoneExecuting method through the pre-created service proxy object.

[0371] S1914, retrieve the service record object (ServiceRecord object) corresponding to the Service component.

[0372] S1916, the res parameter of the serviceDoneExecuting method is the return value of the onstartCommand method; if the type parameter of the serviceDoneExecuting method is SERVICE_DONE_EXECUTING_START, then the res parameter value of the serviceDoneExecuting method is changed to START_NOT_STICKY; if the type parameter of the serviceDoneExecuting method is SERVICE_DONE_EXECUTING_ANON, then the type parameter value is changed to SERVICE_DONE_EXECUTING_START, and then the res parameter value of the serviceDoneExecuting method is changed to START_NOT_STICKY.

[0373] In S1918, in the ServiceRecord object, the business property corresponding to starting the Service component is stopIfkilled. After modifying the res value of the serviceDoneExecuting method to START_NOT_STICKY, the stopIfkilled property of the Service component started in the ServiceRecord object will be true, thus cleaning up the business behavior of starting the Service component.

[0374] In the risk control method of the above application, the meta-reflection method of the system class is called through reflection, and the hidden interface exemption function is called through the meta-reflection function. The exemption condition of the hidden interface exemption function is set to the signature prefix of the Java method class: "L", so that the operating system does not restrict the call of all hidden interfaces. The scheme used in this application to break through the reflection restriction of the operating system involves a small amount of code and is simple to implement.

[0375] By having the first and second processes mutually detect each other's liveness, the first and second child processes mutually detect each other's liveness, the first thread detects the liveness of the first process, and the second thread detects the liveness of the second process, the liveness of processes can be detected more accurately. When a process is detected to have been terminated, an object acquisition request is sent to start a new process, ensuring that the target application always has live processes, thus improving the activity of the target application.

[0376] like Figure 20 As shown, after using the risk control method of this embodiment, the monthly active users of the target application gradually increase; as Figure 21As shown, without using the application risk control method of this embodiment, the target application has less user retention data, such as... Figure 22 As shown, when using the application risk control method of this embodiment, the target application has a large amount of user retention data. Obviously, when using the application risk control method of this embodiment, the user retention data of the target application has increased significantly; the application risk control method of this embodiment has improved the activity of the target application.

[0377] In response to an object retrieval request initiated by the target application, a pre-created service proxy object is obtained, enabling the terminal to start the Service component through the service proxy object. The ServiceRecord object corresponding to the Service component is obtained, and the type parameter value of the serviceDoneExecuting method called when the Service component is started is modified to SERVICE_DONE_EXECUTING_START, and the res parameter value of the serviceDoneExecuting method is modified to START_NOT_STICKY. This makes the stopIfkilled property value of the Service component started in the ServiceRecord object true, thereby cleaning up the business behavior of starting the Service component.

[0378] like Figure 23 As shown, without using the application risk control method of this embodiment, it is impossible to clean up the business behavior of starting the Service component, and third-party applications can statistically analyze the business behavior of the target application initiating the target business service; such as Figure 24 As shown, after using the application risk control method of this embodiment, the business behavior of starting the Service component is cleaned up, so that third-party applications cannot count the business behavior of the target application initiating the target business service.

[0379] The application risk control method in this embodiment prevents third-party applications from tracking the business behavior of the target business service (starting the Service component), thus ensuring that the target application's calls to the target business service are not affected. This fundamentally solves the problem of the target application being restricted from calling the target business service and guarantees the normal use of the target application.

[0380] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0381] Based on the same inventive concept, this application also provides a risk control device for implementing the risk control method for the application described above. The solution provided by this device is similar to the implementation described in the above method; therefore, the specific limitations in the one or more application risk control device embodiments provided below can be found in the limitations of the application risk control method described above, and will not be repeated here.

[0382] In one embodiment, such as Figure 25 As shown, a risk control device for an application is provided, comprising: a service call request receiving module 2501, a service identifier determination module 2502, a service service interface determination module 2503, a first matching module 2504, and a second matching module 2505, wherein:

[0383] The service call request receiving module 2501 is used to receive service call requests sent by the target application.

[0384] The business identifier determination module 2502 obtains the business identifier based on the service call request and determines the triggered business service module in the target application based on the business identifier;

[0385] The business service interface determination module 2503 is used to determine the business service interface requested by the target application based on the service call request.

[0386] The first matching module 2504 is used to determine the service call request initiated by the target application as an abnormal request if the business service interface does not match the business service module.

[0387] The second matching module 2505 is used to determine the service call request initiated by the target application as a compliant request if the business service interface matches the business service module.

[0388] In one embodiment, the application's risk control device further includes:

[0389] The first business service interface calling module is used to detect the permission information of the business service module for the business service interface if the business service interface matches the business service module; when the permission information indicates that the business service module has the permission to call the business service interface, the module returns the business service interface to the target application.

[0390] In one embodiment, the application's risk control device further includes:

[0391] The second business service interface calling module is used to display a first permission operation page for requesting calling permission when the permission information indicates that the business service module does not have the permission to call the business service interface; when an authorization instruction triggered on the first permission operation page is detected, the business service interface is returned to the target application; when a denial authorization instruction triggered on the first permission operation page is detected, the business service interface is refused to be returned to the target application.

[0392] In one embodiment, the business service interface includes the target business service interface called by the business service module after initiating the target business service, and the second business service interface calling module further includes:

[0393] The information retrieval request sending unit is used to send an information retrieval request about the target business service to the cloud server when the permission information indicates that the business service module does not have the permission to call the target business service interface.

[0394] The authorization guidance information display unit is used to receive and display the authorization guidance information for the target business service issued by the cloud server;

[0395] The first display unit is used to display the first permission operation page in response to the triggering operation of the authorization guidance information.

[0396] In one embodiment, the second business service interface call module further includes:

[0397] The permission setting unit is used to respond to permission operations triggered on the first permission operation page and mark the operation permissions for the target business service on the first permission operation page as enabled. The business behavior of the target business service that is enabled is cleaned up according to the modified business attributes. The modified business attributes are obtained by modifying the target business service interface corresponding to the target business service.

[0398] In one embodiment, the information acquisition request sending unit includes:

[0399] The device information acquisition subunit is used to acquire device information in response to a trigger operation on the target business service control; or, periodically acquire device information.

[0400] The information retrieval request generation subunit is used to generate information retrieval requests based on device information and target business services.

[0401] The request sending subunit is used to send information retrieval requests to the cloud server.

[0402] In one embodiment, the authorization guidance information includes a permission setting control and a guidance animation for displaying the permission to call the target business service interface; the first display unit is specifically used to display a first permission operation page in response to the triggering operation of the permission setting control.

[0403] In one embodiment, the second business service interface call module further includes:

[0404] The second display unit is used to display the second permission operation page when the target application initiates other business services; in response to the permission operation triggered on the second permission operation page, the operation permissions for other business services in the second permission setting page are marked as enabled; wherein, other business services include: system services called through a pre-created service proxy object, first local services called through a local interface, and second local services called through a pre-encapsulated class.

[0405] In one embodiment, the second business service interface call module further includes:

[0406] The authorization guidance information update unit is used to obtain the first display count of the authorization guidance information or the second display count of the permission request page within a preset time period after receiving the authorization guidance information; send the first display count or the second display count to the cloud server; and receive the updated authorization guidance information sent by the cloud server if the first display count or the second display count meets the preset conditions.

[0407] The various modules in the risk control device of the aforementioned application can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can invoke and execute the operations corresponding to each module.

[0408] Based on the same inventive concept, this application also provides a risk control device for implementing the risk control method for the application described above. The solution provided by this device is similar to the implementation described in the above method; therefore, the specific limitations in the one or more application risk control device embodiments provided below can be found in the limitations of the application risk control method described above, and will not be repeated here.

[0409] In one embodiment, such as Figure 26As shown, a risk control device for an application is provided, comprising: a service proxy object acquisition module 2601, a business service interface call module 2602, a service record object acquisition module 2603, a business attribute modification module 2604, and a business behavior cleanup module 2605, wherein:

[0410] The service proxy object acquisition module 2601 is used to acquire a pre-created service proxy object in response to an object acquisition request sent by the target application.

[0411] The business service interface call module 2602 is used to respond to the target service call request sent by the target application when initiating the target business service, and call the target business service interface of the target business service through the service proxy object;

[0412] Service record object acquisition module 2603 is used to acquire the service record object obtained by encapsulating the target business service;

[0413] The business attribute modification module 2604 is used to modify the business attributes of the service record object based on the updated target business service interface when the parameters are updated after the target business service interface is called, so as to obtain the modified business attributes.

[0414] The business behavior cleanup module 2605 is used to clean up the business behaviors corresponding to the target business service based on the modified business attributes.

[0415] In one embodiment, the business attribute modification module 2604 includes:

[0416] The return value retrieval unit is used to retrieve the return value of the service startup control interface; the service startup control interface is the control interface executed by the target application when initiating the target business service.

[0417] The return value update unit is used to update the parameters of the target business service interface based on the return value;

[0418] The business attribute modification unit is used to modify the business attributes of the service record object based on the target business service interface of the updated parameters.

[0419] In one embodiment, the return value update unit includes:

[0420] The type parameter value determination subunit is used to determine the type parameter value of the target business service interface;

[0421] The type parameter value modification subunit is used to update the parameters of the target business service interface based on the return value if the type parameter value is the first type parameter value;

[0422] The return value modification subunit is used to update the parameters of the target business service interface based on the return value after modifying the type parameter value to the first type parameter value if the type parameter value is the second type parameter value.

[0423] In one embodiment, the application's risk control device further includes:

[0424] The first process generation module is used to generate the first and second processes of the target application.

[0425] The second file creation module is used to create the first file and the second file; the first process holds the file lock of the first file, and the second process holds the file lock of the second file.

[0426] The first detection module is used to acquire the file lock of the second file through the first process;

[0427] The first state acquisition module is used to detect the state of the second process based on the file lock of the second file;

[0428] The first process startup module is used to send an object retrieval request through the first process if the second process is in a terminated state.

[0429] In one embodiment, the application's risk control device further includes:

[0430] The second detection module is used to acquire the file lock of the first file through the second process;

[0431] The second state acquisition module is used to detect the state of the first process based on the file lock of the first file.

[0432] The second process startup module is used to send an object retrieval request through the second process if the first process is in a terminated state.

[0433] In one embodiment, the application's risk control device further includes:

[0434] The second process generation module is used to generate child processes of the first process and child processes of the second process after generating the first process and the second process of the target application.

[0435] The second file creation module is used to create the third and fourth files; the child processes of the first process hold the file lock of the third file, and the child processes of the second process hold the file lock of the fourth file.

[0436] The third detection module is used to acquire the file lock of the fourth file through a child process of the first process;

[0437] The third state acquisition module is used to detect the state of the child processes of the second process based on the file lock of the fourth file.

[0438] The third process startup module initiates an object retrieval request through the child process of the first process if the child process of the second process is in the terminated state.

[0439] In one embodiment, the application's risk control device further includes:

[0440] The fourth detection module is used to acquire the file lock of the third file through a child process of the second process;

[0441] The fourth state acquisition module is used to detect the state of the child processes of the first process based on the file lock of the third file;

[0442] The fourth process startup module is used to initiate an object acquisition request through the child process of the second process if the child process of the first process is in a terminated state.

[0443] In one embodiment, the application's risk control device further includes:

[0444] The first thread creation module is used to create a thread in a child process of the first process, thus obtaining the first thread;

[0445] The fifth detection module is used to acquire the file lock of the first file through the first thread, and to detect the status of the first process based on the file lock of the first file;

[0446] The fifth process startup module is used to initiate an object acquisition request through the first thread if the first thread detects that the state of the first process is terminated.

[0447] In one embodiment, the application's risk control device further includes:

[0448] The second thread creation module is used to create a thread in a child process of the second process, thus obtaining the second thread;

[0449] The sixth detection module is used to acquire the file lock of the second file through the second thread, and to detect the status of the second process based on the file lock of the second file;

[0450] The sixth process startup module is used to initiate an object acquisition request through the second thread if the second process is in a terminated state.

[0451] In one embodiment, the application's risk control device further includes:

[0452] The reflection breakthrough module is used to call the meta-reflection function via reflection; to call the hidden interface exemption function via the meta-reflection function; and to set the exemption conditions of the hidden interface exemption function to a preset array; the preset array is the signature prefix of the object acquisition request and the target service call request.

[0453] The various modules in the risk control device of the aforementioned application can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can invoke and execute the operations corresponding to each module.

[0454] Based on the same inventive concept, this application also provides a risk control device for implementing the risk control method for the application described above. The solution provided by this device is similar to the implementation described in the above method; therefore, the specific limitations in the one or more application risk control device embodiments provided below can be found in the limitations of the application risk control method described above, and will not be repeated here.

[0455] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 27 As shown, the computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements a risk control method for an application. The display unit of the computer device is used to form a visually visible image. It can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.

[0456] Those skilled in the art will understand that Figure 27 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0457] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the risk control method of the application described above.

[0458] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the risk control method of the above-described application.

[0459] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the risk control method of the above-described application.

[0460] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data shall comply with the relevant laws, regulations and standards of the relevant countries and regions.

[0461] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0462] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0463] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A risk control method for an application, characterized in that, The method includes: Receive service call requests sent by the target application; Obtain the service identifier based on the service call request, and determine the triggered business service module in the target application based on the service identifier; Based on the service call request, determine the target business service interface requested by the target application; If the target business service interface does not match the business service module, the service call request initiated by the target application will be identified as an abnormal request. If the target business service interface matches the business service module, the service call request initiated by the target application is determined to be a compliant request, and the permission information of the business service module for the target business service interface is detected. When the permission information indicates that the business service module does not have the permission to call the target business service interface, a request to obtain information about the target business service is sent to the cloud server. Receive and display the authorization guidance information for the target business service issued by the cloud server; In response to the triggering operation of the authorization guidance information, the first permission operation page is displayed; When an authorization instruction triggered on the first permission operation page is detected, the target business service interface is returned to the target application.

2. The method according to claim 1, characterized in that, The method further includes: When the permission information indicates that the business service module has the permission to call the target business service interface, the target business service interface is returned to the target application.

3. The method according to claim 2, characterized in that, The method further includes: When a denial of authorization instruction triggered on the first permission operation page is detected, the target business service interface is refused to be returned to the target application.

4. The method according to claim 1, characterized in that, The method further includes: In response to a permission operation triggered on the first permission operation page, the operation permission for the target business service on the first permission operation page is marked as enabled; Among them, the business behavior corresponding to the target business service in the "open" state is cleaned up according to the modified business attributes; the modified business attributes are obtained by modifying the target business service interface corresponding to the target business service.

5. The method according to claim 1, characterized in that, Sending a request to the cloud server for information about the target business service includes: In response to a triggered operation on the target business service control, obtain device information; or, periodically obtain device information. An information retrieval request is generated based on the device information and the target service. The information retrieval request is sent to the cloud server.

6. The method according to claim 1, characterized in that, The authorization guidance information includes permission setting controls and a guidance animation for displaying the permission to call the target business service interface; The response to the triggered operation of the authorization guidance information, displaying the first permission operation page, includes: In response to a trigger operation on the permission setting control, the first permission operation page is displayed.

7. The method according to any one of claims 1 to 6, characterized in that, The method further includes: When the target application initiates other business services, the second permission operation page is displayed; In response to a permission operation triggered on the second permission operation page, the operation permissions for the other business services on the second permission operation page are marked as enabled; The other business services include: system services invoked through a pre-created service proxy object, a first local service invoked through a local interface, and a second local service invoked through a pre-encapsulated class.

8. The method according to any one of claims 1 to 6, characterized in that, The method further includes: Within a preset time period after receiving the authorization guidance information, obtain the first number of times the authorization guidance information is displayed or the second number of times the first permission operation page is displayed; Send the first display count or the second display count to the cloud server; If the first display count or the second display count meets the preset conditions, the update authorization guidance information issued by the cloud server is received.

9. A risk control method for an application, characterized in that, Performed by the business behavior cleanup component included in the application's behavior processing system, including: In response to an object retrieval request sent by the target application, obtain the pre-created service proxy object; In response to the target service call request sent by the target application when initiating the target business service, the target business service interface of the target business service is called through the service proxy object; Obtain the service record object obtained by encapsulating the target business service; When the parameters of the target business service interface are updated after being called, the business attributes of the service record object are modified based on the updated target business service interface to obtain the modified business attributes; Based on the modified business attributes, the business behaviors corresponding to the target business service are cleaned up. The system also includes an interface permission management component for executing the risk control method for the application as described in any one of claims 1-8.

10. The method according to claim 9, characterized in that, When the parameters of the target business service interface are updated after being called, the business attributes of the service record object are modified based on the updated target business service interface, including: Obtain the return value of the service startup control interface; the service startup control interface is the control interface executed by the target application when initiating the target business service; The parameters of the target business service interface are updated based on the return value; Modify the business attributes of the service record object according to the target business service interface that updates the parameters.

11. The method according to claim 10, characterized in that, The step of updating the parameters of the target business service interface based on the return value includes: Determine the type parameter value of the target business service interface; If the type parameter value is the first type parameter value, then the parameters of the target business service interface are updated according to the return value; If the type parameter value is the second type parameter value, then after modifying the type parameter value to the first type parameter value, the parameters of the target business service interface are updated according to the return value.

12. The method according to claim 9, characterized in that, Before retrieving the pre-created service proxy object in response to the object retrieval request sent by the target application, the process further includes: Generate the first and second processes of the target application; Create a first file and a second file; the first process holds the file lock of the first file, and the second process holds the file lock of the second file; The file lock of the second file is acquired through the first process; The status of the second process is detected based on the file lock of the second file; If the second process is in a terminated state, an object retrieval request is sent through the first process.

13. The method according to claim 12, characterized in that, The method further includes: The file lock of the first file is acquired through the second process; The status of the first process is detected based on the file lock of the first file; If the first process is in a terminated state, an object retrieval request is sent through the second process.

14. The method according to claim 12, characterized in that, The method further includes: After generating the first process and the second process of the target application, a child process of the first process and a child process of the second process are generated. Create a third file and a fourth file; a child process of the first process holds the file lock of the third file, and a child process of the second process holds the file lock of the fourth file; The file lock of the fourth file is acquired through a child process of the first process; The status of the child process of the second process is detected based on the file lock of the fourth file. If the child process of the second process is in the terminated state, the object acquisition request is initiated through the child process of the first process.

15. The method according to claim 14, characterized in that, The method further includes: The file lock of the third file is acquired through a child process of the second process; The state of the child processes of the first process is detected based on the file lock of the third file; If the child process of the first process is in the terminated state, the object acquisition request is initiated through the child process of the second process.

16. The method according to claim 12, characterized in that, After generating the child processes of the first process and the second process, the method further includes: Create a thread in a child process of the first process to obtain the first thread; The first thread acquires the file lock of the first file, and the state of the first process is detected based on the file lock of the first file; If the first thread detects that the state of the first process is terminated, the first thread initiates an object retrieval request.

17. The method according to claim 16, characterized in that, The method further includes: Create a thread in a child process of the second process to obtain the second thread; The second thread acquires the file lock of the second file and detects the status of the second process based on the file lock of the second file; If the second process is in a terminated state, the second thread initiates an object retrieval request.

18. The method according to any one of claims 9 to 17, characterized in that, Before obtaining the pre-created service proxy object, the process also includes: Call the meta-reflection function via reflection; The hidden interface exemption function is invoked via reflection using the meta-reflection function; Set the exemption conditions of the hidden interface exemption function to a preset array; the preset array is the signature prefix of the object acquisition request and the target service call request.

19. A risk control device for an application, characterized in that, The device includes: The service call request receiving module is used to receive service call requests sent by the target application. The service identifier determination module is used to obtain a service identifier based on the service call request, and determine the triggered service module in the target application based on the service identifier; The business service interface determination module is used to determine the target business service interface requested by the target application based on the service call request. The first matching module is used to determine the service call request initiated by the target application as an abnormal request if the target business service interface does not match the business service module. The second matching module is used to determine the service call request initiated by the target application as a compliant request if the target business service interface matches the business service module. The permission information detection unit is used to detect the permission information of the business service module for the target business service interface; The authorization guidance information acquisition unit is used to send an information acquisition request about the target business service to the cloud server when the permission information indicates that the business service module does not have the permission to call the target business service interface; and to receive and display the authorization guidance information of the target business service issued by the cloud server. The operation permission setting unit is used to display a first permission operation page in response to the triggering operation of the authorization guidance information; when an authorization instruction triggered on the first permission operation page is detected, the target business service interface is returned to the target application.

20. The apparatus according to claim 19, characterized in that, The permission information detection unit is further configured to return the target business service interface to the target application when the permission information indicates that the business service module has the permission to call the target business service interface.

21. The apparatus according to claim 20, characterized in that, The operation permission setting unit is also used to refuse to return the target business service interface to the target application when a denial authorization instruction triggered on the first permission operation page is detected.

22. The apparatus according to claim 19, characterized in that, The operation permission setting unit is further configured to respond to a permission operation triggered on the first permission operation page by marking the operation permission for the target business service on the first permission operation page as enabled; wherein, the business behavior corresponding to the target business service in the enabled state is cleaned up according to the modified business attributes; the modified business attributes are obtained by modifying the target business service interface corresponding to the target business service.

23. The apparatus according to claim 19, characterized in that, The authorization guidance information acquisition unit includes: The device information acquisition subunit is used to acquire device information in response to a trigger operation on the target business service control; or, periodically acquire device information. An information acquisition request generation subunit is used to generate an information acquisition request based on the device information and the target service. The request sending subunit is used to send the information acquisition request to the cloud server.

24. The apparatus according to claim 19, characterized in that, The authorization guidance information includes a permission setting control and a guidance animation for displaying the permission to call the target business service interface; the operation permission setting unit is also used to display a first permission operation page in response to the triggering operation of the permission setting control.

25. The apparatus according to any one of claims 19 to 24, characterized in that, The device further includes a second display unit, configured to display a second permission operation page when the target application initiates other business services; in response to a permission operation triggered on the second permission operation page, to mark the operation permissions for the other business services on the second permission operation page as enabled; wherein the other business services include: system services called through a pre-created service proxy object, a first local service called through a local interface, and a second local service called through a pre-encapsulated class.

26. The apparatus according to any one of claims 19 to 24, characterized in that, The device further includes an authorization guidance information update unit, which is used to obtain the first display count of the authorization guidance information or the second display count of the first permission operation page within a preset time period after receiving the authorization guidance information; Send the first display count or the second display count to the cloud server; If the first display count or the second display count meets the preset conditions, the update authorization guidance information issued by the cloud server is received.

27. A risk control device for an application, characterized in that, The device belongs to the business behavior cleanup component of the application's behavior processing system, and the device includes: The service proxy object acquisition module is used to obtain a pre-created service proxy object in response to an object acquisition request sent by the target application. The business service interface invocation module is used to respond to the target service invocation request sent by the target application when initiating the target business service, and invoke the target business service interface of the target business service through the service proxy object; The service record object acquisition module is used to acquire the service record object obtained by encapsulating the target business service. The business attribute modification module is used to modify the business attributes of the service record object based on the updated target business service interface when the parameters of the target business service interface are updated after the call, so as to obtain the modified business attributes. The business behavior cleanup module is used to clean up the business behaviors corresponding to the target business service based on the modified business attributes. The system also includes an interface permission management component, which includes the application risk control device as described in any one of claims 19-26.

28. The apparatus according to claim 27, characterized in that, The business attribute modification module includes: The return value acquisition unit is used to acquire the return value of the service startup control interface; the service startup control interface is the control interface executed by the target application when initiating the target business service. The return value update unit is used to update the parameters of the target business service interface based on the return value; The business attribute modification unit is used to modify the business attributes of the service record object according to the target business service interface that updates the parameters.

29. The apparatus according to claim 28, characterized in that, The return value update unit includes: The type parameter value determination subunit is used to determine the type parameter value of the target business service interface; The type parameter value modification subunit is used to update the parameters of the target business service interface based on the return value if the type parameter value is a first type parameter value. The return value modification subunit is used to update the parameters of the target business service interface based on the return value after modifying the type parameter value to the first type parameter value if the type parameter value is the second type parameter value.

30. The apparatus according to claim 27, characterized in that, The device further includes: The first process generation module is used to generate the first and second processes of the target application. The second file creation module is used to create the first file and the second file; the first process holds the file lock of the first file, and the second process holds the file lock of the second file. The first detection module is used to acquire the file lock of the second file through the first process; The first state acquisition module is used to detect the state of the second process based on the file lock of the second file; The first process startup module is used to send an object acquisition request through the first process if the second process is in a terminated state.

31. The apparatus according to claim 30, characterized in that, The device further includes: The second detection module is used to acquire the file lock of the first file through the second process; The second state acquisition module is used to detect the state of the first process based on the file lock of the first file. The second process startup module is used to send an object acquisition request through the second process if the state of the first process is terminated.

32. The apparatus according to claim 30, characterized in that, The device further includes: The second process generation module is used to generate child processes of the first process and child processes of the second process after generating the first process and the second process of the target application. The second file creation module is used to create the third file and the fourth file; the child process of the first process holds the file lock of the third file, and the child process of the second process holds the file lock of the fourth file; The third detection module is used to acquire the file lock of the fourth file through a subprocess of the first process; The third state acquisition module is used to detect the state of the child process of the second process based on the file lock of the fourth file; The third process startup module is used to initiate an object acquisition request through the child process of the first process if the child process of the second process is in a terminated state.

33. The apparatus according to claim 32, characterized in that, The device further includes: The fourth detection module is used to acquire the file lock of the third file through a child process of the second process; The fourth state acquisition module is used to detect the state of the child process of the first process based on the file lock of the third file; The fourth process startup module is used to initiate an object acquisition request through the child process of the second process if the child process of the first process is in a terminated state.

34. The apparatus according to claim 30, characterized in that, The device further includes: The first thread creation module is used to create a thread in a child process of the first process to obtain the first thread; The fifth detection module is used to acquire the file lock of the first file through the first thread, and detect the status of the first process based on the file lock of the first file; The fifth process startup module is used to initiate an object acquisition request through the first thread if the first thread detects that the state of the first process is terminated.

35. The apparatus according to claim 34, characterized in that, The device further includes: The second thread creation module is used to create a thread in a child process of the second process, thus obtaining a second thread; The sixth detection module is used to acquire the file lock of the second file through the second thread, and to detect the status of the second process based on the file lock of the second file; The sixth process startup module is used to initiate an object acquisition request through the second thread if the second process is in a terminated state.

36. The apparatus according to any one of claims 27 to 35, characterized in that, The device further includes: The reflection breakthrough module is used to call the meta-reflection function via reflection; to call the hidden interface exemption function via the meta-reflection function; and to set the exemption conditions of the hidden interface exemption function to a preset array; the preset array is the signature prefix of the object acquisition request and the target service call request.

37. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the method of any one of claims 1 to 18.

38. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method of any one of claims 1 to 18.

39. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the method of any one of claims 1 to 18.

Citation Information

Patent Citations

  • Interface calling method and interface calling device for application program and electronic equipment

    CN114048049A