Method and electronic device for user behavior playback
By coordinating screen recording rules between the server and electronic devices, screen recording is only performed on users who meet the criteria, thus solving the problems of high resource consumption and unrealistic operation processes caused by traditional screen recording methods. This achieves efficient user behavior restoration and resource conservation.
Patent Information
- Application Number
- CN202210912628.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-30
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2042-07-30
AI Technical Summary
In existing technologies for user behavior analysis, screen recording results in excessive consumption of server storage and computing resources, and cannot accurately reproduce the user's operation process.
By coordinating screen recording rules between servers and electronic devices, screen recording is only performed on eligible users, generating and transmitting screen recording files to reduce indiscriminate screen recording. The system combines user historical behavior data to determine the list of users eligible for screen recording and uses screen recording page identifiers and time nodes for precise screen recording.
It achieves a true reproduction of the user's operation process, reduces the number of users and files that need to be recorded, reduces the consumption of server storage and computing resources, and protects user privacy.
Smart Images

Figure CN117520113B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of terminal, and the technical field of data acquisition and processing, in particular to a method for user behavior playback and an electronic device. BACKGROUND
[0002] With the update and development of application programs, developers need to pay more attention to the user experience, and therefore need to analyze user behavior to better improve the application program. At present, an electronic device can record user operation behavior or record screen to perform user behavior playback, so that developers can more accurately understand user behavior habits and manners, and analyze and research user behavior habits and manners. SUMMARY
[0003] Embodiments of the present application provide a method for user behavior playback and an electronic device, which can restore user behavior operation truly, reduce the number of users for recording screen, and reduce the number of recording screen files, thereby reducing the consumption of server storage and computing resources.
[0004] In a first aspect, the present application provides a method for user behavior playback, which can be applied to a communication system including a plurality of first devices and a second device. In the method, the second device can obtain a recording screen condition and a recording screen manner for a first application.
[0005] The second device can receive user historical behavior data of the plurality of first devices when running the first application, and determine a recordable user list meeting the recording screen condition for the first application according to the user historical behavior data. The recordable user list includes one or more user identifiers, and one user identifier corresponds to one first device.
[0006] The first device can receive a first operation acting on the first application, and send query information to the second device. The query information includes a first user identifier corresponding to the first device.
[0007] The second device sends decision information to the first device. In a case where the recordable user list includes the first user identifier, the decision information is used to inform the first device to record screen according to the recording screen manner for the first application, or not to record screen.
[0008] In a case where the recordable user list does not include the first user identifier, the decision information is used to inform the first device not to record screen.
[0009] In a case where the decision information is used to inform the first device to record screen, the first device can record screen according to the recording screen manner to obtain a recording screen file, and send the recording screen file to the second device.
[0010] From the above method, the first device obtains the screen recording file and sends it to the second device, so that the developer can truly understand the operation of the user in the first application by watching the screen recording file.
[0011] Such a way can restore the operation process of the user using the first application more truly compared with the way of combining user operation behavior and page information.
[0012] In addition, it can also avoid indiscriminately screen recording all users using the electronic device carrying the first application without target behavior, which can reduce the number of screen recording users and the number of screen recording files, thereby reducing the consumption of server storage and computing resources.
[0013] In a second aspect, the embodiments of the present application provide a user behavior playback method, which is applied to a first device. In the method, the first device can send user historical behavior data when running a first application to a second device, and the user historical behavior data is used by the second device to determine a screen recording user list meeting a screen recording condition for the first application. The screen recording user list includes one or more user identifiers, and one user identifier corresponds to one first device.
[0014] The first device receives a first operation acting on the first application, and can send query information to the second device, wherein the query information includes a first user identifier corresponding to the first device.
[0015] The first device receives decision information sent by the second device, wherein, in the case that the screen recording user list contains the first user identifier, the decision information is used to inform the first device to screen record according to a screen recording mode for the first application, or not to screen record. In the case that the screen recording user list does not contain the first user identifier, the decision information is used to inform the first device not to screen record.
[0016] In the case that the decision information is used to inform the first device to screen record, the first device can screen record according to the screen recording mode for the first application, obtain a screen recording file, and send the screen recording file to the second device.
[0017] From the above method, the first device obtains the screen recording file and sends it to the second device, so that the developer can truly understand the operation of the user in the first application by watching the screen recording file.
[0018] Such a way can restore the operation process of the user using the first application more truly compared with the way of combining user operation behavior and page information.
[0019] In addition, in the case of no target behavior, all user-side electronic devices carrying the first application can be indiscriminately recorded, which can reduce the number of users for recording and the number of recording files, thereby reducing the consumption of server storage and computing resources.
[0020] In a third aspect, the embodiments of the present application provide a method for user behavior playback, which is applied to a second device. In the method, the second device can obtain a recording condition and a recording manner for a first application.
[0021] The second device receives user historical behavior data of a plurality of first devices running the first application respectively, and can determine a recordable user list meeting the recording condition for the first application according to the user historical behavior data, the recordable user list including one or more user identifiers, and one user identifier corresponding to one first device.
[0022] The second device receives query information sent by the first device, and the query information includes a first user identifier corresponding to the first device.
[0023] The second device can send decision information to the first device, wherein, in the case that the recordable user list contains the first user identifier, the decision information is used to inform the first device to record according to the recording manner for the first application, or not to record.
[0024] In the case that the recordable user list does not contain the first user identifier, the decision information is used to inform the first device not to record.
[0025] In the case that the decision information is used to inform the first device to record, the second device receives a recording file obtained by the first device recording according to the recording manner for the first application.
[0026] In some implementations, the recording file can include, but is not limited to, a recording rule identifier, a recording time, and recording content, and can further include a serial number or information about whether the recording is ended.
[0027] In some implementations, the user historical behavior data can include a user identifier, a behavior identifier, and context information of the behavior.
[0028] By implementing the above method, the user's behavior operation can be truly restored, and the number of users for recording and the number of recording files can be reduced, thereby reducing the consumption of server storage and computing resources.
[0029] In combination with the first aspect and the third aspect, in some implementations, in the method, the second device can play a recording file sent by a server.
[0030] In a possible implementation, the second device can receive the server-sent screen recording file that meets the conditions of the screen recording file queried by the developer, or receive one of the screen recording files that meet the conditions of the screen recording file queried by the developer and randomly sent by the server, without limitation.
[0031] In the above embodiment, the developer can observe the actual behavior video of the user when using the first application through the screen recording file, so that the operation process of the user when using the first application can be restored more truly compared with the manner of combining the user operation behavior and the page information, and the developer can more accurately obtain the specific behavior process of the user.
[0032] With reference to the first aspect, the second aspect, and the third aspect, in some embodiments, the screen recording manner for the first application includes: a page identifier of a screen recording page, and a corresponding time node.
[0033] The query information further includes a first page identifier of a page of the first application displayed by the first device after receiving the first operation.
[0034] In a case where the screenable user list contains the first user identifier, and the page identifier of the screen recording page contains the first page identifier, the decision information includes: a time node corresponding to the first page identifier in the screen recording manner, and the decision information is used to instruct the first device to perform screen recording according to the time node included in the decision information.
[0035] The time node can be used to indicate when the first device starts to perform screen recording and when the first device starts to end screen recording. For example, the time node can include “fixed time length”, “until exiting the page”, and “until exiting the application”.
[0036] With reference to the first aspect, the second aspect, and the third aspect, in some embodiments, the screen recording manner for the first application can include: a page identifier of a screen recording page, and a corresponding time node; and a page identifier of a non-screen recording page.
[0037] The query information can further include a first page identifier of a page of the first application displayed by the first device after receiving the first operation.
[0038] In a case where the screenable user list contains the first user identifier, the page identifier of the screen recording page in the screen recording manner contains the first page identifier, and the page identifier of the non-screen recording page in the screen recording manner contains the first page identifier, the second device can send the decision information to the first device, and the decision information is used to instruct the first device not to perform screen recording.
[0039] The page identifier of the screen recording page refers to a page identifier of a page in the first application that can be screen recorded, and the page identifier of the non-screen recording page refers to a page identifier of a page in the first application that is not screen recorded.
[0040] In a possible implementation, if there are multiple screen recording rules corresponding to the user identifier in the query information in the screen recordable user list, and the screen recording manners for the same page information in the multiple screen recording rules conflict, the screen recording manner of not recording is selected as the highest priority screen recording manner.
[0041] In this way, during screen recording, some important content can be prevented from being recorded, and the effect of protecting user privacy can be achieved.
[0042] In combination with the first aspect, the second aspect and the third aspect, in some embodiments, the screen recording condition for the first application can include a target behavior and a probability range of occurrence of the target behavior.
[0043] The probability of the target behavior occurring in the first device corresponding to the user identifier in the screen recordable user list is within the probability range of occurrence of the target behavior in the screen recording condition.
[0044] In a possible implementation, the second device can determine the screen recordable user list according to user historical behavior data received before a time point of obtaining the screen recording rule for the first application. That is, after the second device obtains the screen recording condition, the screen recordable user list can be fixed.
[0045] Optionally, in some embodiments, the second device can update the screen recordable user list according to real-time user historical behavior data. That is, the screen recordable user list can be updated according to the use of the first application by each user in the first device.
[0046] The screen recordable user list is composed of a user identifier that can be screen recorded and a list of screen recording rule identifiers that meet the conditions of the user identifier.
[0047] Through the above method, the server can determine the probability range of occurrence of the target behavior in the screen recording rule according to the user historical behavior data, and can also determine the screen recordable user list by comparing the probability in the screen recording rule with the probability of occurrence of the target behavior of the user calculated based on the set target behavior.
[0048] Therefore, it can be avoided that all users using the electronic device carrying the first application are indiscriminately screen recorded without the target behavior.
[0049] In some embodiments of the first aspect, the recording condition for the first application can further include any one or more of: a first version number of the first application, a first application type, and a first device model.
[0050] The query information can further include any one or more of: a version number of the first application on the first device, an application type of the first application on the first device, and a device model of the first device.
[0051] The first device corresponding to the user identifier in the recordable user list can satisfy any one or more of: a version number of the installed first application is the first version number, an application type of the installed first application is the first application type, and a device model of the first device is the first device model.
[0052] In this way, in addition to calculating the probability of occurrence of the target behavior based on the user behavior history data, the recordable user list can be further determined based on the version number of the first application, the application type of the first application, and the device model of the first device, so that the range of the recordable user list is smaller, and the number of users for recording is smaller.
[0053] In a fourth aspect, the embodiments of the present application provide a method for user behavior playback. The method can be applied to a communication system including a plurality of first devices and a second device. In the method, the second device can obtain a recording condition for a first application and a recording manner.
[0054] The second device can receive user history behavior data of the first application running on the plurality of first devices, and determine a recordable user list that satisfies the recording condition for the first application based on the user history behavior data. The recordable user list can include one or more user identifiers, and one user identifier can correspond to one first device.
[0055] The second device can send the recording manner for the first application to the first device corresponding to the user identifier in the recordable user list.
[0056] The first device corresponding to the user identifier in the recordable user list can receive a first operation acting on the first application, and can record or not record according to the recording manner for the first application.
[0057] In the case of recording by the first device, the first device can send a recording file obtained by recording according to the recording manner of the first application to the second device.
[0058] From the above method, the first device obtains the screen recording file and sends it to the second device, so that the developer can truly understand the operation of the user in the first application by watching the screen recording file.
[0059] Such a way can restore the operation process of the user using the first application more truly compared with the way of combining the user operation behavior and the page information.
[0060] Moreover, the second device sends the screen recording mode of the screen recording rule met by the first device to the corresponding first device, which can reduce the resources occupied by the first device sending the query information and the second device sending the decision information, and can enable the first device to judge whether the first device can perform screen recording at the current time according to the screen recording mode.
[0061] In a fifth aspect, an embodiment of the present application provides a method for user behavior playback, which can be applied to a first device, in which the first device can send user historical behavior data when running a first application to a second device, the user historical behavior data can be used by the second device to determine a screenable user list meeting a screen recording condition for the first application, the screenable user list can include one or more user identifiers, and one user identifier corresponds to one device.
[0062] The screenable user list can include the first device.
[0063] The first device can receive a screen recording mode for the first application sent by the second device.
[0064] The first device receives a first operation acting on the first application, and can perform screen recording or not according to the screen recording mode for the first application.
[0065] In the case of screen recording of the first device, the first device can send a screen recording file obtained by performing screen recording according to the screen recording mode for the first application to the second device.
[0066] From the above method, the first device obtains the screen recording file and sends it to the second device, so that the developer can truly understand the operation of the user in the first application by watching the screen recording file.
[0067] Such a way can restore the operation process of the user using the first application more truly compared with the way of combining the user operation behavior and the page information.
[0068] Moreover, the second device sends the screen recording mode of the screen recording rule met by the first device to the corresponding first device, which can reduce the resources occupied by the first device sending the query information and the second device sending the decision information, and can enable the first device to judge whether the first device can perform screen recording at the current time according to the screen recording mode.
[0069] In a sixth aspect, an embodiment of the present application provides a method for user behavior playback, which is applied to a second device, and in the method, the second device can acquire a screen recording condition and a screen recording mode for a first application.
[0070] The second device can receive user historical behavior data of a plurality of first devices running the first application respectively, and can determine a screen recordable user list meeting the screen recording condition for the first application according to the user historical behavior data.
[0071] The second device sends the screen recording mode for the first application to the first device corresponding to the user identifier in the screen recordable user list.
[0072] In the case that the first device corresponding to the user identifier in the screen recordable user list performs screen recording, the second device receives a screen recording file obtained by performing screen recording according to the screen recording mode for the first application and sent by the first device corresponding to the user identifier in the screen recordable user list.
[0073] In some implementations, the screen recording file can include, but is not limited to, a screen recording rule identifier, a screen recording time, and screen recording content, and can further include a serial number or information about whether screen recording is ended.
[0074] In some implementations, the user historical behavior data can include a user identifier, a behavior identifier, and context information of the behavior.
[0075] Specifically, the user identifier can be used to distinguish different users. The user identifier can be an account used by the user to log in to the first application in the electronic device 210.
[0076] The behavior identifier is used to indicate the operation triggered by the user and performed by the electronic device 210, which can include, but is not limited to, starting the first application, registering an account, logging in to an account, browsing a page or a product, purchasing a service or a product, uninstalling an application, and the like, and the present application does not limit the same.
[0077] The context information of the behavior can include, but is not limited to, basic information of the electronic device used when the behavior occurs (for example, device model, operating system type and version, device specifications, and the like), basic information of the first application used when the behavior occurs (for example, first application identifier, first application version number, and the like), and basic information of the page where the behavior occurs (for example, page identifier, basic information of a product or content or service, and the like).
[0078] From the above method, the first device obtains the screen recording file and sends it to the second device, so that the developer can truly understand the operation of the user in the first application by watching the screen recording file.
[0079] Such a way can restore the operation process of the user using the first application more truly compared with the way of combining the user operation behavior and the page information.
[0080] Moreover, the second device sends the screen recording mode of the screen recording rule met by the first device to the corresponding first device, which can reduce the resources occupied by the first device sending the query information and the second device sending the decision information, and can enable the first device to judge whether the first device can perform screen recording at the current time according to the screen recording mode.
[0081] In combination with the fourth aspect and the sixth aspect, in some embodiments, the method can further include that the second device plays the screen recording file.
[0082] In a possible implementation, the second device can receive the screen recording file sent by the server to all screen recording files meeting the condition of the screen recording file queried by the developer, or receive one of the screen recording files sent by the server at random, which meets the condition of the screen recording file queried by the developer, without limitation.
[0083] In combination with the fourth aspect and the sixth aspect, in some embodiments, the screen recording mode for the first application includes a page identifier of a screen recording page and a corresponding time node.
[0084] In a case where the page identifier of the screen recording page in the screen recording mode includes a first page identifier, the first device performs screen recording according to the time node corresponding to the first page identifier, and the first page identifier can be a page identifier of a page of the first application displayed by the first device after receiving the first operation.
[0085] In some implementations, the time node can be used to indicate when the first device starts to perform screen recording and when to stop screen recording. For example, the time node can include "fixed time length", "until exiting the page", and "until exiting the application", and the like.
[0086] "Until exiting the page" means that the first electronic device starts to perform screen recording, and stops screen recording when exiting the page indicated by the page information. "Until exiting the application" means that the first electronic device starts to perform screen recording, and stops screen recording when exiting the first application.
[0087] In combination with the fourth aspect and the sixth aspect, in some embodiments, the screen recording mode for the first application further includes a page identifier of a screen recording page and a corresponding time node, and a page identifier of a non-screen recording page.
[0088] In a case where the page identifier of the recording page in the recording mode contains the first page identifier and the page identifier of the non-recording page in the recording mode contains the first page identifier, the first device does not record the screen, and the first page identifier can be a page identifier of a page of the first application displayed by the first device after the first operation is received.
[0089] The page identifier of the recording page refers to a page identifier of a page in the first application that can be recorded, and the page identifier of the non-recording page refers to a page identifier of a page in the first application that cannot be recorded.
[0090] In a possible implementation, if there are multiple recording rules corresponding to the user identifier in the query information in the list of users that can be recorded, and the recording modes for the same page information in the multiple recording rules conflict with each other, the recording mode with the highest priority is selected as the recording mode that does not record the screen.
[0091] In this way, during the recording process, important content can be prevented from being recorded, and the effect of protecting user privacy can be achieved.
[0092] In combination with the fourth aspect, the fifth aspect, and the sixth aspect, in some embodiments, the recording condition for the first application includes a target behavior and a probability range in which the target behavior occurs.
[0093] The probability of the first device performing the target behavior is within the probability range in which the target behavior occurs in the recording condition.
[0094] In a possible implementation, the second device can determine the list of users that can be recorded based on user historical behavior data received before a time point at which the recording condition for the first application is obtained. That is, after the second device obtains the recording condition, the list of users that can be recorded can be fixed.
[0095] In a possible implementation, the second device can calculate the probability of a device performing the target behavior based on a machine learning algorithm or the like.
[0096] Optionally, in some embodiments, the second device can update the list of users that can be recorded based on real-time user historical behavior data. That is, the list of users that can be recorded can be updated based on the use of the first application by each user on the first device.
[0097] The list of users that can be recorded is composed of a user identifier that can be recorded and a list of recording rule identifiers that meet the conditions of the user identifier.
[0098] By the above method, the server can determine the probability range of the target behavior occurring in the screen recording rule through the user historical behavior data, and can also determine the screen recording user list by comparing the probability in the screen recording rule with the probability of the user performing the target behavior calculated based on the set target behavior.
[0099] Therefore, it can be avoided that all electronic devices with the first application on the user side are indiscriminately screen recorded without the target behavior.
[0100] In combination with the fourth aspect, the fifth aspect and the sixth aspect, in some embodiments, the screen recording condition for the first application further includes any one or more of the following: a first version number of the first application, a first application type, and a first device model.
[0101] The first device can meet any one or more of the following: the version number of the installed first application is the first version number, the application type of the installed first application is the first application type, and the device model of the first device is the first device model.
[0102] In this way, in addition to calculating the probability of the target behavior according to the user behavior historical data, the first version number of the first application, the application type of the first application, and the device model of the first device are further used to determine the screen recording user list, so that the screen recording user list range is smaller, and the number of users for screen recording is smaller.
[0103] In a possible implementation, the second device can be a device in which the electronic device and the server are combined together.
[0104] In the seventh aspect, an embodiment of the present application provides an electronic device, which includes one or more processors and a memory; the memory is coupled to the one or more processors, and the memory is used to store computer program code including computer instructions; the one or more processors invoke the computer instructions to enable the electronic device to perform the method described in the second aspect or the third aspect or the fifth aspect or the sixth aspect.
[0105] In the eighth aspect, an embodiment of the present application provides a communication system including a first device and a second device; the first device includes one or more processors and a memory; the memory is coupled to the one or more processors, and the memory is used to store computer program code including computer instructions; and the first device is configured to perform the method described in the second aspect.
[0106] The second device includes one or more processors and a memory; the memory is coupled to the one or more processors, and the memory is configured to store computer program codes including computer instructions, and the second device is configured to execute the method described in the third aspect. Alternatively, the first device is configured to execute the method described in the fifth aspect, and the second device is configured to execute the method described in the sixth aspect.
[0107] In a ninth aspect, an embodiment of the present application provides a computer readable storage medium, including instructions, when the instructions are executed on an electronic device, causing the electronic device to execute the method described in the second aspect or the third aspect or the fifth aspect or the sixth aspect.
[0108] It can be understood that the electronic device provided in the seventh aspect, the communication system provided in the eighth aspect, the computer program product provided in the ninth aspect, and the computer storage medium provided in the fifth aspect are all used to execute the method provided in the embodiments of the present application. Therefore, the beneficial effects that can be achieved are referable to the beneficial effects in the corresponding method, which will not be described here again. BRIEF DESCRIPTION OF DRAWINGS
[0109] FIG. 1 A processing system 10 is provided in an embodiment of the present application.
[0110] FIG. 2A A structural schematic diagram of an electronic device 200 is provided in an embodiment of the present application.
[0111] FIG. 2B A software structural schematic diagram of an electronic device 200 is provided in an embodiment of the present application.
[0112] FIG. 2C A structural schematic diagram of a server 100 is provided in an embodiment of the present application.
[0113] FIG. 3 A software structural schematic diagram is provided in an embodiment of the present application.
[0114] FIG. 4A-FIG. 4D A user interface schematic diagram is provided in an embodiment of the present application.
[0115] FIG. 5A-FIG. 5D A developer interface schematic diagram is provided in an embodiment of the present application.
[0116] FIG. 6 A flowchart of a method for user behavior playback is provided in an embodiment of the present application. DETAILED DESCRIPTION
[0117] The terminology used in the following embodiments of the present application is for the purpose of describing particular embodiments only and is not intended to be limiting of the present application. As used in the description of the embodiments of the application and the appended claims, the singular forms "a," "an" and "the" are intended to include both singular and plural forms, unless the context clearly indicates otherwise. It will be further understood that the terms "and / or," as used in the description of the embodiments of the application, refers to and encompasses any and all possible combinations of one or more of the associated listed items.
[0118] Hereinafter, the terms "first" and "second" are used only for the purpose of description and can not be understood as implying or suggesting relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined with "first" and "second" can explicitly or implicitly include one or more of the features, and in the description of the embodiments of the present application, the meaning of "a plurality of" is two or more, unless otherwise specified.
[0119] The term "user interface (UI)" in the following embodiments of the present application is a medium interface for interaction and information exchange between an application or an operating system and a user, which realizes the conversion between the internal form of information and the form acceptable to the user. The user interface is source code written in a specific computer language such as Java, extensible markup language (XML), etc. The interface source code is parsed, rendered, and finally presented as content recognizable by the user on the electronic device. The commonly used form of user interface is graphic user interface (GUI), which refers to a user interface displayed in a graphical manner related to computer operation. It can be a visual interface element such as text, icon, button, menu, tab, text box, dialog box, status bar, navigation bar, Widget, etc. displayed in the display screen of the electronic device.
[0120] The developers of the application program need to make adaptive improvements and upgrades to the application program (APP) they develop, so that the problems that occur when users use the application program can be better solved and users can be accumulated, the user experience and comfort can be improved, and the services provided by the application program can be improved.
[0121] In order to better improve the application program, the developers need to analyze the user behavior habits and methods, consider the problems that occur when using the application program from the user's point of view, and the factors that affect the user experience.
[0122] The electronic device can record and analyze the operation behavior of the user when using the application program.
[0123] Specifically, the electronic device records the operation behavior of the user in the application program and the page information when the operation behavior occurs, and sends the recorded information to the server.
[0124] The server receives the playback instruction of the developer, calls the recorded information, and thereby plays back the operation behavior of the user.
[0125] Since the electronic device records all operation behaviors in the application program, a large amount of storage and computing resources of the server are consumed. Moreover, when the application program displays a dynamic page (for example, a page played in scrolling), the operation behavior data of the user and the page information cannot be accurately and one-to-one corresponded, resulting in matching errors during playback and failing to truly restore the operation behavior of the user.
[0126] Embodiments of the present application provide a playback method of user behavior, in which the electronic device on the developer side can obtain a screen recording rule formulated by the developer for a first application program, and the screen recording rule can include a screen recording condition and a screen recording manner. A plurality of electronic devices used by a user can send user behavior data (which can be referred to as user historical behavior data) when the first application program is run to a server. The server can determine a user list (which can be referred to as a screen recordable user list) that meets the screen recording condition according to the user historical behavior data. The electronic device on each user side in the screen recordable user list sends a screen recording file to the server after completing screen recording according to the screen recording manner. The server can send the screen recording file to the electronic device on the developer side after receiving the screen recording file. The electronic device on the developer side can play the screen recording file.
[0127] Through the above method, the operation of the user in the first application program can be truly understood by watching the screen recording file. Such a way can more truly restore the operation process of the user when using the first application program compared with the way of combining the user operation behavior and the page information.
[0128] In some embodiments, the server can determine a probability range of occurrence of a target behavior in the screen recording rule through the user historical behavior data, and can also determine the screen recordable user list by comparing the probability in the screen recording rule with the probability of occurrence of the target behavior of the user calculated based on the set target behavior.
[0129] Therefore, it can be avoided that all user-side electronic devices carrying the first application program are indiscriminately screen recorded without the target behavior, which can reduce the number of users for screen recording and the number of screen recording files, thereby reducing the consumption of storage and computing resources of the server.
[0130] First, a communication system provided by embodiments of the present application is introduced, which can be used to process user data.
[0131] Exemplarily,FIG. 1 A user behavior data processing system 10 provided by an embodiment of the present application is shown. As shown, the user behavior data processing system 10 can include a server 100, an electronic device 210, and an electronic device 220. The electronic device 210 and the electronic device 220 of the present application can implement the electronic device 200. FIG. 1
[0132] The electronic device 210 and the electronic device 220 can be a mobile phone, a tablet computer, a desktop computer, a laptop computer, a handheld computer, a notebook computer, an ultra-mobile personal computer (UMPC), a netbook, a personal digital assistant (PDA), an augmented reality (AR) \ virtual reality (VR) device, and the like. The specific type of the electronic device 200 is not limited in the embodiments of the present application.
[0133] The electronic device 210 can be used by a user, and an application program can be run on the electronic device 210. The number of the electronic device 210 can be one or more.
[0134] The electronic device 220 can be used by a developer of the application program, and a user behavior playback system of the application program can be run on the electronic device 220. The user behavior playback system of the application program can be used to input the recording rule (including the recording mode and the recording condition) of the application program set by the developer, and to select and play the recording file.
[0135] As shown, the electronic device 210 and the server 100 can establish a communication connection through a 2G network, a 3G network, a 4G network, a 5G network, a wireless local area network (WLAN), and the like, and the electronic device 220 and the server 100 can also establish a communication connection. After the server 100 completes the communication connection, the server 100 can perform data transmission with the electronic device 210 and the electronic device 220. FIG. 1
[0136] The server 100 can receive the user historical behavior data sent by the electronic device 210 and the recording mode and the recording condition of the application program sent by the electronic device 220, and can calculate the probability of sending a target behavior according to the user historical behavior data, and compare the probability range of the target behavior in the recording rule.
[0137] The server 100 can also determine the user corresponding to the electronic device 210 whose probability is within the probability range of the above-mentioned screen recording rule as a screen recording user list.
[0138] The server 100 can also determine whether the electronic device 210 performs screen recording, and receive a screen recording file generated by the electronic device 210. The server 100 can also send the screen recording file to the electronic device 220.
[0139] In a possible implementation, the server 100 can also send the screen recording mode to the electronic device 210 corresponding to the screen recording mode.
[0140] The electronic device 210 can collect user historical behavior data of running the first application. The electronic device 210 can be configured to send the above-mentioned user historical behavior data to the server 100. The electronic device 210 can also send query information of whether to perform screen recording to the server 100 when the application is running and the user behavior data of running the application is collected, and can also perform screen recording according to the decision information sent by the server 100.
[0141] In a possible implementation, the electronic device 210 can receive the screen recording mode sent by the server 100 that meets the screen recording rule of the electronic device 210, and can also determine whether to perform screen recording.
[0142] The electronic device 220 can obtain the screen recording condition and the screen recording mode of the application, and can also send a message for querying the screen recording file to the server 100 in response to the query operation input by the developer, and receive the screen recording file sent by the server 100 and play the screen recording file.
[0143] In a possible implementation, the server 100 and the electronic device 220 can constitute an integral whole, that is, for example, the device constituted by the server 100 and the electronic device 220 can have the function of receiving the historical behavior data of the user using the application sent by the electronic device 210 and performing analysis and processing on the data. This is not limited.
[0144] In order to more clearly introduce the method provided by the embodiments of the present application, the electronic device 200 provided by the embodiments of the present application is introduced below.
[0145] Reference FIG. 2A , FIG. 2A The structural schematic diagram of the electronic device 200 provided by the embodiments of the present application.
[0146] The electronic device 200 can be a device carrying The electronic device 200 can be a smartphone, a tablet, a desktop computer, a laptop computer, a handheld computer, a notebook computer, an ultra-mobile personal computer (UMPC), a netbook, a cellular phone, a personal digital assistant (PDA), an augmented reality (AR) device, a virtual reality (VR) device, an artificial intelligence (AI) device, a wearable device, a vehicle, a vehicle head unit, a smart home device, and / or a smart city device, or other portable electronic devices operating on other operating systems.
[0147] Without being limited thereto, the electronic device 200 can also include a laptop having a touch-sensitive surface or a touch panel, a desktop computer having a touch-sensitive surface or a touch panel, and the like.
[0148] The embodiments of the present application do not make special restrictions on the specific type of the electronic device.
[0149] The electronic device 200 can include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, a sensor module 180, a key 190, a motor 191, an indicator 192, a camera 193, a display 194, and a subscriber identification module (SIM) card interface 195, and the like.
[0150] The sensor module 180 can include a pressure sensor 180A, a gyro sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, and the like.
[0151] It can be understood that the structural schematic of the embodiments of the present application does not constitute a specific limitation on the electronic device 200. In other embodiments of the present application, the electronic device 200 can include more or fewer components than shown, or combine certain components, or split certain components, or different arrangement of components. The components shown can be implemented in hardware, software, or a combination of software and hardware.
[0152] The processor 110 can include one or more processing units. For example, the processor 110 can include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Different processing units can be independent devices or integrated in one or more processors.
[0153] The processor 110 can also be provided with a memory for storing instructions and data.
[0154] In some embodiments, the memory in the processor 110 is a cache memory. The memory can hold instructions or data that the processor 110 has just used or is recycling. If the processor 110 needs to use the instructions or data again, it can be directly called from the memory, avoiding repeated access and reducing the waiting time of the processor 110, thus improving the efficiency of the system.
[0155] In some embodiments, the processor 110 can include one or more interfaces. The interfaces can include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.
[0156] The I2C interface is a bidirectional synchronous serial bus, including a serial data line (SDA) and a serial clock line (SCL).
[0157] In some embodiments, the processor 110 can include multiple sets of I2C buses. The processor 110 can be coupled to the touch sensor 180K, the charger, the flash, the camera 193, etc. through different I2C bus interfaces, respectively.
[0158] For example, the processor 110 can be coupled to the touch sensor 180K through an I2C interface, so that the processor 110 and the touch sensor 180K communicate through the I2C bus interface, realizing the touch function of the electronic device 200.
[0159] The I2S interface can be used for audio communication.
[0160] In some embodiments, the processor 110 can include multiple sets of I2S buses. The processor 110 can be coupled to the audio module 170 through the I2S bus, realizing the communication between the processor 110 and the audio module 170.
[0161] In some embodiments, the audio module 170 can deliver audio signals to the wireless communication module 160 through the I2S interface, realizing the function of answering the phone through the Bluetooth headset.
[0162] The PCM interface can also be used for audio communication, sampling, quantizing and encoding analog signals.
[0163] In some embodiments, the audio module 170 and the wireless communication module 160 can be coupled through a PCM bus interface.
[0164] In some embodiments, the audio module 170 can also deliver audio signals to the wireless communication module 160 through the PCM interface, realizing the function of answering a phone call through a Bluetooth headset. Both the I2S interface and the PCM interface can be used for audio communication.
[0165] The UART interface is a universal serial data bus used for asynchronous communication. The bus can be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication.
[0166] In some embodiments, the UART interface is usually used to connect the processor 110 and the wireless communication module 160.
[0167] For example, the processor 110 communicates with the Bluetooth module in the wireless communication module 160 through the UART interface, realizing the Bluetooth function. In some embodiments, the audio module 170 can deliver audio signals to the wireless communication module 160 through the UART interface, realizing the function of playing music through a Bluetooth headset.
[0168] The MIPI interface can be used to connect the processor 110 and peripheral devices such as the display screen 194 and the camera 193. The MIPI interface includes the camera serial interface (CSI), the display serial interface (DSI), etc.
[0169] In some embodiments, the processor 110 and the camera 193 communicate through the CSI interface, realizing the shooting function of the electronic device 200. The processor 110 and the display screen 194 communicate through the DSI interface, realizing the display function of the electronic device 200.
[0170] The GPIO interface can be configured through software. The GPIO interface can be configured as a control signal or as a data signal.
[0171] In some embodiments, the GPIO interface can be used to connect the processor 110 and the camera 193, the display screen 194, the wireless communication module 160, the audio module 170, the sensor module 180, etc. The GPIO interface can also be configured as an I2C interface, an I2S interface, a UART interface, a MIPI interface, etc.
[0172] The USB interface 130 is an interface that meets the USB standard specification, which can be a Mini USB interface, a Micro USB interface, a USB Type C interface, etc.
[0173] It can be understood that the interface connection relationship between the modules shown in the embodiments of the present application is only illustrative and does not constitute a limitation on the structure of the electronic device 200.
[0174] In some other embodiments of the present application, the electronic device 200 can also use different interface connection modes or a combination of multiple interface connection modes in the above embodiments.
[0175] The charging management module 140 is configured to receive a charging input from a charger.
[0176] The power management module 141 is configured to connect the battery 142 and the charging management module 140 and the processor 110.
[0177] The wireless communication function of the electronic device 200 can be realized by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor, etc.
[0178] The antenna 1 and the antenna 2 are configured to transmit and receive electromagnetic wave signals.
[0179] The mobile communication module 150 can provide a solution for wireless communication including 2G / 3G / 4G / 5G, etc. applied to the electronic device 200.
[0180] The mobile communication module 150 can include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc.
[0181] The modem processor can include a modulator and a demodulator.
[0182] The wireless communication module 160 can provide a solution for wireless communication including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) network), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR) technology, etc. applied to the electronic device 200.
[0183] In some embodiments, the antenna 1 and the mobile communication module 150 of the electronic device 200 are coupled, and the antenna 2 and the wireless communication module 160 are coupled, so that the electronic device 200 can communicate with the network and other devices through the wireless communication technology.
[0184] The wireless communication technologies can include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technologies, etc. The GNSS can include global positioning system (GPS), global navigation satellite system (GLONASS), beidou navigation satellite system (BDS), quasi-zenith satellite system (QZSS), and / or satellite based augmentation systems (SBAS).
[0185] The electronic device 200 implements a display function through a GPU, a display 194, and an application processor, etc.
[0186] The GPU is a microprocessor for image processing, and is connected to the display 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 can include one or more GPUs that execute program instructions to generate or change display information.
[0187] The display 194 is used to display images, videos, etc. The display 194 includes a display panel.
[0188] The display panel can adopt a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light emitting diode (AMOLED), a flex light-emitting diode (FLED), a Miniled, a MicroLed, a Micro-oLed, a quantum dot light emitting diodes (QLED), or the like.
[0189] In some embodiments, the electronic device 200 can include one or N display screens 194, N being a positive integer greater than 1.
[0190] The electronic device 200 can implement the photographing function through the ISP, the camera 193, the video codec, the GPU, the display screen 194, and the application processor, etc.
[0191] The ISP is used to process the data fed back by the camera 193. The camera 193 is used to capture a still image or a video.
[0192] The digital signal processor is used to process digital signals, which can process not only digital image signals but also other digital signals. For example, when the electronic device 200 selects a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy, etc.
[0193] The video codec is used to compress or decompress digital videos. The electronic device 200 can support one or more video codecs. In this way, the electronic device 200 can play or record videos in multiple encoding formats, such as moving picture experts group (MPEG) 1, MPEG 2, MPEG 3, MPEG 4, etc.
[0194] The NPU is a neural-network (NN) calculation processor, which is used to quickly process input information by referring to the structure of a biological neural network, such as the transmission mode between human brain neurons, and can also constantly self-learn. Through the NPU, the electronic device 200 can implement intelligent cognition applications, such as image recognition, face recognition, voice recognition, text understanding, etc.
[0195] The internal memory 121 can include one or more random access memories (RAMs) and one or more non-volatile memories (NVMs).
[0196] The random access memory can include static random-access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM, for example, the fifth generation of DDR SDRAM is generally referred to as DDR5 SDRAM), etc.; the non-volatile memory can include disk storage devices, flash memories.
[0197] The flash memory can include NOR FLASH, NAND FLASH, 3D NAND FLASH, etc. according to the operation principle, and can include single-level cell (SLC), multi-level cell (MLC), triple-level cell (TLC), quad-level cell (QLC), etc. according to the storage unit potential order, and can include universal flash storage (English: UFS), embedded multi media Card (eMMC), etc. according to the storage specification.
[0198] The random access memory can be directly read and written by the processor 110, and can be used to store executable programs (for example, machine instructions) of an operating system or other programs running, and can also be used to store data of users and application programs, etc.
[0199] The non-volatile memory can also store executable programs and store data of users and application programs, etc., and can be loaded into the random access memory in advance for direct reading and writing by the processor 110.
[0200] The external memory interface 120 can be used to connect an external nonvolatile memory to extend the storage capacity of the electronic device 200. The external nonvolatile memory communicates with the processor 110 through the external memory interface 120 to perform a data storage function. For example, files such as music, video, etc. are saved in the external nonvolatile memory.
[0201] The electronic device 200 can implement an audio function through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the earphone interface 170D, and the application processor, etc. For example, music playback, recording, etc.
[0202] The audio module 170 is used to convert digital audio information into an analog audio signal output, and also used to convert an analog audio input into a digital audio signal.
[0203] The speaker 170A, also called "loudspeaker", is used to convert an audio electrical signal into a sound signal.
[0204] The receiver 170B, also called "earpiece", is used to convert an audio electrical signal into a sound signal.
[0205] The microphone 170C, also called "microphone", "sound transducer", is used to convert a sound signal into an electrical signal.
[0206] The earphone interface 170D is used to connect a wired earphone.
[0207] The pressure sensor 180A is used to sense a pressure signal, and can convert the pressure signal into an electrical signal.
[0208] In some embodiments, the pressure sensor 180A can be disposed on the display screen 194. The pressure sensor 180A can be of various types, such as a resistive pressure sensor, an inductive pressure sensor, a capacitive pressure sensor, etc. The capacitive pressure sensor can include at least two parallel plates of conductive material.
[0209] When a force is applied to the pressure sensor 180A, the capacitance between the electrodes changes. The electronic device 200 determines the intensity of the pressure according to the change in capacitance. When a touch operation is applied to the display screen 194, the electronic device 200 detects the intensity of the touch operation according to the pressure sensor 180A. The electronic device 200 can also calculate the position of the touch according to the detection signal of the pressure sensor 180A.
[0210] In some embodiments, touch operations applied to the same touch location but with different touch intensity can correspond to different operation commands. For example, when a touch operation with an intensity less than a first pressure threshold is applied to the SMS application icon, a command to view an SMS message is executed. When a touch operation with an intensity greater than or equal to the first pressure threshold is applied to the SMS application icon, a command to create a new SMS message is executed.
[0211] The gyroscope sensor 180B can be used to determine the motion attitude of electronic device 200.
[0212] The 180C barometric pressure sensor is used to measure barometric pressure.
[0213] The magnetic sensor 180D includes a Hall sensor.
[0214] The accelerometer 180E can detect the magnitude of acceleration of electronic device 200 in various directions (generally three axes).
[0215] Distance sensor 180F is used to measure distance.
[0216] The proximity light sensor 180G may include, for example, a light-emitting diode (LED) and a light detector, such as a photodiode.
[0217] The 180L ambient light sensor is used to detect ambient light intensity.
[0218] The fingerprint sensor 180H is used to collect fingerprints.
[0219] The 180J temperature sensor is used to detect temperature.
[0220] The 180K touch sensor is also known as a "touch device".
[0221] The bone conduction sensor 180M can acquire vibration signals.
[0222] Button 190 includes the power button, volume buttons, etc.
[0223] Motor 191 can generate vibration alerts.
[0224] Indicator 192 can be an indicator light, used to indicate charging status, power changes, or to indicate messages, missed calls, notifications, etc.
[0225] The SIM card interface 195 is used to connect the SIM card.
[0226] When the electronic device 210 of this application is implemented as FIG. 2A When the electronic device 200 is shown, the processor 110 can be used to collect user history behavior data of the user using the first application, and can also be used for screen recording.
[0227] The communication module (which can include the wireless communication module 160 and the mobile communication module 150) can be used to send the user history behavior data and the query information to the server 100, and can also receive the feedback query message related decision information sent by the server 100.
[0228] In a possible implementation, the communication module can include the wireless communication module 160 and the mobile communication module 150, and can also receive the screen recording rule list sent by the server 100.
[0229] The internal storage 121 can be used to store the screen recording rule list described above.
[0230] The electronic device 220 of the present application is implemented as FIG. 2A When the electronic device 200 shown in the figure is implemented, the processor 110 can be used to set the screen recording rule (including the screen recording condition and the screen recording mode) in response to the operation of the developer, and can also pause, fast forward, play another screen recording file, and the like on the played screen recording file.
[0231] The communication module (which can include the wireless communication module 160 and the mobile communication module 150) can be used to send the screen recording rule (including the screen recording condition and the screen recording mode) set by the developer to the server 100, and can also be used to receive the screen recording file sent by the server 100.
[0232] The display screen 194 can be used to play the screen recording file.
[0233] The software system of the electronic device 200 can adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture.
[0234] The present application embodiment takes the Android system with a layered architecture as an example to illustrate the software structure of the electronic device 200.
[0235] FIG. 2B is the software structure block diagram of the electronic device 200 of the present application embodiment.
[0236] The layered architecture divides the software into several layers, and each layer has a clear role and division of labor.
[0237] The layers communicate with each other through software interfaces.
[0238] In some embodiments, the Android system is divided into four layers, from top to bottom, the application layer, the application framework layer, the Android runtime and the system library, and the kernel layer.
[0239] The application layer can include a series of application packages.
[0240] like FIG. 2B As shown, the application package may include applications such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, and SMS.
[0241] The application framework layer provides application programming interfaces (APIs) and a programming framework for applications in the application layer. The application framework layer includes some predefined functions.
[0242] like FIG. 2B As shown, the application framework layer may include a window manager, content provider, view system, phone manager, resource manager, notification manager, etc.
[0243] The window manager is used to manage window applications. It can obtain the screen size, determine if a status bar is present, lock the screen, and capture screenshots, among other things.
[0244] Content providers store and retrieve data, making that data accessible to applications. This data may include videos, images, audio, made and received phone calls, browsing history and bookmarks, phone books, etc.
[0245] A view system includes visual controls, such as controls that display text and controls that display images.
[0246] View systems can be used to build applications. A display interface can consist of one or more views.
[0247] For example, a display interface that includes a text notification icon may include a view that displays text and a view that displays an image.
[0248] The phone manager is used to provide communication functions for electronic devices 200. For example, it manages call status (including connection and disconnection).
[0249] The file explorer provides applications with various resources, such as localized strings, icons, images, layout files, video files, and more.
[0250] The notification manager allows applications to display notifications in the status bar. These notifications can be used to deliver informational messages and can disappear automatically after a short pause, requiring no user interaction. For example, the notification manager can be used to notify users of completed downloads or message alerts. The notification manager can also display notifications as icons or scrolling text in the top status bar, such as notifications from background applications, or as dialog boxes on the screen. Examples include displaying text messages in the status bar, emitting sounds, vibrating electronic devices, and flashing indicator lights.
[0251] The Android Runtime consists of core libraries and a virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.
[0252] The core library consists of two parts: one part is the functionalities that need to be called by the Java language, and the other part is the Android core library.
[0253] The application layer and application framework layer run in a virtual machine. The virtual machine executes the Java files of the application layer and application framework layer as binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection.
[0254] System libraries can include multiple functional modules. For example: surface manager, media libraries, 3D graphics processing libraries (e.g., OpenGL ES), 2D graphics engines (e.g., SGL), etc.
[0255] The Surface Manager is used to manage the display subsystem and provides the blending of 2D and 3D layers for multiple applications.
[0256] The media library supports playback and recording of various commonly used audio and video formats, as well as still image files.
[0257] The media library supports a variety of audio and video encoding formats, such as MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
[0258] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.
[0259] A 2D graphics engine is a graphics engine for 2D drawing.
[0260] The kernel layer is the layer between hardware and software. The kernel layer contains at least the display driver, camera driver, audio driver, and sensor driver.
[0261] refer to FIG. 2C , FIG. 2C This is a schematic diagram of the structure of the server 100 provided in an embodiment of this application.
[0262] like FIG. 2C As shown, server 100 may include: one or more processors 201, memory 202, communication interface 203, transmitter 205, receiver 206, coupler 207, and antenna 208. These components can be connected via bus 204 or other means. FIG. 2C This example uses a bus connection. Specifically:
[0263] In the embodiments of the present application, the processor 201 can be configured to read and execute computer readable instructions.
[0264] Specifically, the processor 201 can be configured to invoke a program stored in the memory 202, for example, an implementation program of the present application for predicting the probability of the target behavior of each user using the application program in the server 100, and execute the instructions contained in the program. The processor 201 can also be configured to determine whether to perform screen recording according to the query information of the electronic device 210.
[0265] The memory 202 is coupled to the processor 201 and configured to store various software programs and / or a plurality of sets of instructions.
[0266] Specifically, the memory 202 can include a high-speed random access memory, and can also include a non-volatile memory, for example, one or more disk storage devices, flash devices or other non-volatile solid-state storage devices.
[0267] The memory 202 can store user historical behavior data, a list of users who can be screened, and a list of screen recording rules, and the like information sent by the electronic device 210.
[0268] The memory 202 can store an operating system (hereinafter referred to as system), for example, an embedded operating system such as uCOS, VxWorks, RTLinux, etc.
[0269] The memory 202 can also store a network communication program, which can be configured to communicate with the electronic device 210 and the electronic device 220.
[0270] The communication interface 203 can be configured to enable the server 100 to communicate with other communication devices, for example, the electronic device 210, the electronic device 220, etc.
[0271] Specifically, the communication interface 203 can be a 3G communication interface, a long term evolution (LTE) (4G) communication interface, a 5G communication interface, a WLAN communication interface, a WAN communication interface, etc. Without being limited to a wireless communication interface, the server 100 can also be configured with a wired communication interface 203 to support wired communication.
[0272] The transmitter 205 and the receiver 206 can be regarded as a wireless modem.
[0273] The transmitter 205 can be configured to perform transmitting processing on the signal output by the processor 201. The receiver 206 can be configured to receive a signal.
[0274] In the server 100, the number of the transmitter 205 and the receiver 206 can be one or more.
[0275] The antenna 208 can be used to convert electromagnetic energy in a transmission line into electromagnetic waves in free space, or vice versa.
[0276] The coupler 207 can be used to divide the mobile communication signal into multiple paths and distribute to multiple receivers 206. It can be understood that the antenna 208 of the network device can be implemented as a large-scale antenna array.
[0277] In some implementations of the present application, the receiver 206 is configured to receive user historical behavior data and query information from the electronic device 210, and the transmitter 205 is configured to send decision information to the electronic device 210.
[0278] The receiver 206 is further configured to receive the target behavior and screen recording rule set by the developer sent by the electronic device 220, and the transmitter 205 is further configured to send the screen recording file to the electronic device 220.
[0279] It should be noted that, FIG. 2C The server 100 shown is only one implementation of the embodiments of the present application, and in actual applications, the server 100 can further include more or fewer components, which are not limited here.
[0280] Exemplarily, FIG. 3 The software structure schematic diagram of the user behavior data processing system 10 in the embodiments of the present application is shown.
[0281] As FIG. 3 The software architecture based on user behavior playback provided by the embodiments of the present application is divided into three sides.
[0282] Among them, the electronic device 210 can refer to an electronic device carrying a first application used by a user, the server 100 can refer to a server storing first application related data information, and the electronic device 200 can refer to an electronic device carrying a user behavior playback system of the first application used by a developer.
[0283] As FIG. 3 The software architecture of the electronic device 210 includes a behavior collection module 310 and a behavior recording module 320.
[0284] The software architecture of the server 100 includes a behavior data processing module 330, a target prediction module 350, and a recording data processing module 360.
[0285] The software architecture of the electronic device 220 includes a target management module 340 and a behavior playback module 370.
[0286] The behavior collection module 310 can be used to collect the behavior data of the user using the first application (i.e., the user historical behavior data) in the electronic device 210, and send the user historical behavior data to the server 100.
[0287] The user historical behavior data can include all the user operations responded by the electronic device 210 from starting the first application to closing the first application.
[0288] For example, the user's click operation, touch operation, user's voice instruction, gesture instruction, and page information when the above operations or instructions occur, and other user operations or instructions.
[0289] The behavior recording module 320 can be used to inquire whether the server 100 decides to record the screen of the electronic device 210 using the first application at the current time, receive the decision information sent by the server 100, record the screen, and send the video file after recording to the server 100.
[0290] Specifically, when the received decision information contains information that the recording can be started, the behavior recording module starts recording the first application interface operated by the user at the current time of the electronic device 210, and sends the video file after recording to the server 100; when the received decision information contains information that the recording does not need to be started, the behavior recording module does not record the screen.
[0291] The behavior data processing module 330 can be used to receive the user historical behavior data sent by the behavior collection module 310, pre-process the user historical behavior data, and store the user historical behavior data in the server 100.
[0292] The target management module 340 can support the developer to set the target behavior and the screen recording rule, and send the target behavior and the screen recording rule to the server 100, and can also support the developer to input the target behavior to be played back, and send the information related to the user behavior playback selected by the developer to the server 100.
[0293] The target prediction module 350 can be used to calculate the probability of the occurrence of the target behavior in the screen recording rule stored in the target management module, and predict the probability of the occurrence of the target behavior of the user using the first application, and determine the list of users who can record the screen, by using the user historical data sent by the behavior collection module 310 to the server 100.
[0294] Specifically, when the probability of a user engaging in the target behavior using the first application in electronic device 210 is greater than or equal to the probability of engaging the target behavior in the screen recording rules calculated above, the target prediction module can add the user to the list of users who can be screen recorded.
[0295] It is worth noting that if the electronic device 210 records the user's operation behavior that conforms to the screen recording rules when using the first application, then the user's operation behavior before and after the time of the target behavior in the obtained video file has certain research value for developers to analyze the target behavior. Therefore, the user is added to the list of users who can be screen recorded.
[0296] When the probability of a user engaging in the target behavior using the first application on electronic device 210 is less than the probability of engaging the target behavior in the screen recording rules calculated above, the target prediction module will not add the user to the list of users who can be screen recorded.
[0297] The recording data processing module 360 can receive the query information sent by the electronic device 210 regarding whether to record the screen, and determine whether to record the screen based on the list of recordable users obtained in the target prediction module 350 and the screen recording rules stored in the target management module, and send the decision information containing the judgment information to the electronic device 210.
[0298] The recording data processing module 360 can also be used to receive the recorded video file sent by the electronic device 210 and store the video file on the server 100.
[0299] The behavior playback module 370 can receive information selected by the developers of the electronic device 220 for user behavior playback, select screen recording files that meet the user behavior playback conditions, and send the screen recording files to the electronic device 220.
[0300] The conditions for replaying user behavior may include, but are not limited to, the target behavior selected by the developer, the screen recording rules, and the query scope.
[0301] It should be understood that, FIG. 3 The software structure of the processing system 10 shown is merely an example; the processing system 10 may have more advanced features. FIG. 3 The more or fewer modules shown can be combined into two or more modules, or they can be different modules. FIG. 3 The various modules shown can be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application-specific integrated circuits. For example, the data transmission and reception functions of the various modules described above can be implemented independently using a separate communication module.
[0302] A scenario of applying the method of user behavior playback provided in the embodiments of the present application is introduced below. Taking a shopping APP as an example, a scenario of applying the method of user behavior playback by the electronic device 210 is introduced.
[0303] FIG. 4A An exemplary user interface of the electronic device 210 for purchasing a commodity is shown.
[0304] As shown in FIG. 4A , FIG. 4A An exemplary user interface 410 of the shopping APP in the electronic device 210 is shown.
[0305] The user interface 410 can include a scroll display area 411, various circular controls 412, various square areas 413, and a bottom control 414.
[0306] It is worth noting that FIG. 4A The APP to which the method of user behavior playback provided in the embodiments of the present application is applied can also be other types of APPs, which is not limited in the present application.
[0307] The electronic device 210 can receive various operations of the user in the user interface 410 shown in FIG. 4A , with respect to the scroll display area 411, the various circular controls 412, the various square areas 413, and the bottom control 414, and there can be more or less user operations, and the electronic device 210 updates the page information in the APP in response to the user operations, for example, can enter a new interface, can pop up a prompt information, and the like.
[0308] After the electronic device 210 detects the user operation, it is determined whether the state of the shopping APP at the current time meets the screen recording rule. If the screen recording rule is met, the electronic device 210 is screen recorded based on the above screen recording rule, and if the screen recording rule is not met, the user operation is continuously detected and it is determined whether the electronic device 210 meets the screen recording rule at the detection time.
[0309] In one possible implementation, the electronic device 210 can update the user interface 410 to the user interface 420 shown in FIG. 4B , in response to the user pressing the display screen of the electronic device 210 and sliding the content in the updated interface upwards or downwards or left or right, the user interface 420 is a browsing commodity interface, which can show various commodities to the user, containing various square areas 421.
[0310] When the target behavior required to be recorded in the screen recording rule is browsing commodities and the user operation of the electronic device 210 for displaying the user interface 420 meets the screen recording rule, the electronic device 210 can start screen recording from the time when the user interface 420 is displayed.
[0311] In a possible implementation, after the electronic device 210 detects the user operation, the electronic device 210 sends query information to the server 100, and the electronic device 210 can receive the decision information sent by the server 100 to record the screen. FIG. 4C As shown in FIG. 4B, the user interface 430 can display a prompt box 431 for prompting the user whether to allow the electronic device 210 to record the screen.
[0312] For example, the prompt information displayed by the prompt box 431 can be a text “The following screen recording operation is used to provide high-quality services, and your privacy will not be disclosed. Do you want to record the screen?”. The prompt information is not limited to the text information, and can be voice output by the electronic device 210 or other types of prompt information, which is not limited in the embodiments of the present application. The prompt box 431 can also display corresponding controls to allow the user to select whether to allow the electronic device 210 to record the video.
[0313] In response to the touch operation (for example, the click operation) of the user on the control, the electronic device 210 can execute the option of allowing the electronic device 210 to record the video or the option of refusing the electronic device 210 to record the video corresponding to the control. For example, the prompt box 431 can display a “yes” control and a “no” control, and the electronic device 210 can record the screen of the APP according to the screen recording rule in response to the touch operation (for example, the click operation) of the user on the “yes” control.
[0314] The electronic device 210 can also display prompt information when starting the APP or when the user logs in the shopping APP, which is used to remind the user that the electronic device 210 will record the screen once or multiple times during the use of the shopping APP by the user, and receive the recording permission operation or the recording refusal operation of the user, which is not limited to the above-mentioned screen recording prompt information.
[0315] Different from the above-mentioned case that the electronic device 210 displays the prompt box in the user interface when the electronic device 210 detects that the user operation meets the screen recording rule, the electronic device 210 can only display the prompt information when starting the APP or when the user logs in the shopping APP, which can not display the prompt box multiple times in the user interface during the subsequent use of the APP by the user. In this way, the multiple display of the prompt information can be reduced, which is beneficial to improve the user experience.
[0316] In a possible implementation, the electronic device 210 can display the user interface 440 as shown in FIG. 4D in response to the user acting on the square region 421 in the user interface 420 as shown in FIG. 4C. FIG. 4B FIG. 4D
[0317] User interface 440 is used to display specific information about the product. Users can learn about the product's price, style, similar recommendations, and other related information in user interface 440. User interface 440 can display a "Buy Now" control 414, and electronic device 210 can respond to the user's touch operation (e.g., click) on the "Buy Now" control 414 to perform a purchase operation on the product displayed in user interface 440.
[0318] When the target behavior to be recorded in the screen recording rules is purchasing goods and the electronic device 210 receives a touch operation on the "Buy Now" control 414 that meets the screen recording rules, the electronic device 210 can start screen recording from the moment it receives the touch operation on the "Buy Now" control 414.
[0319] The target behaviors to be recorded in the screen recording rules of the user behavior playback method provided in this application are not limited to browsing and purchasing products as shown above, but may also include more or fewer user behaviors, and there is no limitation on this.
[0320] The following describes a scenario in which the user behavior playback method provided in the embodiments of this application is applied. Taking an application user playback system as an example, the scenario in which the user behavior playback method is applied to electronic device 220 is described.
[0321] FIG. 5A An example is shown: the developer interface 501 of the user behavior playback system of electronic device 220.
[0322] like FIG. 5A As shown, the electronic device 220 is equipped with a user behavior playback system, in which the electronic device 220 can respond to the developer's operation to set the target behavior.
[0323] FIG. 5A An exemplary developer interface 501 is shown in electronic device 220 for setting target behavior for a first application.
[0324] The developer interface 501 is used by electronic device 210 to set the target behavior for screen recording based on the developer's expected improvement direction for the first application.
[0325] The developer interface 501 includes a target behavior name input box 502, an associated user behavior selection box 503, a behavior time limit selection box 504, a confirm control 505, and a cancel control 506.
[0326] The developer interface 501 may also include more or fewer controls, checkboxes, and input fields, without limitation.
[0327] like FIG. 5AAs shown, the developer interface 501 can display a target behavior name input box 502, which is used by developers to set the target behavior name.
[0328] For example, a developer can enter the text "Payment behavior may occur in the next 7 days" into the target behavior name input box 502, and the electronic device 220 can respond to the input operation and set the name of the target behavior as "Payment behavior may occur in the next 7 days".
[0329] The developer interface 501 can also display a selection box 503 for associated user behavior, which is used by developers to set the user behavior associated with the target behavior.
[0330] For example, a developer can select the "Payment" option for the selection box 503 associated with the user behavior, and the electronic device 220 can set the user behavior associated with the target behavior to "Payment" in response to the selection operation.
[0331] The developer interface 501 can also display a behavior time limit selection box 504, which is used by developers to set the target behavior time limit.
[0332] For example, a developer can select the "7 days" option for the behavior duration selection box 504, and the electronic device 220 can set the target behavior duration to "7 days" in response to this selection. The developer interface 501 can also display corresponding controls so that the developer can choose whether to confirm setting the target behavior.
[0333] In response to a touch operation (e.g., a click operation) performed by a developer on the confirm control 505 or cancel control 506, the electronic device 220 can execute the option corresponding to that control to confirm the target behavior of the electronic device 220 or cancel the target behavior of the electronic device 220.
[0334] For example, the developer interface 501 can display a confirm control 505 and a cancel control 506. If a user touch operation (e.g., a click operation) is detected on the confirm control 505, the electronic device 220 can determine the target behavior.
[0335] FIG. 5B An example is shown: the developer interface 507 of the user behavior playback system of electronic device 220.
[0336] like FIG. 5B As shown, the electronic device 220 is equipped with a user behavior playback system, in which developers can set screen recording rules. FIG. 5BAn example is shown of a developer interface 507 for setting screen recording rules in an electronic device 220.
[0337] The developer interface 507 is used by developers to set screen recording rules based on the expected improvement direction of the first application. The developer interface 507 includes a rule name input box 508, a version number selection box 509, an application type selection box 510, a device model selection box 511, a page name selection box 512, a target behavior selection box 513, a rule satisfaction check box 514, a recording strategy selection box 515, a confirmation control 516, and a cancellation control 517.
[0338] like FIG. 5B As shown, the developer interface 507 can display a rule name input box 508, which is used by developers to set the screen recording rule name.
[0339] For example, a developer can enter the text "Probability of payment behavior in the next 7 days > 0.8" into the rule name input box 508. In response to this input, the electronic device 220 can set the name of the screen recording rule as "Probability of payment behavior in the next 7 days > 0.8".
[0340] The developer interface 507 can display a version number selection box 509, an application type selection box 510, a device model selection box 511, and a page name selection box 512.
[0341] Among them, the version number selection box 509 is used by developers to set the first application version in the screen recording rules, the application type selection box 510 is used by developers to set the operating system of the first application in the screen recording rules, the device model selection box 511 is used by developers to set the device model of the electronic device 210 that carries the first application in the screen recording rules, and the page name selection box 512 is used by developers to set the page of the first application in the screen recording rules.
[0342] For example, a developer can select the "ALL" option for the four selection boxes mentioned above. In response to this selection, the electronic device 220 can make unlimited selections for the version number, application type, device model, and page name in the screen recording rules. The developer interface 507 can display the target behavior selection box 513, which is used by the developer to set the target behavior and probability range value corresponding to the screen recording rules.
[0343] For example, the developer can select "the probability of payment behavior in the next 7 days is greater than 0.8" for the target behavior selection box 513. In response to this input operation, the electronic device 220 can set the target behavior and probability range value corresponding to the screen recording rule to "the probability of payment behavior in the next 7 days is greater than 0.8".
[0344] The developer interface 507 can further display a meet rule check box 514 for the developer to set whether to record a screen when a screen recording rule is met.
[0345] The developer interface 507 can further display a recording strategy selection box 515 for the developer to set a recording duration and an end recording mark in the screen recording rule.
[0346] For example, the developer can select “fixed duration 30s” for the recording strategy selection box 515, and the electronic device 220 can set the recording duration and the end recording mark in the screen recording rule as “fixed duration 30s” in response to the input operation.
[0347] The developer interface 507 can further have corresponding controls, and the electronic device 220 can execute the corresponding control corresponding to the developer’s touch operation (e.g., click operation) on the confirm control 516 or the cancel control 517 to set the options of the screen recording rule or cancel the setting of the screen recording rule.
[0348] FIG. 5C An example of a developer interface 518 of the user behavior playback system of the electronic device 220 is shown.
[0349] As shown in FIG. 18, the electronic device 220 is equipped with a user behavior playback system, in which the electronic device 220 can view a screen recording file in response to the operation of the developer. FIG. 5C
[0350] FIG. 5C An example of a developer interface 518 for viewing a screen recording file in the electronic device 220 is shown.
[0351] The developer interface 518 is used for the electronic device 220 to view a screen recording file based on the direction of the first application expected to be improved by the developer, and the developer interface 518 includes a target behavior name selection box 519, a rule name selection box 520, a query range input box 521, a submit control 522, and a cancel control 523.
[0352] The electronic device 220 can request the server 100 to view the screen recording file stored in the server 100, or the electronic device 220 can request to view the screen recording file stored locally in the electronic device 220 after the server 100 sends the screen recording file to the electronic device 220. In the embodiments of the present application, this is not limited.
[0353] As shown in FIG. 18, the electronic device 220 is equipped with a user behavior playback system, in which the electronic device 220 can view a screen recording file in response to the operation of the developer. FIG. 5C As shown, the developer interface 518 can display a target behavior name selection box 519, which is used by developers to set the target behavior that the screen recording file for user behavior playback should conform to.
[0354] The developer interface 518 can display a rule name selection box 520, which is used by developers to set the screen recording rules that the screen recording files for user behavior playback should conform to.
[0355] For example, developers can select the options "probability of payment behavior in the next 7 days > 0.8" and "probability of payment behavior in the next 7 days < 0.6" for the rule name selection box 520. In response to this operation, the electronic device 220 can set the screen recording rules that the screen recording file for user behavior playback should meet to "probability of payment behavior in the next 7 days > 0.8" or "probability of payment behavior in the next 7 days < 0.6".
[0356] The developer interface 518 can display a query range input box 521, which is used by developers to set the screen recording time range that the screen recording file for user behavior playback should conform to.
[0357] For example, developers can enter "2022-04-01~2022-04-07" into the query range input box 521. In response to this operation, the electronic device 220 can set the screen recording time range that the screen recording file for user behavior playback should conform to as "2022-04-01~2022-04-07".
[0358] The developer interface 518 may also display corresponding controls. In response to a developer's touch operation (e.g., a click operation) on the submit control 522 or cancel control 523, the electronic device 220 can execute the option to confirm or cancel the user behavior playback corresponding to the control.
[0359] FIG. 5D An example is shown: the developer interface 524 of the user behavior playback system of electronic device 220.
[0360] like FIG. 5D As shown, the electronic device 220 is equipped with a user behavior playback system, which allows the electronic device 220 to play back responses to actions performed on... FIG. 5C The screen recording file is extracted from the user's operation of the control 522. FIG. 5D An example is shown: a developer interface 524 for playing screen recording files in an electronic device 220.
[0361] The developer interface 524 is used for the electronic device 220 to play the recording file based on the direction of the expected improvement of the first application by the developer, and the developer interface 518 includes a recording file playing area 525, a fast backward control 526, a fast forward control 527, a pause control 528, and a next control 529.
[0362] As shown in FIG. 5D , the developer interface 524 can display the recording file playing area 525, which is used to play the recording file meeting the user behavior playback condition.
[0363] The developer interface 524 can also display the fast backward control 526, the fast forward control 527, the pause control 528, and the next control 529.
[0364] The fast backward control 526 can be used to fast backward play the played recording file, the fast forward control 527 can be used to fast forward play the played recording file, the pause control 528 is used to pause the played recording file, and the next control 529 can be used to play the next recording file meeting the user behavior playback condition.
[0365] Next, a method of user behavior playback provided in an embodiment of the present application is introduced.
[0366] As shown in FIG. 6 , an exemplary flowchart of the method of user behavior playback is shown. FIG. 6
[0367] S601-S602, phase one: process of formulating target behavior of the first application and recording rule.
[0368] S601, the electronic device 220 acquires the recording rule for the first application, and the recording rule includes: identification of the recording rule, recording condition, and recording manner.
[0369] In an embodiment of the present application, the electronic device 220 can acquire one or more recording rules for the first application. For different applications, there can be the same or different recording rules.
[0370] The identification of the recording rule is used to indicate the corresponding recording rule, which can be the name of the recording rule, or a digital code or other symbolic information. The identification of the recording rule can be generated by the electronic device 220 autonomously.
[0371] The recording condition and the recording manner can be set by the developer through the electronic device 220.
[0372] The screen recording condition can be used to screen the electronic device 210 that can perform screen recording. The electronic device 210 meeting the screen recording condition can perform screen recording during running of the first application.
[0373] The screen recording condition indicates that the probability of the target behavior occurring is within a preset range. The screen recording condition can include the name of the target behavior and the probability range of the target behavior occurring.
[0374] In some embodiments, the screen recording condition can further include any one or more of the following: the version number of the first application, the application type of the first application, and the model of the electronic device.
[0375] The name of the target behavior is used to indicate the corresponding target behavior, so as to facilitate the developer to better understand and distinguish different target behaviors. For example, the target behavior name can be "payment behavior may occur in the next 7 days".
[0376] The target behavior can indicate a single behavior of the electronic device or a behavior of the electronic device occurring within a preset time period.
[0377] For example, the behavior can be set as browsing a commodity, purchasing a commodity, uninstalling an application, payment, etc. The preset time can be a time period set by the developer, which can be set as one day, seven days, one month, etc., and the unit includes but is not limited to hour, day, month, etc.
[0378] For example, referring to FIG. 5, FIG. 5A , FIG. 5A FIG. 5 shows a developer interface 501 displayed for the electronic device 220 to obtain the target behavior of the first application set by the developer. In the target behavior name input box 502, the target behavior name "payment behavior may occur in the next 7 days" is input, indicating that the set target behavior is payment behavior that may occur in the next 7 days.
[0379] The probability range of the target behavior can be set by the developer according to experience data, or adjusted according to subsequent screen recording results after being set in any manner, or can be obtained in other manners. The probability range can include two cases, one being greater than a certain value, and the other being less than a certain value, and the actual value is not limited in the embodiments of the present application.
[0380] If the developer wants to understand the factors leading to the target behavior, the probability range can be set to a small value, for example, a range less than a certain value; if the developer wants to understand the factors leading to the target behavior not occurring, the probability range can be set to a large value, for example, a range greater than a certain value. For example, referring to FIG. 5, FIG. 5A , FIG. 5A The probability range set by the developer in FIG. 5 is greater than 0.8.
[0381] The version number of the first application is used to indicate the version of the first application. The version number of the first application set by the developer can be one or more version numbers, for example, can be set as "ALL" indicating all version numbers, that is, all versions of the first application can meet the screen recording rule. Embodiments of the present application do not limit this.
[0382] The electronic device 220 sets the version number of the first application in the screen recording condition, which can facilitate subsequent targeted screening of screen recording users based on the needs of the developer, and can also reduce screen recording users.
[0383] The application type is used to indicate the operating system. The application type may, for example, include one or more operating systems among "iOS", "Android", "HamonyOS", and the like, and embodiments of the present application do not limit this.
[0384] For example, the application type can be set as "ALL", that is, all operating systems of the first application can meet the screen recording rule. Since there may be partial compatibility problems of the first application under different operating systems.
[0385] For example, the user has feedback on a certain operation behavior of the user in the first application running under the "Android" operating system, and the operation behavior of the first application under the "HamonyOS" operating system does not have the same problem. Therefore, the developer can distinguish the operating system to play back the user behavior.
[0386] Therefore, the electronic device 220 sets the application type in the screen recording condition, which facilitates the developer to selectively play the screen recording file as desired.
[0387] The device model is used to indicate the device model of the electronic device 210, for example, the input device model can be "HuaweiMate40", that is, when the device model of the electronic device 210 is "HuaweiMate 40", the electronic device 210 can perform screen recording when the user uses the first application.
[0388] In addition, other device models can also be input, and embodiments of the present application do not limit this.
[0389] The screen recording mode indicates the process of screen recording of the electronic device 210 meeting the screen recording condition, the scene and the time node of screen recording, the scene (that is, the page information of the first application) and the duration of screen recording, and can also indicate the scene in which screen recording is not performed during the screen recording process. The scene can refer to the page provided by the electronic device 210 running the first application.
[0390] The screen recording mode includes: page information and time node of the screen recording, and / or, page information of which the screen recording is not performed. In some embodiments, the screen recording mode can further include resolution and other content of the screen recording, and the application is not limited to this. The screen recording mode can further include more or less content.
[0391] The page information is used to indicate some pages of the first application.
[0392] For example, the input page information can be "ALL", that is, after the electronic device 210 enters the first application, the screen recording can be performed on all pages of the first application.
[0393] In addition, other page information (for example, home page) can also be input, and the application is not limited to this.
[0394] The time node can be used to indicate when to start screen recording and the duration of screen recording, or to indicate when to start screen recording and when to end screen recording.
[0395] The time node can include "fixed duration", "until exiting the page", and "until exiting the application".
[0396] Among them, "until exiting the page" means that after the electronic device 220 starts recording the screen, when the page indicated by the page information is exited, the recording of the screen is stopped; "until exiting the application" means that the electronic device 220 starts recording the screen, and when the first application is exited, the recording of the screen is stopped.
[0397] In a possible implementation, when the input recording strategy is "until exiting the application", the electronic device 220 can also set a storage period, that is, the electronic device 220 sends the screen recording file obtained in the period to the server 100 every time the electronic device 220 records a period of time.
[0398] For example, referring to FIG. 5B , the developer inputs the screen recording duration in the electronic device 220 as "fixed duration 30S", that is, the duration of the screen recording performed by the electronic device 220 when the current screen recording rule is met is 30s. Not limited to this, the developer can also set to end the screen recording when "until exiting the page" or "until exiting the application".
[0399] S602, the electronic device 220 sends the screen recording rule for the first application to the server 100.
[0400] Since there can be multiple user behaviors expected to be understood by the developer, the screen recording rule sent by the electronic device 220 to the server 100 can also be multiple. The server 100 can receive one or more screen recording rules, and store the one or more screen recording rules.
[0401] S603-S608, phase two: process of screening user list of screen recording.
[0402] S603, the electronic device 210 collects user historical behavior data in running the first application.
[0403] In some embodiments, the first application is installed in the electronic device 210. The electronic device 210 can receive a user operation, and start the first application of the electronic device 210 in response to the user operation.
[0404] The user operation includes but is not limited to: user operation (such as click operation, touch operation, etc.) received by the electronic device 210 on the first application control in the menu interface, user operation (such as pressing operation) received by the side key of the electronic device 210, voice instruction, gesture instruction. In the embodiments of the present application, the manner of starting the first application of the electronic device 210 is not limited.
[0405] The number of times of starting the first application of the electronic device 210 can be one or more.
[0406] In a possible implementation, the electronic device 210 can start to collect user historical behavior data of the user in using the first application from the first time of starting the first application.
[0407] The user historical behavior data can include: user identification, behavior identification, and context information of the behavior, etc.
[0408] Specifically, the user identification can be used to distinguish different users. The user identification can be the account used by the user to log in to the first application in the electronic device 210.
[0409] The behavior identification is used to indicate the operation triggered by the user and executed by the electronic device 210, which can include but is not limited to: starting the first application, registering the account, logging in the account, browsing the page or goods, purchasing the service or goods, uninstalling the application, etc. The embodiments of the present application are not limited in this regard.
[0410] The context information of the behavior can include but is not limited to: basic information of the electronic device used when the behavior occurs (such as: device model, operating system type and version, device specification, etc.), basic information of the first application used when the behavior occurs (such as: first application identification, first application version number, etc.), basic information of the page where the behavior occurs (such as: page identification, basic information of goods or content or service, etc.).
[0411] In the embodiments of the present application, the user historical behavior data can also include more or less content, which is not limited in this regard.
[0412] S604, the plurality of electronic devices 210 send the collected user historical behavior data in running the first application to the server 100.
[0413] The electronic device 210 and the server 100 can establish a communication connection.
[0414] Specifically, the electronic device 210 and the server 100 can establish a wireless connection based on wireless communication technology, or can establish a wired connection based on wired access technology.
[0415] The wireless connection can be a wireless local area network (WLAN) connection, a wireless fidelity (Wi-Fi) connection, a Bluetooth connection, an infrared connection, a near field communication (NFC) connection, ZigBee, and other wireless communication technologies that appear in subsequent development, and other short-distance connection methods.
[0416] In one possible implementation, the electronic device 210 can send the user historical behavior data in running the first application to the server 100 as soon as the user historical behavior data is collected.
[0417] In another possible implementation, the electronic device 210 can also send the user historical behavior data to the server 100 periodically, for example, the electronic device 210 sends the user historical behavior data to the server 100 every certain period of time. In the embodiment of the present application, this is not limited.
[0418] The server 100 receives the user historical behavior data in running the first application collected by the plurality of electronic devices 210, and stores the user historical behavior data in the server.
[0419] In one possible implementation, the server 100 can store all user historical behavior data sent by the plurality of electronic devices 210, or can store user historical behavior data sent by the plurality of electronic devices 210 within a period of time. In the embodiment of the present application, this is not limited.
[0420] S605, the server 100 screens out a list of users who can record the screen according to the user historical behavior data of the plurality of electronic devices 210 and the screen recording conditions of the first application.
[0421] In some implementations, the server 100 can screen out a list of users who can record the screen according to the user historical behavior data received before the time when the screen recording rule for the first application is obtained.
[0422] That is, after the electronic device 220 obtains the screen recording condition, the screen recording user list is fixed.
[0423] Optionally, in some implementations, the server 100 can update the screen recording user list according to the real-time obtained user historical behavior data.
[0424] That is, the screen recording user list can be updated with the use of the first application by each user in the electronic device 210.
[0425] In a possible implementation, the server 100 can calculate the probability that a plurality of users using the first application may trigger the target behavior of the electronic device 210 based on the user historical behavior data collected by the plurality of electronic devices 210, and determine the user whose probability of triggering the target behavior falls within the probability range set by the developer as the screen recording user.
[0426] Optionally, the server 100 can calculate the above-mentioned probability based on machine learning algorithm, and the algorithm for calculating the above-mentioned probability is not limited in the embodiment of the application.
[0427] For example, the server 100 calculates the probability that user A triggers the target behavior 1 of the electronic device 210 as 0.9 and the probability that user A triggers the target behavior 2 as 0.7 based on the user historical behavior data of user A. The server 100 calculates the probability that user B triggers the target behavior 1 of the electronic device 210 as 0.8 and the probability that user B triggers the target behavior 2 as 0.85 based on the user historical behavior data of user B.
[0428] The probability range in the screen recording rule 1 corresponding to the target behavior 1 set by the developer is greater than 0.8, and the probability range in the screen recording rule 2 corresponding to the target behavior 2 set by the developer is greater than 0.8.
[0429] Therefore, according to the above information, the server 100 determines that user A is the screen recording user of the screen recording rule 1, and user B is the screen recording user of the screen recording rule 2. In the embodiment of the application, the server 100 determines the screen recording user in other implementation manners, which is not limited.
[0430] The server 100 can receive a plurality of target behaviors and screen recording rules input by the developer in the electronic device 220, and thus determine the screen recording user list, which can be composed of the user identifier for screen recording and the screen recording rule identifier list meeting the condition of the user identifier.
[0431] In a possible implementation, the screen recording user list can be as shown in Table 1.
[0432] User identifier Screen recording rule identifier User identifier 1 ["rule1", "rule2",...] User identifier 2 ["rule2", "rule3",...] …… ……
[0433] Table 1: Screen recording user list
[0434] In the table, the user identifier can be used to distinguish different users. For example, "user identifier 1" can refer to account A, and "user identifier 2" can refer to account B.
[0435] Optionally, when a user has multiple accounts, the user identifier can also be used to distinguish different users. That is, "user identifier 1" can refer to account A and account B under user 1, and "user identifier 2" can refer to account C and account B under user 2. In the embodiments of the present application, this is not limited.
[0436] The specific information contained in the user identifier can refer to the detailed description of the user identifier described below, and will not be repeated here.
[0437] The screen recording rule identifier can be used to distinguish different screen recording rules.
[0438] For example, "rule1" shown in Table 1 can be used as the screen recording rule identifier of screen recording rule 1, and "rule2" shown in Table 1 can be used as the screen recording rule identifier of screen recording rule 2. As shown in Table 1, the screen recording rule identifier corresponding to user identifier 1 is "rule1" and "rule2". That is, the electronic device 220 with user identifier 1 can perform screen recording when it meets screen recording rule 1 and / or screen recording rule 2. The screen recording rule identifier corresponding to user identifier 2 is "rule2" and "rule3". That is, the electronic device 220 with user identifier 2 can perform screen recording when it meets screen recording rule 2 and / or screen recording rule 3.
[0439] In this way, by calculating the probability that each user may perform the target behavior, the screen recording user can be filtered out, the condition for performing screen recording is further limited, the number of screen recording files that do not meet the angle of interest of the developer can be reduced according to the screen recording user, and the resource occupation of the electronic device 210 can also be reduced.
[0440] Optionally, the screen recording user can also be further filtered according to the version number, application type, and device model in the above screen recording rule.
[0441] For example, the server 100 can also determine the user as a screen recording user when the probability of triggering the target behavior of the electronic device 210 falls within the probability range set by the developer, and the user corresponding to the electronic device 210 with the same version number, application type, and device model set by the developer.
[0442] In the embodiments of the present application, the way of screening the screen recording user list is not limited, and more or fewer ways can also be included.
[0443] S606-S611, phase three: determining whether the electronic device 210 meets the screen recording condition, and performing screen recording to obtain a screen recording file.
[0444] S606, the electronic device 210 runs the first application and collects user behavior data during running of the first application.
[0445] After running, the user can input various user operations (such as click operation, sliding operation, pressing operation, etc.) in the first application based on the user's own needs, and the electronic device 210 can respond to the user operation and perform corresponding behaviors (such as browsing pages, switching pages, and payment, etc.).
[0446] In this process, the electronic device 210 can receive various user operations input by the user, perform corresponding behaviors at the same time, and can obtain context information of the behaviors. The context information of the behaviors can refer to the foregoing description, and will not be repeated here.
[0447] S607, when the electronic device 210 collects the user behavior data, the query information is sent to the server 100.
[0448] When the electronic device 210 obtains that the user performs an operation (such as click operation, sliding operation, etc.) in the first application, or when the electronic device 210 obtains that the context information of the page in the first application changes, the electronic device 210 can send the query information to the server 100.
[0449] The query information is used for the server 100 to determine whether the electronic device 210 can perform screen recording at the current time. The query information can include: user identifier and page information of the first application at the current time.
[0450] In some embodiments, the query information can further include any one or more of the following: device identifier, user identifier, device information, and application information.
[0451] The page information can be used to represent basic information of the page in the first application in the electronic device 210 when the electronic device 210 sends the query information to the server 100.
[0452] For example, the page information can include but is not limited to page identifier, etc., which is not limited in the embodiments of the present application.
[0453] The device identifier can be used to identify the electronic device 210.
[0454] For example, the device identifier can include, but is not limited to, an Open Anonymous Device Identifier (OAID), a Google Advertising Identity Document (GAID), and the like, which are not limited in the embodiments of the present application. It can be understood that the device identifier is unique, and one electronic device has only one device identifier, for example, one electronic device has only one OAID.
[0455] The user identifier can be used to distinguish different users.
[0456] For example, the user identifier can include, but is not limited to, an account Identity Document (ID), an encrypted email, and the like, which are not limited in the embodiments of the present application.
[0457] It can be understood that the user identifier is unique, and one user has only one user identifier, for example, one user has only one account ID.
[0458] The device information can be used to represent the basic information of the electronic device 210.
[0459] For example, the device information can include, but is not limited to, the model of the electronic device, the operating system of the electronic device, and the like, which are not limited in the embodiments of the present application.
[0460] The application information can be used to represent the basic information of the first application.
[0461] For example, the application information can include, but is not limited to, the application identifier of the first application, the application version number of the first application, and the like, which are not limited in the embodiments of the present application.
[0462] S608, the server 100 determines whether the electronic device 210 can perform screen recording at the current time according to the above query information.
[0463] First, the server 100 determines whether there is one or more screen recording rules corresponding to the user identifier in the query information in the screen recording user list determined in S605.
[0464] If there is one or more screen recording rules, the server 100 analyzes the screen recording mode in the corresponding screen recording rule to determine whether the electronic device 210 needs to perform screen recording when displaying the current page.
[0465] If the screen recording mode indicates that the electronic device 210 can record the screen under the current page and the time node of screen recording, it is determined that the electronic device 210 needs to record the screen at the current time; if the screen recording mode indicates that the electronic device 210 does not need to record the screen under the current page, it is determined that the electronic device 210 does not need to record the screen at the current time.
[0466] If the above screen recording rule does not exist, it is determined that the electronic device 210 does not need to record the screen at the current time.
[0467] In some embodiments, if there are multiple screen recording rules corresponding to the user identifier in the query information in the screen recordable user list, and the screen recording modes for the same page information in the multiple screen recording rules conflict, the screen recording mode with the highest priority is selected as the screen recording mode.
[0468] For example, the electronic device 220 is set with two screen recording rules, one of which has a rule name of “probability of payment behavior occurring in the next 7 days > 0.8”, and the execution strategy when the rule is met is to record the behavior; the other has a rule name of “probability of inputting payment password behavior occurring in the next 7 days > 0.8”, and the execution strategy when the rule is met is not to record the behavior. In the case where the electronic device 220 meets the first screen recording rule to record the screen, when the user inputs the payment password, the electronic device 220 meets the above two screen recording rules at the same time, but since the priority of the second screen recording rule is higher than that of the first screen recording rule, the electronic device 220 stops recording the screen; when the user completes the payment password input, the electronic device 220 meets the first screen recording rule to resume recording the screen.
[0469] That is, the screen recording file obtained by the electronic device 220 meeting the above two screen recording rules does not contain the operation behavior of the user inputting the payment password.
[0470] Through the above method of setting the priority of the screen recording mode, the effect of protecting the user's privacy can be achieved.
[0471] In a possible implementation, when user A uses a first application (for example, a shopping type application), the electronic device 210 can learn the user's operation (for example, the operation on the control “add to shopping cart”), and send query information A to the server 100. After receiving the query information A, the server 100 combines the screen recordable user list and the screen recording rule to determine whether the electronic device 210 can record the screen at the current time.
[0472] If the user A meets one or more of the screen recording rules (e.g., the screen recording rule "probability of payment behavior occurring in the next 7 days > 0.8"), the server 100 can determine that the electronic device 210 can perform screen recording according to the met screen recording rule(s) at the current time. If the user A does not meet any of the screen recording rules, the server 100 can determine that the electronic device 210 cannot perform screen recording at the current time.
[0473] In S609, the server 100 sends the decision information to the electronic device 210.
[0474] After determining whether the electronic device 210 can perform screen recording, the server 100 sends the decision information to the electronic device 210.
[0475] The decision information can include the indication information of whether to perform screen recording.
[0476] Whether the electronic device 210 currently performs screen recording can be referred to the description in S608.
[0477] If the electronic device 210 currently needs to perform screen recording, the decision information can further include the identifier of the screen recording rule corresponding to the user identifier, and the time node in the screen recording mode in the screen recording rule.
[0478] In a possible implementation, when the information about whether to perform screen recording in the decision information is that the electronic device 210 cannot perform screen recording, the decision information can not carry the screen recording rule identifier and the screen recording strategy.
[0479] It is worth noting that when the electronic device 210 does not meet the screen recording rule, the decision information can not carry the screen recording rule identifier and the screen recording strategy. When the electronic device 210 meets the screen recording rule and the execution strategy in the screen recording rule is not to perform screen recording, the decision information can carry the screen recording rule identifier and the screen recording strategy.
[0480] In a possible implementation, when the information about whether to perform screen recording in the decision information is that the electronic device 210 can perform screen recording, the decision information carries the screen recording rule identifier and the screen recording strategy.
[0481] The screen recording rule identifier can indicate the screen recording rule met by the electronic device 210 when performing screen recording at the current time.
[0482] The time node can be used to indicate when to start screen recording and the duration of screen recording, or to indicate when to start screen recording and when to end screen recording.
[0483] The time node can include, but is not limited to, "fixed time length", "until exiting the page", and "until exiting the application". Detailed descriptions of the time node can refer to the descriptions of the screen recording rule in S601 above, and will not be repeated here.
[0484] In S610, the electronic device 210 that meets the screen recording condition starts screen recording according to the time node described above, and obtains a screen recording file.
[0485] In a possible implementation, when the decision result received by the electronic device 210 is not to perform screen recording, the electronic device 210 does not perform screen recording, and stage three is repeated until the electronic device 210 exits the first application.
[0486] In a possible implementation, when the decision result received by the electronic device 210 is to perform screen recording, the electronic device 210 performs screen recording. After the electronic device 210 completes screen recording, the screen recording file is saved. Stage three is repeated until the electronic device 210 exits the first application.
[0487] The screen recording file obtained by the electronic device 210 can include, but is not limited to, the following information: screen recording rule identifier, screen recording time, and screen recording content. In some embodiments, the screen recording file can also include a serial number and whether the screen recording is complete.
[0488] The screen recording rule identifier is used to distinguish the screen recording rule to which the screen recording file conforms, so as to be distinguished when the developer plays back later.
[0489] The screen recording time is used to mark the time when the screen recording starts. For example, the recording time can be represented as "2022-04-01 17:40:30".
[0490] The screen recording content is used to represent the specific content of the video obtained by performing screen recording.
[0491] The serial number is optional information in the sent screen recording file.
[0492] In a possible implementation, when the time node in the screen recording rule to which the screen recording file conforms is "until exiting the application", the electronic device 210 can set a reporting period, that is, a part of the screen recording file that has not been recorded is sent to the server 100 every time the screen recording is performed for a period of time, and the part of the screen recording file is numbered.
[0493] The serial number can be used to represent the order of the multiple part screen recording files that constitute the screen recording file when the screen recording is complete.
[0494] For example, first, the electronic device 210 records the screen for a period of time to send a partial recording file 1 to the server 100, then the electronic device 210 records the screen for a period of time to send a partial recording file 2 and a partial recording file 3 in turn, and the recording of the screen ends. The partial recording file 1, the partial recording file 2, and the partial recording file 3 constitute a complete recording file of the recording of the screen.
[0495] The sequence number of the partial recording file 1 is 1, the sequence number of the partial recording file 2 is 2, and the sequence number of the partial recording file 3 is 3. In the embodiments of the present application, the sequence number can also have other naming forms, which are not limited.
[0496] Whether the recording ends is used to mark whether the electronic device 210 completes the recording of the screen according to the time node in the recording rule.
[0497] In a possible implementation, when the time node in the recording rule to which the recording file conforms is “until exiting the application”, the electronic device 210 can set a reporting period, that is, a partial recording file that is not recorded to be ended is sent to the server 100 every time the screen is recorded for a period of time, and the information about whether the recording ends in the partial recording file is not ended recording, and the information about whether the recording ends in the partial recording file can also carry information such as the recorded duration.
[0498] In this way, the target behavior set based on the expectation of the developer and the recording rule can further limit the condition for recording the screen, so that the recording file watched by the developer is more consistent with the angle of attention of the developer, and the number of recording files can also be reduced, thereby reducing the resource consumption of the server 100 and the electronic device 210.
[0499] S611, the electronic device 210 sends the recording file to the server 100.
[0500] The electronic device 210 can set an interval time for uploading the recording file. The electronic device 210 can send the recording file completed by recording the screen to the server at an interval.
[0501] The server 100 receives the recording file sent by the electronic device 210, and stores the recording file in the server 100.
[0502] Since the recording file received by the server 100 can be multiple, and the recording rules to which the multiple recording files conform can also be multiple.
[0503] Therefore, the server 100 can process the received recording file to form a queryable playback list. In a possible implementation, the playback list can be as shown in Table 2.
[0504] Screen recording rule identifier Recording time File storage location rule1 2022-04-01 14:40:30 path1 rule1 2022-04-01 17:40:30 path2 rule2 2022-04-01 17:40:30 path2 …… …… ……
[0505] Table 2 playback list
[0506] Each row shown in Table 2 can represent a screen recording file.
[0507] The screen recording rule identifier shown in Table 2 can represent that the screen recording file is recorded in accordance with a screen recording rule with the screen recording rule identifier, the recording time can represent the time when the electronic device 210 starts recording the screen recording file, and the file storage location can represent the path location where the screen recording file is stored in the server 100.
[0508] For example, the first row shown in Table 2 can represent a screen recording file X. The screen recording rule identifier of the first row shown in Table 2 is “rule1”, which can mean that the screen recording file X is obtained by the electronic device 210 recording the screen in accordance with a screen recording rule with the screen recording rule identifier “rule1”.
[0509] The recording time of the first row shown in Table 2 is “2022-04-01 14:40:30”, which can mean that the screen recording file X is obtained by the electronic device 210 recording the screen at 2:40:30 pm on April 1, 2022.
[0510] The file storage location of the first row shown in Table 2 is “path1”, which can mean that the server 100 stores the screen recording file X in path1.
[0511] Optionally, the information in the playback list is not limited to the screen recording rule identifier, the recording time, and the file storage location shown in Table 2, and can include more or less information, such as a serial number, whether the screen recording is ended, and the like, which are not limited in the embodiments of the present application.
[0512] S612-S614, Stage Four: Process of viewing the screen recording file.
[0513] S612, the electronic device 220 sends a message for querying the screen recording file to the server 100 in response to the query operation input by the developer.
[0514] In some embodiments, the message can be used to query all the screen recording files obtained by the server 100.
[0515] In some embodiments, the query operation input by the developer can be used to select any one or more of the following: target behavior, screen recording rule, and screen recording time range, and the corresponding message can be used to query the screen recording files obtained by the server 100 that meet one or more of the target behavior, the screen recording rule, and the screen recording time range.
[0516] The electronic device 220 responds to the selection operation (e.g., a click operation or a click operation by manipulating a mouse) of the developer for the target behavior, the screen recording rule, and the query range on the user behavior playback system in the electronic device 220 based on the target behavior that the developer expects to know, and sends the related information of the selection operation to the server 100.
[0517] It should be noted that the selection operation of the developer is not limited to the target behavior, the screen recording rule, and the query range, but can also be performed on more or less information, which is not limited in the embodiments of the present application.
[0518] In some embodiments, the target behavior, the screen recording rule, and the query range selected by the developer can be referred to as the conditions set by the developer for user behavior playback.
[0519] The electronic device 220 can respond to the selection operation of the developer for the target behavior.
[0520] For example, if the developer's focus is on the payment behavior of the user in the first application, and the target behavior that the developer expects to perform user behavior playback is the payment behavior, the electronic device 220 can respond to the operation of the developer selecting the target behavior as "payment behavior that may occur in the next seven days".
[0521] Correspondingly, the electronic device 220 can respond to the selection operation of the developer for the screen recording rule.
[0522] For example, there can be multiple screen recording rules (e.g., screen recording rule "payment behavior that may occur in the next seven days probability > 0.8" and screen recording rule "payment behavior that may occur in the next seven days probability < 0.6", etc.) corresponding to the target behavior "payment behavior that may occur in the next seven days", and the developer can select one or more of the multiple screen recording rules corresponding to the target behavior "payment behavior that may occur in the next seven days".
[0523] Optionally, the electronic device 220 can also respond to the operation of the developer selecting the query range.
[0524] For example, if the target behavior selected by the developer is "payment behavior that may occur in the next seven days", the developer can select the corresponding query range (e.g., query range "2022-04-01~2022-04-07").
[0525] After the developer completes the selection operation, the electronic device 220 can send the related information (i.e., the specific content selected by the developer) selected by the developer to the server 100.
[0526] S613, the server 100 sends the corresponding screen recording file to the electronic device 220 according to the message.
[0527] The server 100 receives the target behavior, the screen recording rule, and the query range selected by the developer, selects the screen recording file meeting the related information from the playback list shown in Table 2, and sends the screen recording file to the electronic device 220.
[0528] For example, if the target behavior selected by the developer is “payment behavior that may occur in the next seven days”, the screen recording rule selected is “probability of payment behavior that may occur in the next seven days > 0.8”, and the query range selected is “2022-04-01 to 2022-04-07”, the information selected by the developer can be referred to as related information. Then, the server 100 receives the related information and selects the screen recording file meeting the related information from the playback list.
[0529] In a possible implementation, the server 100 can send all the screen recording files meeting the related information in the playback list to the electronic device 220. The electronic device 220 can play the screen recording files in sequence in response to the operation of the developer on the screen recording files sent by the server 100.
[0530] In another possible implementation, the server 100 can randomly select one screen recording file from all the screen recording files meeting the related information and send the screen recording file to the electronic device 220. In this embodiment of this application, the selection is not limited.
[0531] S614, the electronic device 220 receives the screen recording file sent by the server 100 and plays the screen recording file through the electronic device 220.
[0532] In a possible implementation, the electronic device 220 can receive all the screen recording files meeting the related information sent by the server 100. The electronic device 220 can select the screen recording file that can be used for user behavior playback from the multiple screen recording files, without sending a request to the server 100.
[0533] The screen recording file can be played through the display screen of the electronic device 220.
[0534] Optionally, the electronic device 220 can also perform fast-rewind playing, fast-forward playing, pausing, and playing the next screen recording file on the screen recording file.
[0535] In another possible implementation, the electronic device 220 can receive the randomly selected screen recording file meeting the related information sent by the server 100. The electronic device 220 can play the screen recording file.
[0536] Optionally, the electronic device 220 can also perform fast-rewind playing, fast-forward playing, pausing, playing the next recording file and the like on the recording file.
[0537] It is worth noting that if the electronic device 220 performs the operation of playing the next recording file, the electronic device 220 needs to send the request information to the server 100, and the server 100 randomly selects another recording file from all the recording files that meet the above-mentioned related information. The server 100 sends the another recording file randomly selected again to the electronic device 220. The electronic device 220 plays the another recording file as the next recording file.
[0538] In the method flow as shown in FIG. 6 The server 100 and the electronic device 220 can be combined into one device, and the interaction process between the two can be omitted.
[0539] Optionally, the above S606-S610 can also be replaced by the following steps:
[0540] S615, the plurality of electronic devices 210 run the first application and send a request message to the server 100, the request message is used for the server 100 to select all recording rules that the electronic device 210 can trigger.
[0541] The electronic device 210 can run the APP in response to a user operation, which includes but is not limited to a click operation, a touch operation, a voice instruction, a gesture instruction and the like. When the electronic device 210 starts the APP, the electronic device 210 sends a request information to the server 100.
[0542] The server 100 can select all recording rules that the electronic device 210 can trigger according to the request information. That is, the server 100 selects all recording rules corresponding to the user using the electronic device 210 from the recordable user list shown in Table 1.
[0543] The information carried in the above-mentioned request information can include but is not limited to: device identification, user identification, device information and application information and the like.
[0544] The specific description of the device identification, the user identification, the device information and the application information can refer to the detailed description thereof in the above-mentioned S107, which will not be repeated here.
[0545] S616, the server 100 receives the request information sent by the electronic device 210, determines the recording rule list that the electronic device 210 can trigger recording, and sends the recording rule list to the electronic device 210.
[0546] The server 100 receives the request information sent by the electronic device 210. The information carried in the request information can include, but is not limited to, a device identifier, a user identifier, device information, and application information.
[0547] In a possible implementation, the server 100 can select, from the list of screen recording users, all screen recording rules corresponding to the user identifier according to the user identifier.
[0548] The server 100 can further select, from all screen recording rules corresponding to the selected user identifier, a screen recording rule that matches the device identifier, the device information, and the application information in the request information sent by the electronic device 210.
[0549] That is, the server 100 can select a screen recording rule that matches the request information sent by the electronic device 210, and determine a screen recording rule list for the electronic device 210 to perform screen recording. The screen recording rule list can include a screen recording rule identifier, a rule condition, and a recording strategy.
[0550] In a possible implementation, the screen recording rule list can be as shown in Table 3.
[0551]
[0552] Table 3: Screen recording rule list
[0553] Each row in Table 3 can represent a screen recording rule.
[0554] The screen recording rule identifier in Table 3 can be used to distinguish different screen recording rules, and has a similar function to the screen recording rule name.
[0555] The rule condition can refer to specific conditions (for example, a rule name, a version number, an application type, a device model, a page name, a behavior target, an execution strategy when the rule is met, and the like) input by a developer when setting the screen recording rule.
[0556] The recording strategy can refer to a screen recording mechanism (for example, a recording duration, a duration unit, an end recording flag, and the like) input by the developer when setting the screen recording rule.
[0557] For example, “rule1” can be used as the screen recording rule identifier of the screen recording rule 1. When the screen recording rule identifier is “rule1”, the rule condition corresponding to the screen recording rule identifier “rule1” is “os_name=Android AND device_type=HUAWEI MATE 40 AND page=home”.
[0558] That is, the application type (i.e., the operating system of the APP) in the recording rule 1 set by the developer is "Android", the device model in the recording rule 1 set by the developer is "Huawei Mate 40", and the page name set by the developer is "home".
[0559] When the recording rule identifier is "rule1", the recording policy corresponding to the recording rule identifier "rule1" is "policy=fixed_interval AND interval=30 AND unit=second". That is, the recording policy in the recording rule 1 set by the developer is "fixed time length 30s".
[0560] In S617, the electronic device 210 determines whether the electronic device 210 meets the recording rule when running the first application based on the above recording rule list.
[0561] When the electronic device 210 learns that the user performs an operation (such as a click operation, a sliding operation, etc.), that is, when the electronic device 210 learns that the context information of the APP changes, the electronic device 210 can determine whether to perform recording according to the recording rule list shown in Table 3.
[0562] In a possible implementation, if the electronic device 210 at the current time meets the rule condition in any one or more recording rules shown in Table 3, the electronic device 210 can perform recording according to the recording policy corresponding to the rule condition met by the electronic device 210.
[0563] If the electronic device 210 at the current time does not meet the rule condition in any one of the recording rules shown in Table 3, the electronic device 210 does not perform recording.
[0564] In this way, since the server 100 sends the recording rule list that may trigger recording of the electronic device 210 to the electronic device 210 at one time, the number of interactions between the electronic device 210 and the server 100 is reduced, so that the power and traffic consumption of the electronic device 210 can be reduced.
[0565] In the method for user behavior playback provided in the embodiments of the present application, the target behavior and the recording rule can be set based on the perspective of the developer, so that there are corresponding users meeting the conditions for different target behaviors and recording rules.
[0566] Also, when the user behavior playback is performed, the user who meets the condition can be selected for recording the screen. In this way, not only the user behavior can be restored truly, but also the developer can observe the user behavior and operation more intuitively, and the number of users for recording the video can be effectively reduced, and the storage space and computing resources required for the server 100 to store the recording file can be reduced.
[0567] In the above embodiments, the term "when" can be interpreted as meaning "if" or "after" or "in response to determining" or "in response to detecting" according to the context. Similarly, the phrase "on determining" or "if detecting (the stated condition or event)" can be interpreted as meaning "if determining" or "in response to determining" or "on detecting (the stated condition or event)" or "in response to detecting (the stated condition or event)" according to the context.
[0568] In the above embodiments, all or part of the processes or functions can be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the processes or functions can be implemented in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed by a computer, all or part of the computer program instructions generate the processes or functions according to the embodiments of the present application. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center through wired (such as coaxial cable, optical fiber, digital subscriber line) or wireless (such as infrared, wireless, microwave, etc.) mode. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that includes one or more available media sets. The available medium can be a magnetic medium (for example, floppy disk, hard disk, magnetic tape), an optical medium (for example, DVD), or a semiconductor medium (for example, solid state disk) and the like.
[0569] A person of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiments can be implemented by a computer program to instruct the relevant hardware to complete, and the program can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the above-mentioned embodiments. The aforementioned storage medium includes ROM or random access memory (RAM), magnetic disk or optical disk, and various media that can store program codes.
Claims
1. A method of user behavior playback, the method comprising: The method is applied to a communication system comprising a plurality of first devices and a second device, and the method comprises: The second device acquires a screen recording condition and a screen recording mode for a first application; The second device receives user historical behavior data of the first application running on the plurality of first devices respectively, and determines a screen recordable user list meeting the screen recording condition for the first application according to the user historical behavior data, the screen recordable user list comprising one or more user identifiers, one user identifier corresponding to one first device; The first device receives a first operation acting on the first application, and sends query information to the second device, the query information comprising a first user identifier corresponding to the first device; The second device sends decision information to the first device, wherein, in a case where the screen recordable user list contains the first user identifier, the decision information is used to inform the first device to screen record according to the screen recording mode for the first application, or not to screen record; in a case where the screen recordable user list does not contain the first user identifier, the decision information is used to inform the first device not to screen record; In a case where the decision information is used to inform the first device to screen record, the first device screens records according to the screen recording mode to obtain a screen recording file, and sends the screen recording file to the second device.
2. The method of claim 1, wherein, The method further comprises: The second device plays the screen recording file.
3. The method of claim 1, wherein The screen recording mode for the first application comprises a page identifier of a screen recording page and a corresponding time node; The query information further comprises a first page identifier of a page of the first application displayed by the first device after receiving the first operation; In a case where the screen recordable user list contains the first user identifier, and the page identifier of the screen recording page contains the first page identifier, the decision information comprises the time node corresponding to the first page identifier in the screen recording mode, and the decision information is used to inform the first device to screen record according to the time node included in the decision information.
4. The method of claim 1, wherein The screen recording mode for the first application comprises a page identifier of a screen recording page and a corresponding time node, and a page identifier of a non-screen recording page; The query information further comprises a first page identifier of a page of the first application displayed by the first device after receiving the first operation; In a case where the screen recordable user list contains the first user identifier, the page identifier of the screen recording page in the screen recording mode contains the first page identifier, and the page identifier of the non-screen recording page in the screen recording mode contains the first page identifier, the decision information sent by the second device to the first device is used to inform the first device not to screen record.
5. The method of claim 1, wherein The screen recording condition for the first application comprises a target behavior and a probability range of occurrence of the target behavior. The probability of the first device corresponding to the user identifier in the screen recording user list performing the target behavior is within the probability range of the target behavior in the screen recording condition.
6. The method of any one of claims 1-5, wherein, The screen recording condition for the first application further comprises any one or more of the following: a first version number of the first application, a first application type, a first device model; The query information further comprises any one or more of the following: a version number of the first application in the first device, an application type of the first application in the first device, a device model of the first device; The first device corresponding to the user identifier in the screen recording user list meets any one or more of the following: a version number of the installed first application is the first version number, an application type of the installed first application is the first application type, and a device model of the first device is the first device model.
7. A method of user behavior playback, the method comprising: The method is applied to a first device, and the method comprises: The first device sends user historical behavior data when running a first application to a second device, and the user historical behavior data is used by the second device to determine a screen recording user list meeting a screen recording condition for the first application, the screen recording user list comprising one or more user identifiers, one user identifier corresponding to one first device; The first device receives a first operation acting on the first application, and sends query information to the second device, the query information comprising a first user identifier corresponding to the first device; The first device receives decision information sent by the second device, wherein, in a case where the screen recording user list contains the first user identifier, the decision information is used to inform the first device to screen record in a screen recording manner for the first application, or not to screen record; in a case where the screen recording user list does not contain the first user identifier, the decision information is used to inform the first device not to screen record; In a case where the decision information is used to inform the first device to screen record, the first device screens records in the screen recording manner for the first application, obtains a screen recording file, and sends the screen recording file to the second device.
8. The method of claim 7, wherein, The screen recording manner for the first application comprises a page identifier of a screen recording page, and a corresponding time node; The query information further comprises a first page identifier of a page of the first application displayed by the first device after receiving the first operation; In a case where the screen recording user list contains the first user identifier, and the page identifier of the screen recording page contains the first page identifier, the decision information comprises the time node corresponding to the first page identifier in the screen recording manner, and the decision information is used to inform the first device to screen record according to the time node included in the decision information.
9. The method of claim 7, wherein, The recording mode for the first application comprises a page identifier of a recording page and a corresponding time node; and a page identifier of a non-recording page; The query information further comprises a first page identifier of a page of the first application displayed by the first device after the first operation is received; In a case where the list of recordable users contains the first user identifier, the page identifier of the recording page in the recording mode contains the first page identifier, and the page identifier of the non-recording page in the recording mode contains the first page identifier, the decision information sent by the second device to the first device is used to inform the first device not to record.
10. The method of claim 7, wherein, The recording condition for the first application comprises a target behavior and a probability range of occurrence of the target behavior; The probability of occurrence of the target behavior of the first device corresponding to the user identifier in the list of recordable users is within the probability range of occurrence of the target behavior in the recording condition.
11. The method of any one of claims 7-10, wherein, The recording condition for the first application further comprises any one or more of the following: a first version number of the first application, a first application type, and a first device model; The query information further comprises any one or more of the following: a version number of the first application in the first device, an application type of the first application in the first device, and a device model of the first device; The first device corresponding to the user identifier in the list of recordable users meets any one or more of the following: the version number of the installed first application is the first version number, the application type of the installed first application is the first application type, and the device model of the first device is the first device model.
12. A method of user behavior playback, the method comprising: The method is applied to a second device, and the method comprises: The second device acquires a recording condition and a recording mode for a first application; The second device receives user historical behavior data of a plurality of first devices respectively running the first application, and determines a list of recordable users meeting the recording condition for the first application according to the user historical behavior data, the list of recordable users comprising one or more user identifiers, one user identifier corresponding to one first device; The second device receives query information sent by the first device, the query information comprising a first user identifier corresponding to the first device; The second device sends decision information to the first device, wherein, in a case where the list of recordable users contains the first user identifier, the decision information is used to inform the first device to record according to the recording mode for the first application, or not to record; and in a case where the list of recordable users does not contain the first user identifier, the decision information is used to inform the first device not to record; In a case where the decision information is used to inform the first device to record, the second device receives a recording file obtained by the first device recording according to the recording mode for the first application.
13. The method of claim 12, wherein, The method further includes: The second device plays the screen recording file.
14. The method of claim 12, wherein the screen recording mode for the first application comprises a page identifier of a screen recording page and a corresponding time node. The query information further comprises a first page identifier of a page of the first application displayed by the first device after receiving the first operation. In a case where the screen recording user list comprises the first user identifier and the page identifier of the screen recording page comprises the first page identifier, the decision information comprises the time node corresponding to the first page identifier in the screen recording mode, and the decision information is used to instruct the first device to screen record according to the time node comprised in the decision information.
15. The method of claim 12, wherein the screen recording mode for the first application comprises a page identifier of a screen recording page and a corresponding time node, and a page identifier of a non-screen recording page. The query information further comprises a first page identifier of a page of the first application displayed by the first device after receiving the first operation. In a case where the screen recording user list comprises the first user identifier, the page identifier of the screen recording page in the screen recording mode comprises the first page identifier, and the page identifier of the non-screen recording page in the screen recording mode comprises the first page identifier, the decision information sent by the second device to the first device is used to instruct the first device not to screen record.
16. The method of claim 12, wherein the screen recording condition for the first application comprises a target behavior and a probability range of occurrence of the target behavior. The probability of occurrence of the target behavior of the first device corresponding to the user identifier in the screen recording user list is within the probability range of occurrence of the target behavior in the screen recording condition.
17. The method of any one of claims 12-16, wherein the screen recording condition for the first application further comprises any one or more of the following: a first version number of the first application, a first application type, and a first device model. The query information further comprises any one or more of the following: a version number of the first application in the first device, an application type of the first application in the first device, and a device model of the first device. The first device corresponding to the user identifier in the screen recording user list meets any one or more of the following: the version number of the installed first application is the first version number, the application type of the installed first application is the first application type, and the device model of the first device is the first device model. The method is applied to a communication system comprising a plurality of first devices and a second device, and the method comprises: The second device obtains a screen recording condition and a screen recording mode for a first application. The second device obtains a screen recording condition and a screen recording mode for a first application. 18. A method of user behavior playback, the method comprising: The second device receives a plurality of user historical behavior data of the first device running the first application respectively, and determines a screen recording user list meeting a screen recording condition of the first application according to the user historical behavior data, the screen recording user list comprising one or more user identifiers, one user identifier corresponding to one first device; The second device sends a screen recording mode of the first application to the first device corresponding to the user identifier in the screen recording user list; The first device corresponding to the user identifier in the screen recording user list receives a first operation acting on the first application, and screens or does not screen according to the screen recording mode of the first application; In the case that the first device screens, the first device sends a screen recording file obtained by screening according to the screen recording mode of the first application to the second device.
19. The method of claim 18, wherein, The method further comprises: The second device plays the screen recording file.
20. The method of claim 18, wherein, The screen recording mode of the first application comprises a page identifier of a screen recording page and a corresponding time node; In the case that the page identifier of the screen recording page in the screen recording mode comprises a first page identifier, the first device screens according to the time node corresponding to the first page identifier, the first page identifier being a page identifier of a page of the first application displayed by the first device after receiving the first operation.
21. The method of claim 18, wherein, The screen recording mode of the first application further comprises a page identifier of a screen recording page and a corresponding time node, and a page identifier of a non-screen recording page; In the case that the page identifier of the screen recording page in the screen recording mode comprises a first page identifier and the page identifier of the non-screen recording page in the screen recording mode comprises a first page identifier, the first device does not screen, the first page identifier being a page identifier of a page of the first application displayed by the first device after receiving the first operation.
22. The method of claim 18, wherein, The screen recording condition of the first application comprises a target behavior and a probability range of occurrence of the target behavior; The first device has a probability of occurrence of the target behavior within the probability range of occurrence of the target behavior in the screen recording condition.
23. The method of any one of claims 18-22, wherein, The screen recording condition of the first application further comprises any one or more of a first version number of the first application, a first application type, and a first device model; The first device meets any one or more of the following: a version number of the installed first application is the first version number, an application type of the installed first application is the first application type, and a device model of the first device is the first device model.
24. A method of user behavior playback, the method comprising: The method is applied to a first device, and the method comprises: The first device sends user historical behavior data when running the first application to a second device, the user historical behavior data is used by the second device to determine a screen recording user list meeting a screen recording condition for the first application, the screen recording user list includes one or more user identifiers, one user identifier corresponds to one device; the screen recording user list includes the first device; The first device receives a screen recording mode for the first application sent by the second device; The first device receives a first operation acting on the first application, and screens or does not screen according to the screen recording mode for the first application; In a case that the first device screens, the first device sends a screen recording file obtained by screening according to the screen recording mode for the first application to the second device.
25. The method of claim 24, wherein, the screen recording condition for the first application includes a target behavior and a probability range in which the target behavior occurs; the first device has a probability of the target behavior occurring within the probability range in which the target behavior occurs in the screen recording condition.
26. The method of claim 24 or 25, wherein, the screen recording condition for the first application further includes any one or more of the following: a first version number of the first application, a first application type, a first device model; the first device meets any one or more of the following: a version number of the installed first application is the first version number, an application type of the installed first application is the first application type, and a device model of the first device is the first device model.
27. A method of user behavior playback, the method comprising: The method is applied to a second device, and the method includes: The second device obtains a screen recording condition and a screen recording mode for a first application; The second device receives user historical behavior data of a plurality of first devices respectively running the first application, and determines a screen recording user list meeting the screen recording condition for the first application according to the user historical behavior data, the screen recording user list includes one or more user identifiers, one user identifier corresponds to one first device; The second device sends the screen recording mode for the first application to the first device corresponding to the user identifier in the screen recording user list; In a case that the first device corresponding to the user identifier in the screen recording user list screens, the second device receives a screen recording file obtained by screening according to the screen recording mode for the first application sent by the first device corresponding to the user identifier in the screen recording user list.
28. The method of claim 27, wherein, The method further includes: The second device plays the screen recording file.
29. The method of claim 27, wherein, the screen recording mode for the first application includes a page identifier of a screen recording page and a corresponding time node. In a case where the page identifier of the recording page in the recording mode includes a first page identifier, the first device records a screen according to a time node corresponding to the first page identifier, the first page identifier being a page identifier of a page of the first application displayed by the first device after receiving the first operation.
30. The method of claim 27, wherein, the recording mode for the first application further comprises a page identifier of a recording page and a corresponding time node, and a page identifier of a non-recording page; in a case where the page identifier of the recording page in the recording mode includes a first page identifier and the page identifier of the non-recording page in the recording mode includes the first page identifier, the first device does not record a screen, the first page identifier being a page identifier of a page of the first application displayed by the first device after receiving the first operation.
31. The method of claim 27, wherein, the recording condition for the first application comprises a target behavior and a probability range of occurrence of the target behavior; the first device has a probability of occurrence of the target behavior within the probability range of occurrence of the target behavior in the recording condition.
32. The method of any one of claims 27-31, wherein, the recording condition for the first application further comprises any one or more of the following: a first version number of the first application, a first application type, a first device model; the first device meets any one or more of the following: a version number of the first application installed is the first version number, an application type of the first application installed is the first application type, a device model of the first device is the first device model.
33. An electronic device, comprising: The electronic device comprises a memory for storing a computer program and one or more processors for invoking the computer program, so that the electronic device performs the method of claim 7 or 12 or 24 or 27.
34. A communication system comprising a first device and a second device, the first device being configured to perform the method of claim 7, and the second device being configured to perform the method of claim 12; or the first device being configured to perform the method of claim 24, and the second device being configured to perform the method of claim 27.
35. A computer-readable storage medium comprising instructions, wherein: The instructions, when executed on an electronic device, cause the electronic device to perform the method of any one of claims 7 or 12 or 24 or 27.
Citation Information
Patent Citations
Method for collecting computer and mobile terminal user behavior data through intelligent screen recording
CN110807184A
Screen recording method and device and electronic equipment
CN113031838A