Application program detection method and device, equipment and storage medium
By collecting and replaying target sensor data in terminal devices and detecting the jump behavior of the application, the problem of overly sensitive application jump trigger mechanism is solved, and accurate violation detection of the application is achieved, protecting user experience and standardizing the application. Program development.
Patent Information
- Application Number
- CN202310765909.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-27
- Publication Date
- 2024-12-27
AI Technical Summary
The triggering mechanism of shake ads for existing applications is too sensitive, causing users to accidentally touch and jump randomly, infringing on users' right to know and choose, affecting user experience, and lacking effective detection methods to standardize application development.
By collecting and replaying target sensor data in the terminal device, simulating different application scenarios, detecting whether the application's preset display page has jumped, determining whether its jump triggering mechanism is illegal, and providing accurate violation detection results.
It realizes accurate detection of the application jump trigger mechanism, provides a basis for standardizing application development, protects user experience and right to know, and reduces the occurrence of random jumps.
Smart Images

Figure CN119203119A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of terminal technology, and in particular to an application detection method, device, equipment and storage medium. Background Art
[0002] With the increasing popularity of mobile terminals such as smartphones and tablets, and the continuous improvement of mobile network speed, more and more users like to spend time on mobile terminals. While mobile terminals have become the mainstream devices for mobile networks, applications with various set functions are becoming increasingly rich and diverse. Relevant data shows that the number of applications currently on the shelf has reached millions.
[0003] However, while the rich and diverse applications facilitate people's production and life, they also cause problems such as random redirection of shake ads. Shake ads are application opening screen ads that are triggered by the "shake" method of the mobile terminal. The jump trigger mechanism of the shake ads of some applications is too sensitive, which can easily cause users to accidentally touch and jump (for example, jumping from the shake ad page to the page of other downloaded applications or the download page of the application store, etc.). This random jump behavior infringes on the user's right to know and right to choose, and seriously affects the user experience.
[0004] Therefore, how to detect whether an application violates the regulations, that is, whether the jump trigger mechanism of the preset page (such as the shake advertising page, etc.) displayed after the application is started is too sensitive, and provide a basis for the subsequent standardization of the application development, etc., has become one of the technical problems that need to be solved urgently. Summary of the invention
[0005] In order to overcome the problems existing in the related art, the embodiments of the present disclosure provide an application detection method, apparatus, device and storage medium to solve the defects in the related art.
[0006] According to a first aspect of an embodiment of the present disclosure, there is provided an application program detection method, which is applied to a host device, and the method includes:
[0007] In response to detecting that a pre-installed application to be tested is started by a terminal device, writing the pre-collected target sensor data in at least one application scenario into a target sensor of the terminal device, so as to replay the target sensor data based on the target sensor;
[0008] Detecting whether a preset display page of the application to be tested jumps, and obtaining a jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is a page displayed after the application to be tested is started;
[0009] A target detection result of the application to be tested is determined based on the jump detection result of the at least one application scenario, and the target detection result is used to indicate whether a jump trigger mechanism of a preset display page of the application to be tested violates a rule.
[0010] In some embodiments, the method further comprises:
[0011] In response to acquiring the program download data of the application to be tested, the program download data is sent to the terminal device, so that the terminal device downloads and installs the application to be tested based on the program download data.
[0012] In some embodiments, before writing the pre-collected target sensor data of at least one application scenario into the target sensor of the terminal device in response to detecting that the terminal device starts the pre-installed application to be tested, the method further includes:
[0013] Starting a preset monitoring program in the terminal device, the monitoring program is used to monitor whether the application to be tested pops up a target pop-up window;
[0014] In response to monitoring, based on the preset monitoring program, that the target pop-up window pops up from the application to be tested, triggering in the pop-up window an instruction for skipping the pop-up window;
[0015] The terminal device is controlled to close the preset monitoring program and restart the application program to be tested.
[0016] In some embodiments, the method further includes collecting target sensor data in the at least one application scenario based on the following manner:
[0017] Collecting sensor data of at least one sensor in each of the scenarios to obtain at least one set of sensor data;
[0018] splicing the at least one set of sensor data at the same time point in each of the scenes as the sensor data at the same time point in each of the scenes;
[0019] The sensor data in each of the scenarios are sorted according to the order of time points to obtain the target sensor data in each of the scenarios.
[0020] In some embodiments, the at least one application scenario includes an expected jump scenario and an undesired jump scenario;
[0021] The desired jump scene includes a pocket walking scene and / or a hand-held shaking scene;
[0022] The unexpected jump scenario includes at least one of a static scenario, a non-shaking use scenario, a pick-up and put-down scenario, and a hand-held walking scenario without swinging arms.
[0023] In some embodiments, determining the target detection result of the application to be tested based on the jump detection result of the at least one application scenario includes:
[0024] In response to the jump detection result of the application under test corresponding to the unexpected jump scenario including a jump occurring, determining the target detection result as a first detection result, wherein the first detection result is used to indicate a jump trigger mechanism violation of a preset display page of the application under test.
[0025] In some embodiments, determining the target detection result of the application to be tested based on the jump detection result of the at least one application scenario includes:
[0026] In response to the jump detection results of the application under test corresponding to the unexpected jump scenario being no jump, the target detection result is determined to be a second detection result, and the second detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is compliant.
[0027] In some embodiments, determining the target detection result of the application to be tested based on the jump detection result of the at least one application scenario includes:
[0028] In response to the jump detection results of the application under test corresponding to the unexpected jump scenarios being that no jump occurred, and the jump detection results of the application under test corresponding to the expected jump scenarios being that a jump occurred, the target detection result is determined to be a second detection result, and the second detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is compliant.
[0029] According to a second aspect of an embodiment of the present disclosure, there is provided an application program detection device, which is applied to a host device, and the device includes:
[0030] a data writing module, configured to write the pre-collected target sensor data under at least one application scenario into the target sensor of the terminal device in response to detecting that the terminal device starts a pre-installed application to be tested, so as to replay the target sensor data based on the target sensor;
[0031] A jump detection module, used to detect whether a preset display page of the application to be tested jumps, and obtain a jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is a page displayed after the application to be tested is started;
[0032] The result determination module is used to determine the target detection result of the application to be tested based on the jump detection result of the at least one application scenario, and the target detection result is used to indicate whether the jump trigger mechanism of the preset display page of the application to be tested violates the rules.
[0033] In some embodiments, the apparatus further comprises:
[0034] The data sending module is used for sending the program download data of the application to be tested to the terminal device in response to acquiring the program download data of the application to be tested, so that the terminal device can download and install the application to be tested based on the program download data.
[0035] In some embodiments, the apparatus further comprises a startup control module;
[0036] The startup control module comprises:
[0037] A program start unit, used to start a preset monitoring program in the terminal device, the monitoring program is used to monitor whether the application to be tested pops up a target pop-up window;
[0038] An instruction triggering unit, configured to trigger an instruction for skipping the pop-up window in the pop-up window in response to monitoring the pop-up window of the application to be tested based on the preset monitoring program;
[0039] The startup control unit is used to control the terminal device to close the preset monitoring program and restart the application program to be tested.
[0040] In some embodiments, the device further comprises a data acquisition module;
[0041] The data acquisition module comprises:
[0042] A data collection unit, used to collect sensor data of at least one sensor in each of the scenarios to obtain at least one set of sensor data;
[0043] A data splicing unit, used for splicing the at least one set of sensor data at the same time point in each of the scenes as the sensor data at the same time point in each of the scenes;
[0044] The data sorting unit is used to sort the sensor data in each of the scenes according to the order of time points to obtain the target sensor data in each of the scenes.
[0045] In some embodiments, the at least one application scenario includes an expected jump scenario and an undesired jump scenario;
[0046] The desired jump scene includes a pocket walking scene and / or a hand-held shaking scene;
[0047] The unexpected jump scenario includes at least one of a static scenario, a non-shaking use scenario, a pick-up and put-down scenario, and a hand-held walking scenario without swinging arms.
[0048] In some embodiments, the result determination module is also used to determine that the target detection result is a first detection result in response to the jump detection result of the application under test corresponding to the unexpected jump scenario, including the occurrence of a jump, and the first detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is violated.
[0049] In some embodiments, the result determination module is also used to determine that the target detection result is a second detection result in response to the jump detection results of the application under test corresponding to the unexpected jump scenario being no jump occurring, and the second detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is compliant.
[0050] In some embodiments, the result determination module is also used to determine that the target detection result is a second detection result in response to the jump detection results of the application under test corresponding to the unexpected jump scenario being that no jump occurred, while the jump detection results of the application under test corresponding to the expected jump scenario include that a jump occurred. The second detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is compliant.
[0051] According to a third aspect of an embodiment of the present disclosure, a host device is provided, the device comprising:
[0052] a processor and a memory for storing a computer program;
[0053] Wherein, the processor is configured to implement, when executing the computer program:
[0054] In response to detecting that a pre-installed application to be tested is started by a terminal device, writing the pre-collected target sensor data in at least one application scenario into a target sensor of the terminal device, so as to replay the target sensor data based on the target sensor;
[0055] Detecting whether a preset display page of the application to be tested jumps, and obtaining a jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is a page displayed after the application to be tested is started;
[0056] Determine a target detection result of the application to be tested based on the jump detection result of the at least one application scenario, wherein the target detection result is used to indicate whether a jump trigger mechanism of a preset display page of the application to be tested violates a rule。
[0057] According to a fourth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored, and when the program is executed by a processor, the following is implemented:
[0058] In response to detecting that a pre-installed application to be tested is started by a terminal device, writing the pre-collected target sensor data in at least one application scenario into a target sensor of the terminal device, so as to replay the target sensor data based on the target sensor;
[0059] Detecting whether a preset display page of the application to be tested jumps, and obtaining a jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is a page displayed after the application to be tested is started;
[0060] A target detection result of the application to be tested is determined based on the jump detection result of the at least one application scenario, and the target detection result is used to indicate whether a jump trigger mechanism of a preset display page of the application to be tested violates a rule.
[0061] The technical solution provided by the embodiments of the present disclosure may have the following beneficial effects:
[0062] The present disclosure writes pre-collected target sensor data for at least one application scenario into a target sensor of the terminal device in response to detecting that a pre-installed application to be tested is started by the terminal device, so as to replay the target sensor data based on the target sensor, and detect whether a jump occurs in a preset display page of the application to be tested, thereby obtaining a jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is a page displayed after the application to be tested is started, and then determining a target detection result of the application to be tested based on the jump detection result of the at least one application scenario, wherein the target detection result is used to indicate whether a jump trigger mechanism of the preset display page of the application to be tested violates a rule, thereby accurately detecting whether the application to be tested violates a rule, and further providing a basis for subsequent development of standardized applications and other aspects.
[0063] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0064] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.
[0065] Figure 1is a flow chart of an application detection method according to an exemplary embodiment of the present disclosure;
[0066] Figure 2 is a flowchart showing how to control a terminal device to start the application to be tested according to an exemplary embodiment of the present disclosure;
[0067] Figure 3 is a flowchart showing how to collect target sensor data in at least one application scenario according to an exemplary embodiment of the present disclosure;
[0068] Figure 4 is a flow chart of an application detection method according to another exemplary embodiment of the present disclosure;
[0069] Figure 5 is a block diagram of an application detection device according to an exemplary embodiment of the present disclosure;
[0070] Figure 6 is a block diagram of another application detection device according to an exemplary embodiment of the present disclosure;
[0071] Figure 7 is a block diagram of a host device according to an exemplary embodiment of the present disclosure. DETAILED DESCRIPTION
[0072] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.
[0073] Figure 1 is a flow chart of an application detection method according to an exemplary embodiment; the method of this embodiment can be executed by an application detection device, which can be configured in a host device, such as a server, a workstation, a personal computer, a mobile terminal (such as a mobile phone, a tablet computer, etc.), a wearable device (such as glasses, watches, etc.), etc. Specifically, Figure 1 As shown, the method includes the following steps S101-S103:
[0074] In step S101, in response to detecting that a terminal device starts a pre-installed application to be tested, pre-collected target sensor data in at least one application scenario is written into a target sensor of the terminal device, so as to replay the target sensor data based on the target sensor.
[0075] In this embodiment, the terminal device (such as a smart phone, etc.) may pre-install the application to be tested, and after the application to be tested is installed, the application to be tested is started.
[0076] For example, in response to obtaining program download data of the application to be tested (such as the package name and / or download link of the application to be tested), the host device can send the program download data to the terminal device so that the terminal device can download and install the application to be tested based on the program download data.
[0077] In other embodiments, the host device may also install the above-mentioned application to be tested to the terminal device based on the UIAutomator2 framework.
[0078] Furthermore, when the host device detects that the terminal device has started the application to be tested, the target sensor data for at least one application scenario collected in advance can be written into the target sensor of the terminal device to replay the target sensor data based on the target sensor, that is, the output data of the target sensor is switched from the actual sensor data (that is, the data of the measured information actually sensed by the sensor itself) to the currently written target sensor data, thereby realizing the simulation of the corresponding application scenario.
[0079] For example, by writing target sensor data a under scenario A into the target sensor and replaying the target sensor data a based on the target sensor, the scenario A can be simulated, and then the application to be tested can be detected based on the simulated scenario A.
[0080] It is understandable that the target sensor is a sensor that matches the target sensor data. For example, when the target sensor data is acceleration data, the target sensor may be an accelerometer.
[0081] In some embodiments, the target sensor data may include data from only one sensor or data from more than two sensors. It is worth noting that, when data from more than two sensors is included, writing the target sensor data into the target sensor means writing the data from the more than two sensors into matching sensors respectively.
[0082] For example, if the target sensor data includes acceleration data and gyroscope data, the acceleration data may be written into the acceleration sensor, and the gyroscope data may be written into the gyroscope sensor (Gyroscope).
[0083] Exemplarily, the target sensor may include at least one of an accelerometer, a game rotation vector, a gyroscope, a linear acceleration, a geomagnetic rotation vector, a gyroscope Uncalibrated, a rotation, an accelerometer Uncalibrated, and an orientation.
[0084] The at least one application scenario may include an expected jump scenario and an unexpected jump scenario. The expected jump scenario may also include a pocket walking scenario (ie, a walking scenario with the terminal device placed in a pocket) and / or a hand-held shaking scenario.
[0085] The above-mentioned unexpected jump scenarios include at least one of static scenarios, non-shaking usage scenarios (such as watching videos, playing mobile games, etc.), pick up and put down scenarios, and walking scenarios with handheld devices without swinging arms (walking scenarios with handheld terminal devices and without swinging arms).
[0086] In step S102, it is detected whether a preset display page of the application to be tested jumps, and a jump detection result of the application to be tested corresponding to the at least one application scenario is obtained.
[0087] In this embodiment, after the target sensor data is replayed based on the target sensor, it is possible to detect whether a preset display page of the application to be tested jumps, and obtain a jump detection result of the application to be tested corresponding to the at least one application scenario.
[0088] Among them, the above-mentioned preset display page is a page displayed after the application to be tested is started, such as a shake advertisement page.
[0089] That is to say, when the shake advertising page is displayed after the application to be tested is started, the corresponding application scenario is simulated by controlling the target sensor to replay the target sensor data, and then detecting whether the shake advertising page of the above application to be tested jumps in the currently simulated application scenario. In this way, the jump detection result of the application to be tested corresponding to the at least one application scenario can be obtained, such as "jump occurred" or "no jump occurred".
[0090] On this basis, when the jump detection result of any application scenario is detected as "jump occurred", the terminal device can also be controlled to take screenshots as evidence, such as capturing the page after the jump (such as the page of other downloaded applications other than the above-mentioned application to be tested, or the download page of the application store, etc.).
[0091] In step S103, a target detection result of the application to be tested is determined based on the jump detection result of the at least one application scenario.
[0092] In this embodiment, after obtaining the jump detection result of the application to be tested corresponding to the at least one application scenario, the target detection result of the application to be tested may be determined based on the jump detection result of the at least one application scenario.
[0093] Among them, the target detection result can be used to indicate whether the jump trigger mechanism of the preset display page of the application under test violates the rules (for example, used to indicate whether the jump trigger mechanism of the shake advertising page of the application under test is too sensitive).
[0094] In some embodiments, in response to the jump detection result of the application under test corresponding to the unexpected jump scenario including the occurrence of a jump, the target detection result can be determined to be a first detection result, and the first detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is in violation (for example, the jump trigger mechanism of the shake advertising page of the application under test is too sensitive).
[0095] That is, when one or more of the jump detection results of at least one unexpected jump scenario is "jump occurs", it can be determined that the jump trigger mechanism of the preset display page of the above-mentioned application to be tested violates the rules.
[0096] It is understandable that the shaking amplitude of the terminal device in an unexpected jump scenario is usually small. If the preset display page of the application under test jumps in this scenario, it can be considered that the jump trigger mechanism of the shake advertising page of the application under test is too sensitive, which can easily lead to the problem of "random jumps" and can therefore be judged to be in violation.
[0097] In other embodiments, in response to the jump detection results of the application under test corresponding to the unexpected jump scenario being no jump, it can be determined that the target detection result is a second detection result, and the second detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is compliant (for example, the jump trigger mechanism of the shake advertising page of the application under test is not too sensitive).
[0098] That is to say, when the jump detection results of at least one of the above-mentioned unexpected jump scenarios are all "no jump occurred", it can be determined that the jump trigger mechanism of the preset display page of the above-mentioned application to be tested is compliant. It can be understood that the shaking amplitude of the terminal device in the unexpected jump scenario is usually relatively small. If the preset display page of the application to be tested does not jump in this scenario, it can be considered that the jump trigger mechanism of the shake advertising page of the application to be tested is not too sensitive and is not likely to cause the problem of "random jumps", so it can be determined to be compliant.
[0099] In other embodiments, the target detection result can be determined to be the above-mentioned second detection result in response to the jump detection results of the application under test corresponding to the unexpected jump scenario being that no jump occurred, while the jump detection results of the application under test corresponding to the expected jump scenario include that a jump occurred.
[0100] That is to say, when the jump detection results of at least one of the above-mentioned non-expected jump scenarios are all "no jump occurred", but one or more of the jump detection results of at least one of the above-mentioned expected jump scenarios are "jump occurred", it can be determined that the jump trigger mechanism of the preset display page of the above-mentioned application under test is compliant.
[0101] It is understandable that the shaking amplitude of the terminal device in the non-expected jump scenario is usually smaller, while the shaking amplitude of the terminal device in the expected jump scenario is usually larger; if the shake advertising page of the application under test does not jump in the non-expected jump scenario, but the shake advertising page of the application under test jumps in the expected jump scenario, it can be confirmed that the sensitivity of the shake advertising page of the application under test is normal and is not easy to cause the problem of "random jump", and therefore it can be judged to be compliant.
[0102] In other embodiments, the above steps S102 and S103 may also be performed in the terminal device. When the terminal device obtains the target detection result, it may send it to the host device.
[0103] It can be seen from the above description that the method of this embodiment writes the pre-collected target sensor data under at least one application scenario into the target sensor of the terminal device in response to detecting that the terminal device starts a pre-installed application to be tested, so as to replay the target sensor data based on the target sensor, and detect whether a jump occurs in the preset display page of the application to be tested, so as to obtain a jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is a page displayed after the application to be tested is started, and then the target detection result of the application to be tested is determined based on the jump detection result of the at least one application scenario, and the target detection result is used to indicate whether the jump trigger mechanism of the preset display page of the application to be tested is in violation of the rules, so as to accurately detect whether the application to be tested is in violation of the rules, and then provide a basis for subsequent application in terms of the development of standardized applications.
[0104] Figure 2 It is a flowchart showing how to control a terminal device to start the application to be tested according to an exemplary embodiment of the present disclosure; based on the above embodiment, this embodiment uses how to control a terminal device to start the application to be tested as an example to exemplify.
[0105] like Figure 2 As shown, the application detection method of this embodiment may further include, before, in response to detecting that the terminal device starts the pre-installed application to be tested, writing the pre-collected target sensor data of at least one application scenario into the target sensor of the terminal device, controlling the terminal device to start the application to be tested based on the following steps S201-S203:
[0106] In step S201, a preset monitoring program is started in the terminal device.
[0107] In this embodiment, a preset monitoring program can be started in the terminal device. The monitoring program can be used to monitor whether the application to be tested pops up a target pop-up window, such as a pop-up window for asking whether to agree to the privacy policy and / or obtain system permissions.
[0108] In step S202, in response to monitoring the target pop-up window of the application to be tested based on the preset monitoring program, an instruction for skipping the pop-up window is triggered in the pop-up window.
[0109] In this embodiment, after the preset monitoring program is started in the terminal device, in response to the target pop-up window being monitored by the preset monitoring program and popped up by the application under test, an instruction for skipping the pop-up window can be triggered in the pop-up window, such as an instruction for agreeing to the privacy policy and / or obtaining the system permissions.
[0110] For example, when the preset monitoring program detects that the target pop-up window pops up in the application under test, the "Agree" button can be automatically clicked to skip the target pop-up window, so that the application under test can smoothly enter the preset display page, such as the shake advertising page, when it is started next time.
[0111] In step S203, the terminal device is controlled to close the preset monitoring program and restart the application program to be tested.
[0112] In this embodiment, when the instruction for skipping the pop-up window is triggered in the pop-up window, the application to be tested can be officially started, and then the host device can control the terminal device to close the preset monitoring program and restart (i.e., close and restart) the application to be tested.
[0113] Taking the preset display page as a shake ad page as an example, since shake ads are usually open screen ads, it is necessary to close the preset detection program after skipping the pop-up window to avoid the shake ad page displayed after the subsequent application under test is started being closed, and then restart the application under test so that the application under test can display the shake ad page.
[0114] On this basis, the subsequent detection steps of the application to be tested can be implemented.
[0115] From the above description, it can be seen that this embodiment can monitor whether the application under test pops up a target pop-up window for asking whether to agree to the privacy policy and / or obtain system permissions by starting a preset monitoring program in the terminal device, and then in response to the preset monitoring program monitoring that the application under test pops up the target pop-up window, trigger an instruction for skipping the pop-up window in the pop-up window, so as to automatically process the target pop-up window, and then control the terminal device to close the preset monitoring program and restart the application under test, and then implement subsequent steps such as writing the target sensor data in at least one application scenario collected in advance to the target sensor of the terminal device in response to detecting that the terminal device starts the pre-installed application under test, etc., so as to accurately detect whether the jump trigger mechanism of the preset display page of the application under test violates the regulations, and then provide a basis for the subsequent development of standardized applications and other applications.
[0116] Figure 3 is a flowchart showing how to collect target sensor data in at least one application scenario according to an exemplary embodiment of the present disclosure;
[0117] This embodiment is based on the above embodiment and takes how to collect target sensor data in at least one application scenario as an example to exemplify.
[0118] like Figure 3 As shown, the application detection method of this embodiment may further include collecting target sensor data in the at least one application scenario based on the following steps S301-S303:
[0119] In step S301, sensor data of at least one sensor is collected in each of the scenarios to obtain at least one set of sensor data.
[0120] In this embodiment, the at least one application scenario may include an expected jump scenario and an unexpected jump scenario.
[0121] The desired jump scenario may also include a pocket walking scenario (ie, a walking scenario in which the terminal device is placed in a pocket) and / or a hand-held shaking scenario.
[0122] The above-mentioned unexpected jump scenarios include at least one of static scenarios, non-shaking usage scenarios (such as watching videos, playing mobile games, etc.), pick up and put down scenarios, and walking scenarios with handheld devices without swinging arms (walking scenarios with handheld terminal devices and without swinging arms).
[0123] The at least one sensor may include at least one of an accelerometer, a game rotation vector sensor, a gyroscope, a linear acceleration sensor, a geomagnetic rotation vector sensor, a gyroscope uncalibrated, a rotation sensor, an accelerometer uncalibrated, and an orientation sensor.
[0124] For example, in each of the above application scenarios, data from the above 9 sensors can be collected respectively to obtain 9 groups of sensor data in each scenario.
[0125] Each set of sensor data includes sensor data at each time point within the detection time period.
[0126] In step S302, the at least one set of sensor data at the same time point in each of the scenes is spliced to serve as the sensor data at the same time point in each of the scenes.
[0127] In this embodiment, after obtaining at least one set of sensor data, the at least one set of sensor data at the same time point in each of the scenes may be spliced as the sensor data at the same time point in each of the scenes.
[0128] For example, nine groups of sensor data at the same time point in a static scene (eg, a time point with the same first 6 bits of the timestamp) may be spliced together and used as the sensor data at the time point in the static scene.
[0129] In step S303, the sensor data in each of the scenarios are sorted according to the order of time points to obtain the target sensor data in each of the scenarios.
[0130] In this embodiment, after at least one group of sensor data at the same time point in each of the scenes are spliced as the sensor data at the same time point in each of the scenes, the sensor data in each of the scenes can be sorted according to the order of the time points to obtain the target sensor data in each of the scenes.
[0131] For example, the target sensor data in a certain scenario can be shown in Table 1 below:
[0132] Table 1
[0133]
[0134] Among them, "1" is the code name of the accelerometer sensor; "15" is the code name of the game rotation vector sensor Game Rotation Vector; "4" is the code name of the gyroscope sensor Gyroscope; "10" is the code name of the linear acceleration sensor Linear Acceleration; "20" is the code name of the geomagnetic rotation vector sensor Geomagetic RotationVector; "16" is the code name of the gyroscope uncalibrated Gyroscope Uncalibrated; "11" is the code name of the rotation sensor Rotation; "35" is the code name of the accelerometer uncalibrated Accelerometer Uncalibrated; "3" is the code name of the orientation sensor Orientation. "[]" is the sensor data collected by the corresponding sensor.
[0135] As can be seen from the above description, this embodiment obtains at least one set of sensor data by collecting sensor data of at least one sensor in each of the scenarios respectively, and splicing the at least one set of sensor data at the same time point in each of the scenarios as the sensor data at the same time point in each of the scenarios, and then sorting the sensor data in each of the scenarios according to the order of time points to obtain the target sensor data in each of the scenarios, so as to realize the collection of the target sensor data in the at least one application scenario, and then realize the subsequent writing of the target sensor data in the at least one application scenario into the target sensor of the terminal device, so as to replay the target sensor data based on the target sensor, so as to detect whether the preset display page of the application to be tested jumps, obtain the jump detection result of the application to be tested corresponding to the at least one application scenario, and determine the target detection result of the application to be tested based on the jump detection result of the at least one application scenario, so as to realize accurate detection of whether the jump trigger mechanism of the preset display page of the application to be tested violates the rules, and then provide a basis for subsequent standard application development and other aspects.
[0136] Figure 4 It is a flowchart of an application detection method shown according to another exemplary embodiment of the present disclosure; the method of this embodiment can be executed by an application detection device, which can be configured in a host device, such as a server, a workstation, a personal computer, a mobile terminal (such as a mobile phone, a tablet computer, etc.), a wearable device (such as glasses, watches, etc.), etc. In this embodiment, the host device can realize multi-terminal parallel detection of whether multiple APPs to be tested in the APP database are in violation of regulations (that is, whether the jump trigger mechanism of the shake advertising page is in violation of regulations) through thread scheduling. Specifically, the host device can import the data of each APP to be tested in the APP database (such as the package name and / or download link of the APP to be tested) into the Redis queue, and then turn on the developer mode of each terminal device (such as a smart phone), and connect the host device to each terminal device; then the terminal queue can be constructed according to the device information of the terminal device (such as a serial port number, etc.), and the thread pool with the same number of terminal devices can be opened. On this basis, as shown in 4, each thread can pull a piece of APP data to be tested from the Redis queue, and take out a terminal device from the terminal queue for sending, so as to detect the corresponding APP to be tested. The specific detection process can be referred to above Figures 1 to 3 The illustrated embodiments are not described in detail here.
[0137] On this basis, the test result of the APP to be tested (such as "compliant" or "illegal", etc.) is obtained, and the terminal device can be put back to the end of the terminal queue to wait for the next APP to be tested. Optionally, the terminal device can also uninstall the APP that has been tested to save the storage space of the terminal device.
[0138] From the above description, it can be seen that this embodiment can realize the detection of the jump trigger mechanism of the shake advertising page of multiple applications, can greatly improve the efficiency of application detection, and can provide a basis for subsequent standardized application development and other aspects of the application, which is conducive to maintaining the user's right to know and right to choose, and promoting the virtuous cycle of the digital economy.
[0139] Figure 5 is a block diagram of an application detection device according to an exemplary embodiment of the present disclosure; the device of this embodiment can be configured in a host device, such as a server, a workstation, a personal computer, a mobile terminal (such as a mobile phone, a tablet computer, etc.), a wearable device (such as glasses, a watch, etc.), etc. Specifically, Figure 5 As shown, the device may include: a data writing module 110, a jump detection module 120 and a result determination module 130, wherein:
[0140] The data writing module 110 is used to write the pre-collected target sensor data under at least one application scenario into the target sensor of the terminal device in response to detecting that the terminal device starts the pre-installed application to be tested, so as to replay the target sensor data based on the target sensor;
[0141] A jump detection module 120 is used to detect whether a preset display page of the application to be tested jumps, and obtain a jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is a page displayed after the application to be tested is started;
[0142] The result determination module 130 is used to determine a target detection result of the application to be tested based on the jump detection result of the at least one application scenario, wherein the target detection result is used to indicate whether a jump trigger mechanism of a preset display page of the application to be tested violates a rule.
[0143] From the above description, it can be seen that the device of this embodiment writes the pre-collected target sensor data under at least one application scenario into the target sensor of the terminal device in response to detecting that the terminal device starts a pre-installed application to be tested, so as to replay the target sensor data based on the target sensor, and detect whether the preset display page of the application to be tested jumps, so as to obtain the jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is the page displayed after the application to be tested is started, and then the target detection result of the application to be tested is determined based on the jump detection result of the at least one application scenario, and the target detection result is used to indicate whether the jump trigger mechanism of the preset display page of the application to be tested violates the rules, so as to realize accurate detection of whether the application to be tested violates the rules, and then provide a basis for subsequent application in terms of the development of standardized applications.
[0144] Figure 6 2 is a block diagram of another application detection device according to an exemplary embodiment of the present disclosure; the device of this embodiment can be configured in a host device, such as a server, a workstation, a personal computer, a mobile terminal (such as a mobile phone, a tablet computer, etc.), a wearable device (such as glasses, watches, etc.), etc. Among them, the data writing module 210, the jump detection module 220 and the result determination module 230 are similar to the aforementioned Figure 5 The functions of the data writing module 110 , the jump detection module 120 and the result determination module 130 in the illustrated embodiment are the same and will not be described in detail herein.
[0145] like Figure 6 As shown, the above device may also include:
[0146] The data sending module 240 is used for sending the program download data of the application to be tested to the terminal device in response to acquiring the program download data of the application to be tested, so that the terminal device can download and install the application to be tested based on the program download data.
[0147] In some embodiments, the above device may further include a startup control module 250;
[0148] Furthermore, the startup control module 250 may further include:
[0149] A program start unit 251 is used to start a preset monitoring program in the terminal device, and the monitoring program is used to monitor whether the application to be tested pops up a target pop-up window;
[0150] An instruction triggering unit 252, configured to trigger an instruction for skipping the pop-up window in the pop-up window in response to detecting that the target pop-up window is popped up by the application to be tested based on the preset monitoring program;
[0151] The startup control unit 253 is used to control the terminal device to close the preset monitoring program and restart the application program to be tested.
[0152] In some embodiments, the above device may further include a data acquisition module 260;
[0153] Furthermore, the data acquisition module 260 may include:
[0154] A data collection unit 261 is used to collect sensor data of at least one sensor in each of the scenarios to obtain at least one set of sensor data;
[0155] A data splicing unit 262, configured to splice the at least one set of sensor data at the same time point in each of the scenes as the sensor data at the same time point in each of the scenes;
[0156] The data sorting unit 263 is used to sort the sensor data in each of the scenarios according to the order of time points to obtain the target sensor data in each of the scenarios.
[0157] In some embodiments, the at least one application scenario may include an expected jump scenario and an undesired jump scenario;
[0158] Furthermore, the desired jump scene may include a pocket walking scene and / or a hand-held shaking scene;
[0159] The unexpected jump scenario may include at least one of a static scenario, a non-shaking use scenario, a pick-up and put-down scenario, and a hand-held walking scenario without swinging arms.
[0160] In some embodiments, the above-mentioned result determination module 230 can also be used to determine that the target detection result is a first detection result in response to the jump detection result of the application under test corresponding to the unexpected jump scenario, including the occurrence of a jump, and the first detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is in violation.
[0161] In some embodiments, the above-mentioned result determination module 230 can also be used to determine that the target detection result is a second detection result in response to the jump detection results of the application under test corresponding to the unexpected jump scenario that no jump occurred, and the second detection result is used to indicate that the application under test is compliant.
[0162] In some embodiments, the above-mentioned result determination module 230 can also be used to determine that the target detection result is a second detection result in response to the jump detection results of the application under test corresponding to the unexpected jump scenario that no jump occurred, while the jump detection results of the application under test corresponding to the expected jump scenario include the occurrence of a jump, and the second detection result is used to indicate that the application under test is compliant.
[0163] Regarding the device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.
[0164] Figure 7 900 is a block diagram of a host device according to an exemplary embodiment. For example, the device 900 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.
[0165] Reference Figure 7 , device 900 may include one or more of the following components: a processing component 902 , a memory 904 , a power component 906 , a multimedia component 908 , an audio component 910 , an input / output (I / O) interface 912 , a sensor component 914 , and a communication component 916 .
[0166] The processing component 902 generally controls the overall operation of the device 900, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 902 may include one or more processors 920 to execute instructions to complete all or part of the steps of the above-mentioned application detection method. In addition, the processing component 902 may include one or more modules to facilitate the interaction between the processing component 902 and other components. For example, the processing component 902 may include a multimedia module to facilitate the interaction between the multimedia component 908 and the processing component 902.
[0167] The memory 904 is configured to store various types of data to support operations on the device 900. Examples of such data include instructions for any application or method operating on the device 900, contact data, phone book data, messages, pictures, videos, etc. The memory 904 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.
[0168] The power supply component 906 provides power to the various components of the device 900. The power supply component 906 can include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the device 900.
[0169] The multimedia component 908 includes a screen that provides an output interface between the device 900 and the user. In some embodiments, the screen may include a liquid crystal display panel and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 908 includes a front camera and / or a rear camera. When the device 900 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and the rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
[0170] The audio component 910 is configured to output and / or input audio signals. For example, the audio component 910 includes a microphone (MIC), and when the device 900 is in an operating mode, such as a call mode, a recording mode, and a speech recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 904 or sent via the communication component 916. In some embodiments, the audio component 910 also includes a speaker for outputting audio signals.
[0171] I / O interface 912 provides an interface between processing component 902 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.
[0172] The sensor assembly 914 includes one or more sensors for providing various aspects of status assessment for the device 900. For example, the sensor assembly 914 can detect the open / closed state of the device 900, the relative positioning of components, such as the display panel and keypad of the device 900, and the sensor assembly 914 can also detect the position change of the device 900 or a component of the device 900, the presence or absence of user contact with the device 900, the orientation or acceleration / deceleration of the device 900, and the temperature change of the device 900. The sensor assembly 914 can also include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 914 can also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 914 can also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
[0173] The communication component 916 is configured to facilitate wired or wireless communication between the device 900 and other devices. The device 900 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, 4G or 5G or a combination thereof. In an exemplary embodiment, the communication component 916 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 916 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.
[0174] In an exemplary embodiment, the device 900 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the above-described application detection method.
[0175] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 904 including instructions, and the instructions can be executed by the processor 920 of the device 900 to complete the above-mentioned application detection method. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.
[0176] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the disclosure disclosed herein. The present disclosure is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The description and examples are to be considered exemplary only, and the true scope and spirit of the present disclosure are indicated by the following claims.
[0177] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.
Claims
1. An application detection method, characterized in that: Applied to a host device, the method comprises: In response to detecting that a pre-installed application to be tested is started by a terminal device, writing the pre-collected target sensor data in at least one application scenario into a target sensor of the terminal device, so as to replay the target sensor data based on the target sensor; Detecting whether a preset display page of the application to be tested jumps, and obtaining a jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is a page displayed after the application to be tested is started; A target detection result of the application to be tested is determined based on the jump detection result of the at least one application scenario, and the target detection result is used to indicate whether a jump trigger mechanism of a preset display page of the application to be tested violates a rule.
2. The method according to claim 1, characterized in that The method further comprises: In response to acquiring the program download data of the application to be tested, the program download data is sent to the terminal device, so that the terminal device downloads and installs the application to be tested based on the program download data.
3. The method according to claim 1, characterized in that Before, in response to detecting that the terminal device starts the pre-installed application program to be tested, writing the pre-collected target sensor data in at least one application scenario into the target sensor of the terminal device, the method further includes: Starting a preset monitoring program in the terminal device, the monitoring program is used to monitor whether the application to be tested pops up a target pop-up window; In response to monitoring, based on the preset monitoring program, that the target pop-up window pops up from the application to be tested, triggering in the pop-up window an instruction for skipping the pop-up window; The terminal device is controlled to close the preset monitoring program and restart the application program to be tested.
4. The method according to claim 1, characterized in that The method further includes collecting target sensor data in the at least one application scenario based on the following manner: Collecting sensor data of at least one sensor in each of the scenarios to obtain at least one set of sensor data; splicing the at least one set of sensor data at the same time point in each of the scenes as the sensor data at the same time point in each of the scenes; The sensor data in each of the scenarios are sorted according to the order of time points to obtain the target sensor data in each of the scenarios.
5. The method according to claim 1, characterized in that The at least one application scenario includes an expected jump scenario and an unexpected jump scenario; The desired jump scene includes a pocket walking scene and / or a hand-held shaking scene; The unexpected jump scenario includes at least one of a static scenario, a non-shaking use scenario, a pick-up and put-down scenario, and a hand-held walking scenario without swinging arms.
6. The method according to claim 5, characterized in that The determining the target detection result of the application to be tested based on the jump detection result of the at least one application scenario includes: In response to the jump detection result of the application under test corresponding to the unexpected jump scenario including a jump occurring, determining the target detection result as a first detection result, wherein the first detection result is used to indicate a jump trigger mechanism violation of a preset display page of the application under test.
7. The method according to claim 5, characterized in that The determining the target detection result of the application to be tested based on the jump detection result of the at least one application scenario includes: In response to the jump detection results of the application under test corresponding to the unexpected jump scenario being no jump, the target detection result is determined to be a second detection result, and the second detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is compliant.
8. The method according to claim 5, characterized in that The determining the target detection result of the application to be tested based on the jump detection result of the at least one application scenario includes: In response to the jump detection results of the application under test corresponding to the unexpected jump scenarios being that no jump occurred, and the jump detection results of the application under test corresponding to the expected jump scenarios being that a jump occurred, the target detection result is determined to be a second detection result, and the second detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is compliant.
9. An application detection device, characterized in that: Applied to a host device, the device comprises: a data writing module, configured to write the pre-collected target sensor data under at least one application scenario into the target sensor of the terminal device in response to detecting that the terminal device starts a pre-installed application to be tested, so as to replay the target sensor data based on the target sensor; A jump detection module, used to detect whether a preset display page of the application to be tested jumps, and obtain a jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is a page displayed after the application to be tested is started; The result determination module is used to determine the target detection result of the application to be tested based on the jump detection result of the at least one application scenario, and the target detection result is used to indicate whether the jump trigger mechanism of the preset display page of the application to be tested violates the rules.
10. The device according to claim 9, characterized in that The device also includes: The data sending module is used for sending the program download data of the application to be tested to the terminal device in response to acquiring the program download data of the application to be tested, so that the terminal device can download and install the application to be tested based on the program download data.
11. The device according to claim 9, characterized in that The device also includes a startup control module; The startup control module comprises: A program start unit, used to start a preset monitoring program in the terminal device, the monitoring program is used to monitor whether the application to be tested pops up a target pop-up window; An instruction triggering unit, configured to trigger an instruction for skipping the pop-up window in the pop-up window in response to monitoring that the target pop-up window is popped up by the application to be tested based on the preset monitoring program; The startup control unit is used to control the terminal device to close the preset monitoring program and restart the application program to be tested.
12. The device according to claim 9, characterized in that The device also includes a data acquisition module; The data acquisition module comprises: A data collection unit, used to collect sensor data of at least one sensor in each of the scenarios to obtain at least one set of sensor data; A data splicing unit, used for splicing the at least one set of sensor data at the same time point in each of the scenes as the sensor data at the same time point in each of the scenes; The data sorting unit is used to sort the sensor data in each of the scenes according to the order of time points to obtain the target sensor data in each of the scenes.
13. The device according to claim 9, characterized in that The at least one application scenario includes an expected jump scenario and an unexpected jump scenario; The desired jump scene includes a pocket walking scene and / or a hand-held shaking scene; The unexpected jump scenario includes at least one of a static scenario, a non-shaking use scenario, a pick-up and put-down scenario, and a hand-held walking scenario without swinging arms.
14. The device according to claim 13, characterized in that The result determination module is also used to determine that the target detection result is a first detection result in response to the jump detection result of the application under test corresponding to the unexpected jump scenario including the occurrence of a jump, and the first detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is violated.
15. The device according to claim 13, characterized in that The result determination module is also used to determine that the target detection result is a second detection result in response to the jump detection results of the application under test corresponding to the unexpected jump scenario being no jump, and the second detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is compliant.
16. The device according to claim 13, characterized in that The result determination module is also used to determine that the target detection result is a second detection result in response to the jump detection results of the application under test corresponding to the unexpected jump scenario being that no jump occurred, while the jump detection results of the application under test corresponding to the expected jump scenario include that a jump occurred. The second detection result is used to indicate that the jump trigger mechanism of the preset display page of the application under test is compliant.
17. A host device, characterized in that: The device comprises: a processor and a memory for storing a computer program; Wherein, the processor is configured to implement, when executing the computer program: In response to detecting that a pre-installed application to be tested is started by a terminal device, writing the pre-collected target sensor data in at least one application scenario into a target sensor of the terminal device, so as to replay the target sensor data based on the target sensor; Detecting whether a preset display page of the application to be tested jumps, and obtaining a jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is a page displayed after the application to be tested is started; Determine a target detection result of the application to be tested based on the jump detection result of the at least one application scenario, wherein the target detection result is used to indicate whether a jump trigger mechanism of a preset display page of the application to be tested violates a rule 。 18. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by the processor, it realizes: In response to detecting that a pre-installed application to be tested is started by a terminal device, writing the pre-collected target sensor data in at least one application scenario into a target sensor of the terminal device, so as to replay the target sensor data based on the target sensor; Detecting whether a preset display page of the application to be tested jumps, and obtaining a jump detection result of the application to be tested corresponding to the at least one application scenario, wherein the preset display page is a page displayed after the application to be tested is started; A target detection result of the application to be tested is determined based on the jump detection result of the at least one application scenario, and the target detection result is used to indicate whether a jump trigger mechanism of a preset display page of the application to be tested violates a rule.
