CN106844182B - Method, system and mobile terminal for recording user behavior - Google Patents
Method, system and mobile terminal for recording user behavior Download PDFInfo
- Publication number
- CN106844182B CN106844182B CN201710067957.1A CN201710067957A CN106844182B CN 106844182 B CN106844182 B CN 106844182B CN 201710067957 A CN201710067957 A CN 201710067957A CN 106844182 B CN106844182 B CN 106844182B
- Authority
- CN
- China
- Prior art keywords
- event
- user
- events
- recording
- function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 101
- 230000006399 behavior Effects 0.000 claims abstract description 94
- 230000008569 process Effects 0.000 claims abstract description 20
- 238000011068 loading method Methods 0.000 claims abstract description 18
- 230000006870 function Effects 0.000 claims description 71
- 238000012545 processing Methods 0.000 claims description 19
- 238000005315 distribution function Methods 0.000 claims description 11
- 238000003825 pressing Methods 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 7
- 230000002411 adverse Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012827 research and development Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3438—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Telephone Function (AREA)
Abstract
The embodiment of the invention relates to the technical field of communication and computers, and provides a method and a system for recording user behaviors and a mobile terminal. The method comprises the following steps: when the application is started, hooking a specific system function in the loading process; and responding to user operation, calling a preset function, and recording the user behavior. In the method, all user steps can be accurately and comprehensively recorded by hooking a specific system function in the loading process, responding to the user operation and calling a preset function, and the method has almost no influence on the application program, brings better experience to the user and reduces the complicated work.
Description
Technical Field
The embodiment of the invention relates to the technical field of communication and computers, in particular to a method, a system and a mobile terminal for recording user behaviors.
Background
This section is intended to provide a background or context to the embodiments of the invention that are recited in the claims. The description herein is not admitted to be prior art by inclusion in this section.
At present, both internet products and mobile application products increasingly emphasize user experience, and it is desirable to record behaviors of users when using products, and through obtaining data related to user operations, and through carrying out statistics and analysis on the data related to the user operations, hopefully discovering user usage rules from the data, and combining the rules with product marketing strategies, etc., problems possibly existing in product marketing activities of the users are discovered, and a basis is provided for further correcting or reformulating network marketing strategies.
Taking the mobile terminal as an example, the recorded user behavior data includes a user's dwell time in the application, a user's touch screen operation, a user's key operation, text data input by the user, and the like. For example, user behavior statistics in the mobile-end application may record which page the user jumps to from, which buttons are clicked on the page, several times, and so on. By recording the user behaviors, a large amount of behavior-related data such as browsing habits and using habits of the user on the application and points of interest of the user can be analyzed.
Currently, some techniques for recording user behavior at the mobile end have appeared.
Disclosure of Invention
However, in the prior art, when the mobile terminal records the user behavior data, the application developer often performs the recording, and for each page of the application of the mobile terminal, the developer of the application needs to rewrite the content of the application code, and according to the characteristics of the pages of different applications, the code is inserted at different positions, so as to achieve the purpose of recording the user behavior data. Therefore, a large amount of complicated and repeated codes need to be written, behavior information of a user under different use scenes is recorded, product research and development efficiency is greatly reduced, product research and development cost is increased, in addition, in the practical use process, due to the fact that the codes related to user behaviors are additionally recorded, workload in a mobile terminal system is increased, in some cases, adverse effects such as slowing of the processing speed of the mobile terminal system are possibly caused, user experience is poor, and the complex difficulty of analyzing and mining the user behavior data is increased.
In the prior art, for the record of the user operation, only the touch operations such as clicking and sliding of the user can be recorded, and more comprehensive operation information including text input, mobile phone keys and screen rotation cannot be identified.
In the prior art, the situation of poor user experience caused by increased codes in the application of the mobile terminal is a very annoying process.
For this reason, there is a strong need for an improved method, system and mobile terminal for recording user behavior, so that the user behavior is recorded without affecting the performance of the mobile terminal.
In this context, embodiments of the present invention are intended to provide a method, system and mobile terminal for recording user behavior.
In a first aspect of embodiments of the present invention, there is provided a method for recording user behavior, comprising: when the application is started, hooking a specific system function in the loading process; and responding to user operation, calling a preset function, and recording the user behavior.
In an embodiment of the present invention, based on the foregoing scheme, the information of the event includes: an attribute of the event; and a view controller to which the event belongs.
In another embodiment of the present invention, based on the foregoing solution, the event is classified and identified by the information of the event, and the identification result includes at least one of the following cases: the method comprises the following steps of clicking events, long-pressing events, dragging events, text input events, mobile phone key events, zooming-in events, zooming-out events, page opening and closing events and screen rotation events.
In a further embodiment of the present invention, based on the foregoing scheme, the attributes of the event include at least one of the following: a sender of the event; the name of the event; the time of occurrence of the event; a location of the event; and the type of the event.
In another embodiment of the present invention, based on the foregoing solution, the recording the behavior of the user through the event information and the classification of the event includes: acquiring a user event; judging whether a sender of the user event is a text input type or not according to the attribute of the user event; and if the sender of the user event is the text input type, acquiring the content of the text input as the behavior of the user.
In another embodiment of the present invention, based on the foregoing solution, the obtaining the content of the text input if the sender of the user event is a text input type includes: acquiring a control of a sender of the user event; and acquiring the text input content of the user.
In a further embodiment of the present invention, based on the foregoing scheme, the specific system function includes an event distribution function.
In another embodiment of the present invention, based on the foregoing solution, when the application starts, hooking a specific system function in the loading process includes: and hooking the specific system function through a hooking technology.
In a second aspect of embodiments of the present invention, there is provided a system for recording user behaviour, comprising: the starting module is used for hooking a specific system function in loading processing when the application is started; and the recording module is used for responding to the user operation, calling a preset function and recording the behavior of the user.
In one embodiment of the present invention, based on the foregoing solution, the system includes: a function module for obtaining the predetermined function by adding the classification in the interface controller.
In another embodiment of the present invention, based on the foregoing solution, the recording module includes: the information submodule is used for collecting the information of the event through the predetermined program; the classification submodule is used for classifying and identifying the events according to the information of the events; and the sending submodule is used for recording the user behavior through the information of the event and the classification identification of the event.
In another embodiment of the present invention, based on the foregoing scheme, the sending sub-module includes: the event submodule is used for acquiring a user event; the judging submodule is used for judging whether a sender of the user event is a text input box or not according to the attribute of the user event; and the text submodule is used for acquiring the content in the text input box as the behavior of the user when the sender of the user event is the text input box.
In another embodiment of the present invention, based on the foregoing scheme, the determining sub-module includes: and the control submodule is used for acquiring a control of a sender of the user event.
In a third aspect of embodiments of the present invention, there is provided a mobile terminal, comprising: a processor; a memory storing instructions for the processor to control the method according to the first aspect.
According to the method, the system and the mobile terminal for recording the user behavior, when the application is started, a specific system function is hooked in the loading process; and responding to user operation, calling a predetermined function, and recording the behavior mode of the user. The method can conveniently and quickly record the user behavior, and the content of the application code is not required to be rewritten on each page of the application of the mobile terminal by the application developer, so that the application development time is obviously shortened, adverse effects of low processing speed and the like of the mobile terminal system caused by the fact that the user behavior is recorded by the application are reduced, and better experience is brought to the user.
Drawings
The above and other objects, features and advantages of exemplary embodiments of the present invention will become readily apparent from the following detailed description read in conjunction with the accompanying drawings. Several embodiments of the invention are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which:
FIG. 1 schematically shows a flow diagram of a method for recording user behavior according to an embodiment of the invention;
FIG. 2 schematically shows a flow diagram of a method for recording user behavior according to a further embodiment of the invention;
FIG. 3 schematically shows a flow chart of a method for recording user behavior according to a further embodiment of the invention;
FIG. 4 schematically shows an output result of a method for recording user behavior according to a further embodiment of the invention;
FIG. 5 schematically shows a block diagram of a system for recording user behavior according to an embodiment of the invention;
FIG. 6 schematically shows a block diagram of a system for recording user behavior according to a further embodiment of the invention;
FIG. 7 schematically illustrates a block diagram of a system for recording user behavior according to yet another embodiment of the invention;
FIG. 8 schematically illustrates a schematic diagram of a mobile terminal according to an embodiment of the invention;
in the drawings, the same or corresponding reference numerals indicate the same or corresponding parts.
Detailed Description
The principles and spirit of the present invention will be described with reference to a number of exemplary embodiments. It is understood that these embodiments are given solely for the purpose of enabling those skilled in the art to better understand and to practice the invention, and are not intended to limit the scope of the invention in any way. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
As will be appreciated by one skilled in the art, embodiments of the present invention may be embodied as a system, apparatus, device, method, or computer program product. Accordingly, the present disclosure may be embodied in the form of: entirely hardware, entirely software (including firmware, resident software, micro-code, etc.), or a combination of hardware and software.
According to the embodiment of the invention, a method, a system and a mobile terminal for recording user behaviors are provided.
Moreover, any number of elements in the drawings are by way of example and not by way of limitation, and any nomenclature is used solely for differentiation and not by way of limitation.
The principles and spirit of the present invention are explained in detail below with reference to several representative embodiments of the invention.
Summary of The Invention
The inventor finds that in the prior art, the method for recording the user behavior by the mobile terminal needs to write codes for each application page, so that a large amount of workload is introduced, and the use experience of the user is reduced.
Therefore, the embodiment of the invention provides a method, a system and a mobile terminal for recording user behaviors, wherein when the application is started, a specific system function is hooked in the loading process; and responding to user operation, calling a predetermined function, and recording the behavior mode of the user. The method can conveniently and quickly record the user behavior, and the content of the application code is not required to be rewritten on each page of the application of the mobile terminal by the application developer, so that the application development time is obviously shortened, adverse effects of low processing speed and the like of the mobile terminal system caused by the fact that the user behavior is recorded by the application are reduced, and better experience is brought to the user.
Having described the general principles of the invention, various non-limiting embodiments of the invention are described in detail below.
Application scene overview
Scenarios one, two, three, and four are four exemplary application scenarios that can be applied therein, and it is to be understood that the application scenarios described herein are merely exemplary and are not limiting of the present invention.
In a first scenario, when a user uses a mobile terminal to perform a click operation, the position of the user clicking on a screen and the time length of the click can be obtained, and further the initial position of the click and the ending position of the click can be recorded, and the user behavior is further recorded through the information content.
And in a second scenario, when the user uses the mobile terminal to perform screen rotation operation, the information such as the screen rotation direction, the screen rotation angle, the screen rotation starting and ending time and the like of the user can be acquired, and the user behavior is further recorded according to the information content.
And a third scenario that when the user uses the mobile terminal to perform menu selection operation, the information such as the specific menu control selected by the user, the option content selected by the user in the menu, and other application pages pointed by the option content can be acquired, and the user behavior is recorded through the information content.
And fourthly, when the user uses the mobile terminal to perform text input operation, the content of the text input of the user can be obtained, the content of the text input can comprise English, Chinese and other language characters, punctuation marks, emoticons and the like, and the user behavior is recorded through the information content.
Exemplary method
A method for recording user behavior according to an exemplary embodiment of the invention is described below with reference to fig. 1-4 in connection with application scenarios one, two, three, and four. It should be noted that the above application scenarios are merely illustrated for the convenience of understanding the spirit and principles of the present invention, and the embodiments of the present invention are not limited in this respect. Rather, embodiments of the present invention may be applied to any scenario where applicable.
FIG. 1 schematically shows a flow chart of a method for recording user behavior according to an embodiment of the invention
As shown in fig. 1, in S100, when the application starts, a specific system function is hooked in the loading process. In an embodiment of the present invention, the mobile terminal may, for example, run an iOS system, which is a mobile operating system developed by apple inc. The system was first published by Apple at Macworld's Association of 9.1.2007, originally designed for use by the iPhone, and later subsequently introduced into products such as iPod touch, iPad, and Apple TV. iOS is a Unix-like commercial operating system, like the apple Mac OS X operating system. On an iOS system, a particular system function may be, for example, an event distribution function (sendEvent). Loading method (load): load is one of the Objective-C methods, and is very different from the other methods. load is simply a hook method that is called by Objective-C runtime before the main function call when the entire file is loaded into runtime. load is called whenever a file in which a class (Category) is located is referenced, and no load call is made if a class is not referenced into an item. In Objective-C, Runtime supports separation of method names and method implementation, the method name type of Objective-C is SEL, and the method implementation type is IMP. In Runtime, the IMP corresponding to SEL is dynamically modified, so that the original method can be conveniently hook. Runtime: Objective-C is a runtime language that will defer the decision of code execution from compile and link time to runtime as much as possible. This gives great flexibility in writing code, for example, messages can be forwarded to your intended object, or the implementation of a method can be swapped at will. Method switzling: under normal conditions, the calling time of the system method can not be obtained by knowing when the system method is called but replacing the code implementation of the system method.
Hook (Hook), a platform for message handling mechanisms, on which an application can set a subroutine to monitor certain messages for a given window, and the monitored window can be created by other processes. When a message arrives, it is processed before the target window processing function. The hook mechanism allows an application to intercept a processing message or a specific event. A hook is actually a segment of a program that handles messages and is hooked into the system through a system call. Whenever a particular message is sent, the hook program captures the message before the destination window is reached, i.e. the hook function gets control. In this case, the hook function may process (change) the message, may continue to transfer the message without processing, or may forcibly end the transfer of the message.
In an embodiment of the invention, a particular system function may be hooked in the loading process, for example, by hook (hook) technology. The specific system function includes an event distribution function (sendEvent). In the iOS system, whatever event (screen touch event, window content change operation, etc.) is obtained by the system first, then transmitted to the UIApplication (view controller), and then transmitted to the corresponding object by the sendEvent function of the UIApplication for processing. In this embodiment, for example, by writing a classification of UIApplication and then hook sendEvent function, an event interception function is added to intercept and process user operation behaviors, thereby achieving the purpose of recording user operations.
In S110, in response to a user operation, a predetermined function is called, and the behavior of the user is recorded. In an embodiment of the invention, the mobile terminal may for example run an iOS system on which the predetermined function may be obtained, for example, by adding a classification in the view controller. UIapplication: view controller, UIapplication object is the metaphor of the application program; each application has its own UIapplication object and is singleton; this singleton object can be obtained by UIapplication; a first object created after the iOS program is started is the UIapplication object; with UIapplication objects, some application level operations can be performed. The method to be counted can be written, for example, in category, hook UIViewController of the UIViewController, and then the header file is stuffed into the ViewController to be counted. Category: category can add methods to existing classes without adding a subclass. Furthermore, we can add methods to a class without knowing the internal implementation of the class.
In this embodiment, the behavior of the user is recorded by calling a predetermined function in response to the user. The user operation may be, for example, an operation in which the user starts the application, and may also be, for example, a response operation after the user activates the screen during the background running of the application. The user's behavior is recorded through the predetermined function described above, and may include, for example, a user touch screen event, a user rotation screen event, a user text input event, a user slide event, and the like, but the present invention is not limited thereto.
According to the method for recording the user behavior, when the application is started, a specific system function is hooked in the loading process; and responding to user operation, calling a predetermined function, and recording the behavior mode of the user. The method can conveniently and quickly record the user behavior, and the content of the application code is not required to be rewritten on each page of the application of the mobile terminal by the application developer, so that the application development time is obviously shortened, adverse effects of low processing speed and the like of the mobile terminal system caused by the fact that the user behavior is recorded by the application are reduced, and better experience is brought to the user.
Fig. 2 schematically shows a flow chart of a method for recording user behavior according to an embodiment of the invention. The method shown in fig. 2 can be applied to the embodiment shown in fig. 1.
As shown in fig. 2, in S200, information of an event is collected through the predetermined function. The information of the event includes: an attribute of the event; and a view controller to which the event belongs. Attributes of the event, including at least one of: a sender of the event; the name of the event; the time of occurrence of the event; a location of the event; and the type of the event.
In S210, the event is classified and identified by the information of the event. The event is classified and identified through the information of the event, and the identification result comprises at least one of the following conditions: the method comprises the following steps of clicking events, long-pressing events, dragging events, text input events, mobile phone key events, zooming-in events, zooming-out events, page opening and closing events and screen rotation events. The invention is not limited thereto. In this embodiment, for example, a send event (event distribution function) method in the UIApplication may be hook by using an AOP method, so as to increase the collection of user operation information. Events (events) may be classified, for example, by touch task, startTouch, and endTouch, and corresponding attributes obtained. touch certificate: a sub-function of the event distribution function for recording a function of the touch event transmission. startTouch: a sub-function of the event distribution function for recording the function of the start of a touch event. endTouch: and a sub-function of the event distribution function, which is used for recording the function of the touch event end. AOP: aspect Oriented Programming (AOP for short) is performed in a certain step or stage of the processing process. During operation, code is dynamically switched into a specified method of a class, and the programming idea at a specified position is the section-oriented programming. By means of AOP, the behavior of the existing program can be modified even without modifying a line of code, and the method is very efficient. AOP rationale: a function is replaced with a new function, a code segment is inserted into the new function, and then the original function is executed.
In S220, the behavior of the user is recorded through the information of the event and the classification identification of the event.
According to the method for recording the user behavior, the method records the user operation steps by adopting a sendEvent method in the preset function hook UIapplication through the AOP method, and then continuously executes the sendEvent method, so that the effect of not influencing the original functions of the system can be achieved.
Fig. 3 schematically shows a flow chart of a method for recording user behavior according to an embodiment of the invention. The method shown in fig. 3 can be applied to the embodiment shown in fig. 1.
As shown in fig. 3, the recording the behavior of the user through the event information and the classification of the event includes the following processes:
in S300, a user event is acquired. The user class events may be, for example: the method comprises the following steps of clicking events, long-pressing events, dragging events, text input events, mobile phone key events, zooming-in events, zooming-out events, page opening and closing events and screen rotation events.
In S310, it is determined whether a sender of the user event is a text input type through the attribute of the user event. For example, after the touch event of the user is captured, whether the sender (sender) of the event is a text input type is determined by the attribute of the event, if the sender of the user event is the text input type, step S320 is entered, and if the sender of the user event is not the text input type, other recording is continued.
In S320, if the sender of the user event is a text input type, acquiring the content of the text input as the behavior of the user. May, for example, obtain a control of a sender of the user event; and acquiring the text input content of the user.
FIG. 4 schematically shows an output result of a method for recording user behavior according to a further embodiment of the invention; the method for recording user behavior processes the mobile terminal application, and the output result after processing is shown in fig. 4.
According to the method for recording the user behavior, the user behavior is recorded by responding to the user operation and calling the predetermined function. The recording of user behaviors can be conveniently and quickly realized, the user steps are recorded comprehensively, and the key input of a user is recorded by responding to a key event; the integration is convenient, and the corresponding monitoring method does not need to be manually replaced on each page; the influence is small, and the performance of the application program is hardly influenced after the API is integrated.
Exemplary device
Having described the method of an exemplary embodiment of the present invention, a system for recording user behavior of an exemplary embodiment of the present invention is next illustrated with reference to FIGS. 5-8.
Fig. 5 schematically shows a block diagram of a system for recording user behavior according to an embodiment of the invention. As shown in fig. 5, a system for recording user behavior, comprising:
the start module 400 is used to hook a specific system function during the loading process when an application starts.
The recording module 410 is used for responding to user operation, calling a predetermined function and recording the user behavior.
According to the system for recording the user behavior, the specific system function is hooked in the loading processing through the starting module when the application is started; and the recording module is used for responding to the user operation, calling a preset function and recording the user behavior. The method can conveniently and quickly record the user behavior, and the content of the application code is not required to be rewritten on each page of the application of the mobile terminal by the application developer, so that the application development time is obviously shortened, adverse effects of low processing speed and the like of the mobile terminal system caused by the fact that the user behavior is recorded by the application are reduced, and better experience is brought to the user.
FIG. 6 schematically shows a block diagram of a system for recording user behavior according to a further embodiment of the invention; as shown in fig. 6, a system for recording user behavior, comprising:
the start module 400 functions as described above.
The recording module 410, functions as described above. .
The information sub-module 410A is used to collect information of the event through the predetermined procedure.
The classification sub-module 410B is configured to perform classification identification on the event through the information of the event.
The sending sub-module 410C is configured to record the behavior of the user through the information of the event and the classification identification of the event.
The function module 420 is used to obtain the predetermined function by adding a classification in the interface controller.
FIG. 7 schematically shows a block diagram of an apparatus for recording user behavior according to yet another embodiment of the present invention; as shown in fig. 7, the transmission sub-module 410C of the system for recording user behavior includes:
the event sub-module 410C1 is used to obtain user events.
The judgment sub-module 410C3 is configured to judge whether the sender of the user event is a text input box according to the attribute of the user event.
Wherein the determining sub-module 410C3 includes:
control sub-module 410C31 is used to obtain a control for the sender of the user event.
The text sub-module 410C5 is configured to, when the sender of the user event is a text input box, obtain the content in the text input box as the behavior of the user.
Fig. 8 schematically shows a schematic view of a mobile terminal according to an embodiment of the invention.
The mobile terminal 80 according to this embodiment of the present invention is described below with reference to fig. 8. Fig. 8 schematically shows a block diagram of a mobile terminal according to an embodiment of the present invention, and the mobile terminal 80 is only an example and should not bring any limitation to the functions and the scope of use of the embodiment of the present invention.
As shown in fig. 8, the mobile terminal 80 is embodied in the form of a general purpose computing device. The components of the mobile terminal 80 may include, but are not limited to: the at least one processing unit 801, the at least one memory unit 802, and a bus 803 that couples various system components including the memory unit 802 and the processing unit 801.
The storage unit 802 may include readable media in the form of volatile memory, such as Random Access Memory (RAM)8021 and/or cache memory 8022, and may further include Read Only Memory (ROM) 8023.
The mobile terminal 80 may also communicate with one or more external devices 804 (e.g., keyboard, pointing device, bluetooth device, etc.), with one or more devices capable of interacting with the mobile terminal 80, and/or with any devices with which the mobile terminal 80 may communicate with one or more other computing devices (e.g., router, modem, etc.). Such communication may be through input/output (I/O) interfaces 805. Also, the mobile terminal 80 may communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN) and/or a public network such as the Internet) via the network adapter 806. As shown, the network adapter 806 communicates with the other modules of the mobile terminal 80 via the bus 803. It should be appreciated that although not shown, other hardware and/or software modules may be used in conjunction with the mobile terminal 80, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, among others.
In some possible embodiments, aspects of the present invention may also be implemented in the form of a program product comprising program code for causing a terminal device to perform steps in a method for recording voice notes according to various exemplary embodiments of the present invention described in the "exemplary methods" section above of this specification when the program product is run on the terminal device, for example, the terminal device may perform step S100 as shown in fig. 1, hooking a particular system function in a loading process when an application is started; and S110, responding to the user operation, calling a preset function, and recording the user behavior.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The program product may employ a portable compact disc read only memory (CD-ROM) and include program code, and may be run on a terminal device, such as a personal computer. However, the program product of the present invention is not limited in this regard and, in the present document, a readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A readable signal medium may include a propagated data signal with readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A readable signal medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device over any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., over the internet using an internet service provider).
It should be noted that although in the above detailed description several means or sub-means of the mobile device are mentioned, this division is only not mandatory. Indeed, the features and functions of two or more of the devices described above may be embodied in one device, according to embodiments of the invention. Conversely, the features and functions of one apparatus described above may be further divided into embodiments by a plurality of apparatuses.
Moreover, while the operations of the method of the invention are depicted in the drawings in a particular order, this does not require or imply that the operations must be performed in this particular order, or that all of the illustrated operations must be performed, to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions.
While the spirit and principles of the invention have been described with reference to several particular embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, nor is the division of aspects, which is for convenience only as the features in such aspects may not be combined to benefit. The invention is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.
Claims (10)
1. A method for recording user behavior, comprising:
when an application is started, hooking a specific system function in loading processing, wherein the specific system function comprises an event distribution function;
adding classification categories in a view controller UIView controller in a mode of facing to section programming to obtain a predetermined function, wherein the UIView controller is used for carrying out application level operation, the category is an existing category adding method without adding a subclass, and the predetermined function is an event distribution function; and
responding to user operation, calling the predetermined function, and recording the behavior of the user;
wherein, the responding to the user operation, calling the predetermined function, and recording the user behavior includes:
collecting information of an event through the predetermined function;
classifying and identifying the event through the information of the event, wherein the result of the classification and identification comprises at least one of the following conditions: clicking events, long-time pressing events, dragging events, text input events, mobile phone key events, amplifying events, reducing events, page opening and closing events and screen rotation events;
recording the user behavior through the information of the event and the result of the classification identification of the event;
wherein collecting information of the event through the predetermined function includes: and the method to be counted in the UIViewController is checked through the category, and the header file is plugged into the ViewController to be counted.
2. The method of claim 1, the information of the event comprising:
an attribute of the event; and
the view controller to which the event belongs.
3. The method of claim 2, the attributes of the event comprising at least one of:
a sender of the event;
the name of the event;
the time of occurrence of the event;
a location of the event; and
the type of the event.
4. The method of claim 3, wherein the recording of the user's behavior through the event information and the classification of the event comprises:
acquiring a user event;
judging whether a sender of the user event is a text input type or not according to the attribute of the user event;
and if the sender of the user event is the text input type, acquiring the content of the text input as the behavior of the user.
5. The method of claim 4, wherein if the sender of the user event is a text input type, obtaining the content of the text input comprises:
acquiring a control of a sender of the user event; and
and acquiring the text input content of the user.
6. The method of claim 1, wherein hooking a particular system function in a loading process when the application is started comprises:
and hooking the specific system function through a hooking technology.
7. A system for recording user behavior, comprising:
the system comprises a starting module, a loading module and a processing module, wherein the starting module is used for hooking a specific system function in loading processing when an application is started, and the specific system function comprises an event distribution function;
the function module is used for increasing classification categories in a view controller UIView controller in a mode of facing to section programming to obtain a preset function, wherein the UIView controller is used for carrying out operation at an application level, the category is used for an existing category increasing method, a subclass does not need to be added, and the preset function is an event distribution function; and
the recording module is used for responding to user operation, calling the preset function and recording the behavior of the user;
wherein the recording module comprises:
the information submodule is used for collecting the information of the event through the predetermined function;
the classification submodule is used for performing classification recognition on the event according to the information of the event, and the result of the classification recognition comprises at least one of the following conditions: clicking events, long-time pressing events, dragging events, text input events, mobile phone key events, amplifying events, reducing events, page opening and closing events and screen rotation events; and
the sending submodule is used for recording the user behavior through the information of the event and the classification and identification result of the event;
wherein, the information submodule is specifically configured to: and the method to be counted in the UIViewController is checked through the category, and the header file is plugged into the ViewController to be counted.
8. The system of claim 7, the transmit submodule comprising:
the event submodule is used for acquiring a user event;
the judging submodule is used for judging whether a sender of the user event is a text input box or not according to the attribute of the user event;
and the text submodule is used for acquiring the content in the text input box as the behavior of the user when the sender of the user event is the text input box.
9. The system of claim 8, the decision submodule, comprising:
and the control submodule is used for acquiring a control of a sender of the user event.
10. A mobile terminal, comprising:
a processor;
a memory for storing instructions for storing the instructions,
wherein the instructions, when executed by the processor, perform the method of any of claims 1-6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710067957.1A CN106844182B (en) | 2017-02-07 | 2017-02-07 | Method, system and mobile terminal for recording user behavior |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710067957.1A CN106844182B (en) | 2017-02-07 | 2017-02-07 | Method, system and mobile terminal for recording user behavior |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106844182A CN106844182A (en) | 2017-06-13 |
CN106844182B true CN106844182B (en) | 2021-07-09 |
Family
ID=59121491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710067957.1A Active CN106844182B (en) | 2017-02-07 | 2017-02-07 | Method, system and mobile terminal for recording user behavior |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106844182B (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109522189B (en) * | 2017-09-19 | 2022-06-21 | 北京国双科技有限公司 | Data monitoring method, device and system |
CN109684184A (en) * | 2018-12-26 | 2019-04-26 | 百度在线网络技术(北京)有限公司 | A kind of reproducing method of application operating, device and electronic equipment |
CN111382039A (en) * | 2018-12-28 | 2020-07-07 | 北京微播视界科技有限公司 | Method, device, electronic equipment and storage medium for reporting user behavior event |
CN111310175A (en) * | 2019-12-30 | 2020-06-19 | 上海上讯信息技术股份有限公司 | iOS application safety monitoring and protecting method and device based on plug-in |
CN117455543B (en) * | 2023-12-21 | 2024-04-16 | 中邮消费金融有限公司 | Marketing data monitoring method, device, equipment and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014150341A (en) * | 2013-01-31 | 2014-08-21 | Sharp Corp | Telephone set |
CN105607986A (en) * | 2015-01-06 | 2016-05-25 | 北京志翔科技股份有限公司 | Acquisition method and device of user behavior log data |
CN105956474A (en) * | 2016-05-17 | 2016-09-21 | 武汉虹旭信息技术有限责任公司 | Abnormal behavior detection system of Android platform software |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294116A (en) * | 2015-06-11 | 2017-01-04 | 阿里巴巴集团控股有限公司 | Record and the methods, devices and systems of reproduction process process |
-
2017
- 2017-02-07 CN CN201710067957.1A patent/CN106844182B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014150341A (en) * | 2013-01-31 | 2014-08-21 | Sharp Corp | Telephone set |
CN105607986A (en) * | 2015-01-06 | 2016-05-25 | 北京志翔科技股份有限公司 | Acquisition method and device of user behavior log data |
CN105956474A (en) * | 2016-05-17 | 2016-09-21 | 武汉虹旭信息技术有限责任公司 | Abnormal behavior detection system of Android platform software |
Non-Patent Citations (2)
Title |
---|
[iOS]用户行为分析模块;Gaussli"s;《http://www.gaussli.com/2016/09/08/ios-%E7%94%A8%E6%88%B7%E8%A1%8C%E4%B8%BA%E5%88%86%E6%9E%90%E6%A8%A1%E5%9D%97/》;20160908;第1-8页 * |
NeteaseAPM iOS SDK技术实现;朱志强;《https://mp.weixin.qq.com/s/SNR1-8ZviRMY2HLBowQMNw》;20161226;第1-10页 * |
Also Published As
Publication number | Publication date |
---|---|
CN106844182A (en) | 2017-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106844182B (en) | Method, system and mobile terminal for recording user behavior | |
CN106844181B (en) | Method, system and mobile terminal for recording user behavior | |
CN108958844B (en) | Application program control method and terminal | |
US20150082242A1 (en) | Providing Context Menu Based on Predicted Commands | |
WO2019184490A1 (en) | Method for use in displaying icons of hosted applications, and device and storage medium | |
CN109947635B (en) | Data reporting method, device, storage medium and terminal equipment | |
CN109343926A (en) | Application program image target display methods, device, terminal and storage medium | |
CN111866577B (en) | Screen recording method, electronic device, and computer-readable storage medium | |
CN110647472A (en) | Crash information statistics method, device, computer equipment and storage medium | |
CN108769234A (en) | Using method for down loading, device, storage medium and electronic equipment | |
US10705858B2 (en) | Automatic import of third party analytics | |
CN110045952B (en) | Code calling method and device | |
CN113076233A (en) | IO performance detection method, device, equipment and storage medium | |
CN111338625A (en) | Data processing method, system, terminal equipment and storage medium | |
CN106371706A (en) | Application shortcut location selection method and device | |
CN109408057B (en) | Method, device, medium and computing equipment for automatically generating codes | |
CN114116399B (en) | Monitoring method, device, equipment and medium for third party SDK in application | |
CN111782474A (en) | Log processing method and device, electronic equipment and medium | |
CN108647284B (en) | Method and device for recording user behavior, medium and computing equipment | |
CN113268221B (en) | File matching method, device, storage medium and computer equipment | |
CN110674033B (en) | Method, device, equipment and storage medium for processing code | |
TW201533651A (en) | Method and computer system for splitting a file and merging files via a motion input on a graphical user interface | |
CN112307386A (en) | Information monitoring method, system, electronic device and computer readable storage medium | |
CN113552977A (en) | Data processing method and device, electronic equipment and computer storage medium | |
US10733000B1 (en) | Systems and methods for providing relevant software documentation to users |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |