Mobile application data acquisition and analysis method and system
By collecting and encrypting mobile application data in real time and reporting it to the data visual analysis platform for analysis, the problems of cumbersome data analysis and user information leakage in the existing technology are solved, efficient and secure data analysis is achieved, and corporate costs are reduced.
Patent Information
- Application Number
- CN202411637414.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-15
- Publication Date
- 2025-03-14
AI Technical Summary
The existing technology uses access to a third-party platform for data analysis. The process is cumbersome and inefficient. The data is not encrypted after collection and reporting, which poses the risk of leaking user information, which increases the cost of enterprise expenditure.
Provide a mobile application data acquisition and analysis method and system, which collects various types of mobile application data in real time, performs data processing and encrypted storage, and reports data to the data visual analysis platform according to the reporting strategy, and performs data visual analysis.
It simplifies the data analysis process, improves efficiency, ensures user privacy and security, reduces corporate expenditure costs, and avoids the cumbersome steps of accessing third-party platforms.
Smart Images

Figure CN119621833A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of data collection and analysis, and in particular to a method and system for collecting and analyzing mobile application data. Background Art
[0002] As the demand for enterprise mobile application development continues to grow, enterprises have huge demands for security, scalability, reusability, flexible docking, simple development and unified management in the overall mobile application system. Therefore, a complete set of mobile application data stability monitoring, collection and analysis systems is urgently needed to fully understand the channel customer acquisition effect, analyze user behavior, help enterprises fully tap the data value of user behavior, find the direction of product iteration, and achieve refined operations, thereby comprehensively improving business growth efficiency.
[0003] In existing technical solutions, data analysis is often performed by accessing a third-party platform, which is a cumbersome process that requires collaboration among multiple parties and is inefficient.
[0004] In addition, if encryption measures are not used when data is collected and reported to a third-party service, there will be a risk of user information being leaked and user privacy cannot be guaranteed. In-depth analysis of user behavior data will require payment, increasing corporate expenditure costs. Summary of the invention
[0005] In order to solve the technical problems that traditional existing technologies often access third-party platforms for data analysis, which is cumbersome, requires cooperation among multiple parties, and is inefficient, and when data is collected and reported to third-party services, if encryption measures are not adopted, there is a risk of leaking user information and the privacy of users cannot be guaranteed. When viewing user behavior data in a more in-depth analysis, payment is required, which increases the cost of enterprise expenditure, the present invention provides a mobile application data collection and analysis method and system.
[0006] The technical solution provided by the embodiment of the present invention is as follows:
[0007] First aspect:
[0008] An embodiment of the present invention provides a method for collecting and analyzing mobile application data, comprising:
[0009] S1: Real-time collection of various types of mobile application data;
[0010] S2: Processing the mobile application data;
[0011] S3: According to the reporting strategy, the processed mobile application data is reported to the data visualization analysis platform;
[0012] S4: Performing data visualization analysis on the processed mobile application data through the data visualization analysis platform.
[0013] Second aspect:
[0014] A mobile application data collection and analysis system provided by an embodiment of the present invention includes: a memory and one or more processors;
[0015] One or more application programs are stored in the memory, and the one or more application programs are suitable for being executed by the one or more processors to implement the above-mentioned mobile application data collection and analysis method.
[0016] The beneficial effects brought about by the technical solution provided by the embodiment of the present invention include at least:
[0017] In the present invention, various types of mobile application data are collected in real time, the mobile application data is processed, and the mobile application data is encrypted and stored, thereby avoiding the risk of leaking user information and ensuring user privacy security. The processed mobile application data is reported to the data visualization analysis platform according to the reporting strategy, and the processed mobile application data is analyzed by the data visualization analysis platform. There is no need to access a third-party platform for data analysis, and the process is simple, does not require multi-party collaboration, and is highly efficient. There is no need to pay for a deeper analysis of user behavior data, thereby reducing enterprise expenditure costs. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0019] Figure 1 A flowchart of a method for collecting and analyzing mobile application data provided by an embodiment of the present invention;
[0020] Figure 2 A structural diagram of a mobile application data collection and analysis system provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0021] The technical solution of the present invention is described below in conjunction with the accompanying drawings.
[0022] In the embodiments of the present invention, words such as "exemplarily" and "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design described as "example" in the present invention should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of the word "example" is intended to present the concept in a specific way. In addition, in the embodiments of the present invention, the meaning expressed by "and / or" can be both, or it can be either of the two.
[0023] In order to make the technical problems, technical solutions and advantages to be solved by the present invention more clear, a detailed description will be given below with reference to the accompanying drawings and specific embodiments.
[0024] Reference Manual Attached Figure 1 , which shows a flow chart of a mobile application data collection and analysis method provided by an embodiment of the present invention.
[0025] The embodiment of the present invention provides a method for collecting and analyzing mobile application data. The method can be implemented by a mobile application data collection and analysis device, which can be a terminal or a server. The processing flow of the method for collecting and analyzing mobile application data can include the following steps:
[0026] S1: Collect various types of mobile application data in real time.
[0027] Specifically, the API interface SDK is integrated into the mobile application, combined with preset specific data collection points, the API is manually called to collect various types of mobile application data in real time, and the SDK automatically collects various types of mobile application data in real time.
[0028] It should be noted that those skilled in the art can set the locations of the preset specific data collection points according to actual needs, and the present invention is not limited thereto.
[0029] Among them, API interface (Application Programming Interface) is the agreement and protocol between software systems, allowing different applications or services to communicate and interact. It defines a set of functions, data formats and operation methods, allowing developers to access specific functions or data without knowing the internal implementation details. API can be used to access web services, databases, operating system functions, etc.
[0030] Among them, SDK (Software Development Kit) is a collection of tools, libraries and documents required to develop a specific platform or application. SDK usually includes API, programming library, debugging tools and sample code to help developers quickly develop applications and simplify the development process. It provides developers with the necessary resources to interact with specific services or hardware, making application development more efficient.
[0031] Among them, mobile application data includes event click data and application data.
[0032] Optionally, mobile application data specifically includes: the number of new users today (used to identify new users. When the application is installed and started for the first time, the SDK will obtain and save the unique identifier of the device (such as UUID), provided that the user agrees to the privacy statement. At subsequent startups, the SDK will check the stored identifier to determine whether the device is a new user), the number of active users today (used to track the active users of the application. The SDK is used to monitor the startup events of the application. Each time the application is started, the active user information is reported to the server. In order to avoid double counting, the SDK uses the UUID of the device as the unique identifier to ensure the accuracy of the data), and statistics on the startup frequency of the application (using the SDK to count cold users). The sum of startup and hot start. By recording the time of each startup and comparing it with the time of the last startup, if the time interval is short (such as 1 second), it is considered a hot start. If the time interval is long, it is considered a cold start. If the time interval is greater than 20 seconds, the data is considered erroneous data and is filtered to ensure data accuracy), startup speed (used to measure the speed of application startup, cold start: the time from the creation of the application process to the full rendering and interactiveness of the first screen of the application, hot start: the time from the user clicking the application icon to the completion of the rendering of the first screen of the application. Use the SDK to record the start timestamp at the startup entrance and the end timestamp when the loading is completed. Calculate the difference between the two to get the startup speed), device information ( Used to collect basic information about the device. On the Android platform, use the SDK to obtain the device brand, model, system version and other information through the android.os.Build class. On the iOS platform, obtain the corresponding information through the UIDevice class), user usage time (used to track the user's usage time in the application. Use the SDK to record the startup time when the application starts, and the shutdown time when the application exits. Use the isSessionTimeOut() method to determine whether the time since the last application shutdown exceeds 30 seconds to decide whether to treat the current session as a new session and report the corresponding event), network information (used to automatically collect behavior data in network requests According to reports, using the SDK will capture all network requests, rewrite key methods of network request libraries (such as OkHttp, Retrofit), parse the requested URL, method, parameters, etc., and record the response data when receiving the response, including response code, response body, response header and other information) and process response time (used to calculate the response time of network requests, use the SDK to record the start and end time of the request, and calculate the response time of each stage, including DNS resolution time, TCP connection time, SSL handshake time (for HTTPS requests), data transmission time, etc. During the request process, using the SDK will capture possible error information in real time, such as network timeout, connection error, and server error).
[0033] In the present invention, through real-time data collection and preset data collection points, the SDK can effectively capture the user's actual interactive behavior (such as clicks, slides, etc.), thereby improving the accuracy and reliability of the data. This method enables developers to fully understand user behavior and helps optimize the application experience. By collecting various types of data (such as new users, active users, startup frequency, startup speed, device information, etc.), the present invention can provide comprehensive user behavior analysis and application performance evaluation. The real-time collected data can support real-time monitoring of application performance and user behavior, and developers can quickly identify and respond to potential problems (such as crashes, performance degradation, etc.) to ensure the stability and satisfaction of the user experience.
[0034] S2: Perform data processing on mobile application data.
[0035] In the present invention, through the data processing step, duplicate and invalid data can be removed to ensure that the data used in the analysis process is of high quality. This helps to improve the accuracy of the data, making subsequent analysis and decision-making more reliable. During the data processing process, outliers (for example, too long startup time or abnormal user behavior) can be identified and filtered. This not only ensures the effectiveness of data analysis, but also helps developers to find and fix potential problems in a timely manner. Data processing can integrate and standardize data from different sources to ensure consistency in format among various types of data. This makes subsequent data analysis and visualization simpler and more efficient.
[0036] In a possible implementation, S2 specifically includes sub-steps S201 to S203:
[0037] S201: Screening mobile application data to obtain first target mobile application data.
[0038] In the present invention, by filtering data and processing only those data sets with high relevance, the time for data processing and the consumption of computing resources can be reduced. This makes the data analysis process more efficient. Through filtering, the system can reduce the amount of data stored and managed, reduce the complexity of data processing, and make data management and maintenance simpler. Data filtering can remove irrelevant or low-quality data, ensuring that the data relied on for subsequent analysis is valid and high-quality. This helps to improve the accuracy and reliability of the analysis results.
[0039] In a possible implementation, S201 specifically includes sub-steps S2011 to S2013:
[0040] S2011: Initiate a data reporting request to the server through the API.
[0041] S2012: Based on the data reporting request, the server sets a data sampling rate threshold through the data visualization analysis platform.
[0042] S2013: Screening the mobile application data according to the data sampling rate threshold to obtain the first target mobile application data that is allowed to be reported to the data visualization analysis platform.
[0043] It should be noted that those skilled in the art can set the data sampling rate threshold according to actual needs, and the present invention does not limit this.
[0044] Furthermore, to ensure high-precision reconstruction of user behaviors (such as fast swipes and continuous clicks), a higher sampling rate is required. For behaviors that do not require high time accuracy (such as page dwell time and application launch times), the sampling rate can be lowered to reduce data volume and storage pressure. By default, the sampling rate is set to 20.
[0045] In the present invention, by screening and adjusting the sampling rate, the system can reduce unnecessary data transmission and storage while maintaining data quality. This makes subsequent data processing and analysis more efficient and reduces the computational burden. For behaviors that do not require high time accuracy (such as page dwell time, application startup times), reducing the sampling rate can effectively reduce the amount of data and storage pressure, thereby optimizing the use of storage resources and reducing processing costs.
[0046] S202: Clean the first target mobile application data to obtain second target mobile application data.
[0047] In the present invention, by cleaning data, irrelevant information can be filtered out, making the analysis process more efficient and focused. In this way, the analysis results are more targeted and can provide more valuable insights. The data cleaning process can unify the data format and ensure the consistency of all data in style and structure, which is very important for cross-system data integration and analysis. The cleaning process can reduce unnecessary data storage, save storage space and computing resources, and reduce operating costs.
[0048] In a possible implementation, S202 specifically includes sub-steps S201 to S2024:
[0049] S2021: Deduplication of the first target mobile application data is performed by identifying a unique field.
[0050] Specifically, the SDK deduplicates the first target mobile application data by identifying a unique field.
[0051] S2022: Based on the synchronization method, when the number of mappings stored in the network request data pool is greater than the preset number of mappings, the mapping's unique identification field set is traversed, and an iterator is used to remove the deduplicated first target mobile application data.
[0052] It should be noted that those skilled in the art can set the size of the preset mapping quantity according to actual needs, and the present invention is not limited here.
[0053] S2023: When the cold start data in the removed first target mobile application data is greater than a first preset duration, the cold start data is deleted as invalid data.
[0054] It should be noted that those skilled in the art can set the first preset duration according to actual needs, and the present invention is not limited thereto.
[0055] S2024: Perform unit conversion and format conversion on the first target mobile application data after deleting the cold start data to unify the data format, and filter out wrong format data for deletion to obtain second target mobile application data.
[0056] Specifically, the date, time, and numbers of the first target mobile application data after the cold start data is deleted are converted into units and formats to unify the data format, and wrong format data is screened out and deleted to obtain the second target mobile application data.
[0057] In the present invention, data deduplication is performed through unique fields, which can effectively eliminate duplicate data and ensure the uniqueness of each data point, thereby improving the accuracy of the data. Using synchronization methods and iterators to remove redundant data can more efficiently manage the number of stored mappings. This method ensures that there will be no data confusion during the processing process, thereby improving the efficiency of data processing. By setting a first preset time length and filtering the cold start data, unreasonable or abnormal data can be removed to ensure the quality of the analyzed data. This helps to maintain the reliability of the data set. Unit conversion and format conversion are performed on the data to ensure the consistency of the data in style and structure, so that data from different data sources can be smoothly integrated.
[0058] S203: Use the AES-256 encryption algorithm to encrypt and store the second target mobile application data.
[0059] Among them, the AES-256 encryption algorithm (Advanced Encryption Standard) is a symmetric encryption algorithm that uses a 256-bit key length to encrypt and decrypt data. As one of the currently widely used encryption standards, AES-256 provides strong data security and confidentiality and is suitable for protecting sensitive information. Its symmetry means that the same key is used for encryption and decryption, which requires secure key management. Due to its efficiency and security, AES-256 is widely used in various fields, including finance, government, and information technology to prevent data leakage and unauthorized access.
[0060] In the present invention, the AES-256 algorithm uses a 256-bit key length, which provides extremely high security, effectively prevents data from being accessed or leaked without authorization, and ensures the confidentiality of sensitive information. By encrypting and storing data, even if the data is intercepted during transmission, attackers cannot easily decrypt and access the data content, thereby reducing the risk of data leakage. Since AES is a symmetric encryption algorithm, the same key is used for encryption and decryption, which makes key management relatively simple. Developers can flexibly manage keys according to actual needs and improve the maintainability of the system.
[0061] In a possible implementation, S203 specifically includes sub-steps S2031 to S2033:
[0062] S2031: Generate a key through a key generator.
[0063] S2032: Generate an initialization vector.
[0064] S2033: Using Cipher according to the key and the initialization vector, encrypt and store the second target mobile application data.
[0065] Specifically, the SDK uses the AES-256 encryption algorithm to encrypt the second target mobile application data. By using Android's KeyStore and iOS's Keychain to generate and store AES keys, the hardware security features of the device are fully utilized to improve the randomness and security of the keys. In addition, the SDK obtains the key and initialization vector (IV) and uses Cipher for encrypted storage. At the same time, the data transmission between the SDK and the server is encrypted using the TLS protocol to further ensure the security of data transmission.
[0066] It should be noted that before the mobile application data is sent to the server, the collected mobile application data will first be stored in the local device using SQLITE. If an exception occurs during the storage process, the system will try to re-store it. For sensitive data (such as UUID), it is stored in a secure storage area in the sandbox directory of the application to prevent unauthorized applications or users from accessing these sensitive data.
[0067] In the present invention, the second target mobile application data is encrypted and stored by using the AES-256 encryption algorithm, providing strong data protection. The high security of AES-256 makes it difficult for data to be accessed or cracked by unauthorized users during storage and transmission, ensuring the security of sensitive information. By using Android's KeyStore and iOS's Keychain to generate and store AES keys, the hardware security features of the device can be fully utilized to improve the randomness and security of the keys. This method reduces the risk of key exposure and makes key management safer and more convenient. Generating a random initialization vector (IV) can enhance the security of encryption and prevent the same plaintext from generating the same ciphertext in different encryptions, thereby resisting replay attacks and other attack methods. When an exception occurs during the storage process, the system will attempt to re-store to ensure data integrity and reliability. This mechanism helps to reduce the risk of data loss and ensure the continuous availability of user data.
[0068] In a possible implementation manner, after S203, the method further includes:
[0069] S204: Batch delete the reported data by matching ID from the local database.
[0070] Specifically, after a successful report, the SDK will batch delete the reported data from the local database by matching ID to free up storage space. If a report fails, the data will continue to be cached in the local database, waiting for the next report.
[0071] In the present invention, by deleting the reported data, the storage space of the local device can be effectively freed up to avoid unnecessary data accumulation. This helps to improve the performance of the device, especially when the storage capacity is limited. Deleting the reported data can reduce the risk of unauthorized access to sensitive information, especially when the user's device is lost or stolen. This measure helps to protect user privacy and data security. Batch deletion by matching ID can ensure that the locally stored data is consistent with the reported data, avoiding data redundancy and potential confusion. This helps to improve the accuracy of subsequent data analysis and reporting.
[0072] S3: According to the reporting strategy, the processed mobile application data is reported to the data visualization analysis platform.
[0073] In the present invention, by analyzing the reported data, enterprises can identify the pain points of applications and the needs of users, and thus implement corresponding optimization measures to improve user experience and application performance. Real-time data reporting can help enterprises identify potential risks and abnormal situations in a timely manner, promote rapid response and processing, and reduce risks in business operations. By reporting processed data in a timely manner, enterprises can conduct real-time data analysis and quickly identify changes in user behavior and application performance.
[0074] The reporting strategies include: a first reporting strategy, a second reporting strategy, a third reporting strategy and a fourth reporting strategy.
[0075] Optionally, the first reporting strategy is specifically:
[0076] The server generates a random integer within a preset range. When the random integer hits the data sampling rate threshold, the network information related to the mobile application data collection is reported. When the device starts hitting the data sampling rate threshold, the processed mobile application data is reported to the data visualization analysis platform.
[0077] Optionally, when launching the SDK, the server will generate a random integer between 1 and 100. If the random number hits the data sampling rate threshold, the SDK will report the relevant network information in Android and iOS network analysis. At the same time, if the device startup hits the data sampling rate threshold, all collected network logs will be reported.
[0078] It should be noted that those skilled in the art can set the size of the preset interval according to actual needs, and the present invention is not limited thereto.
[0079] The second reporting strategy is as follows:
[0080] According to the second preset time period, the processed mobile application data is regularly reported to the data visualization analysis platform.
[0081] It should be noted that those skilled in the art can set the second preset duration according to actual needs, and the present invention is not limited thereto.
[0082] The third reporting strategy is as follows:
[0083] Using an asynchronous multi-thread pool approach, when the application startup time exceeds a third preset time, the processed mobile application data is asynchronously reported to the data visualization analysis platform.
[0084] It should be noted that those skilled in the art can set the third preset duration according to actual needs, and the present invention is not limited thereto.
[0085] The fourth reporting strategy is as follows:
[0086] When the network status is unstable or the server is temporarily unable to respond, the processed mobile application data is asynchronously reported to the data visualization analysis platform through the retry mechanism.
[0087] In the present invention, through different reporting strategies, enterprises can flexibly adjust the data collection and reporting methods according to actual needs. This flexibility enables the system to adapt to different usage scenarios and business needs, and improves the scalability of the application. The implementation of multiple reporting strategies provides guarantees for the real-time and effectiveness of data, supports management to make data-driven decisions, and thus optimizes business processes and user experience. Flexible reporting strategies enable developers to quickly adjust data collection and reporting strategies according to needs, thereby reducing the development and maintenance costs of the system and improving development efficiency.
[0088] In a possible implementation, S3 specifically includes sub-steps S301 to S305:
[0089] S301: Calculate data transmission delay:
[0090]
[0091] Among them, D t represents data transmission delay, L represents data size, and R represents bandwidth.
[0092] S302: When the data transmission delay is greater than the first transmission threshold, a first reporting strategy is selected to report the processed mobile application data to the data visualization analysis platform.
[0093] S303: When the data transmission delay is greater than the second transmission threshold and less than the first transmission threshold, select a second reporting strategy to report the processed mobile application data to the data visualization analysis platform.
[0094] S304: When the data transmission delay is greater than the third transmission threshold and less than the second transmission threshold, select a third reporting strategy to report the processed mobile application data to the data visualization analysis platform.
[0095] S305: When the data transmission delay is less than the third transmission threshold, select a fourth reporting strategy to report the processed mobile application data to the data visualization analysis platform.
[0096] It should be noted that those skilled in the art can set the first transmission threshold, the second transmission threshold, the third transmission threshold and the fourth transmission threshold according to actual needs, and the present invention does not limit this herein.
[0097] In the present invention, by calculating the data transmission delay, the system can select an appropriate reporting strategy according to the current network conditions. This dynamic adjustment ensures that data can be reported at the best time, thereby improving the efficiency of data transmission. By selecting different reporting strategies according to the delay situation (such as using less data reporting when the delay is high), application freezes caused by network congestion can be effectively avoided, ensuring a smooth experience for users when using applications. By intelligently selecting reporting strategies, network traffic and bandwidth usage can be effectively controlled, system resources can be optimized, and unnecessary network requests can be reduced, thereby reducing operating costs.
[0098] S4: Perform data visualization analysis on the processed mobile application data through the data visualization analysis platform.
[0099] Optionally, the processed mobile application data can be visualized and displayed in charts through the data visualization analysis platform to ensure real-time data analysis. Specifically, the application management function enables each application to be effectively managed, including adding, editing and deleting operations. The SDK reports the data of each application through the package name and App ID to ensure the accurate attribution and analysis of the data. These unique identifiers help to accurately identify and collect data for specific applications and avoid data confusion. At the same time, the App ID is automatically generated in the application management, which becomes an important step in configuring the SDK to report data. The data visualization analysis platform displays real-time and historical statistical data, covering dimensions such as application additions, activity, number of launches, cumulative users, overall trends in the past seven days, and version share. In terms of startup analysis, the cold start and hot start time of the application are counted in milliseconds, and filtering and comparison by application version, startup method and date range are supported. Model analysis focuses on the startup time of the top 100 models, and also supports filtering. The network analysis section displays the domain name list, total number of network requests, average response time, network error rate and HTTP error rate indicators, and implements data filtering through sampling rate settings. The response time analysis covers indicators such as the domain name list, total number of requests, and network response time ratio. At the same time, the operator response time data statistics provide detailed information about the average response value and sample number of each operator. Through such a data visualization analysis platform, the processed mobile application data can be fully analyzed and displayed, providing strong support for optimization decisions.
[0100] In the present invention, the data visualization analysis platform ensures real-time analysis of data, allowing enterprises to quickly obtain the latest data on user behavior and application performance, so as to respond to market changes and user needs in a timely manner. The application management function allows users to effectively manage each application, including adding, editing and deleting operations. This flexibility enables enterprises to adjust and optimize application management in a timely manner according to business needs. Reporting data through package name and App ID can ensure the accurate attribution of data and avoid data confusion between different applications. This helps to improve the reliability and effectiveness of data analysis. Through the analysis of real-time and historical data, enterprises can continuously monitor application performance, identify problems in a timely manner and implement optimization measures, thereby improving user satisfaction and application quality.
[0101] The beneficial effects brought about by the technical solution provided by the embodiment of the present invention include at least:
[0102] In the present invention, various types of mobile application data are collected in real time, the mobile application data is processed, and the mobile application data is encrypted and stored, thereby avoiding the risk of leaking user information and ensuring user privacy security. The processed mobile application data is reported to the data visualization analysis platform according to the reporting strategy, and the processed mobile application data is analyzed by the data visualization analysis platform. There is no need to access a third-party platform for data analysis, and the process is simple, does not require multi-party collaboration, and is highly efficient. There is no need to pay for a deeper analysis of user behavior data, thereby reducing enterprise expenditure costs.
[0103] Reference Manual Attached Figure 2 , showing a structural schematic diagram of a mobile application data collection and analysis system provided by the present invention.
[0104] The present invention further provides a mobile application data collection and analysis system 30 , comprising: a memory 303 and one or more processors 301 .
[0105] One or more application programs are stored in the memory 303 , and the one or more application programs are suitable for being executed by the one or more processors 301 to implement the mobile application data collection and analysis method described in the method embodiment.
[0106] The mobile application data collection and analysis system 30 includes: a processor 301 and a memory 303. The processor 301 and the memory 303 are connected, for example, via a bus 302.
[0107] The structure of the mobile application data collection and analysis system 30 does not constitute a limitation on the embodiment of the present invention.
[0108] Processor 301 may be a CPU, a general purpose processor, a DSP, an ASIC, an FPGA or other programmable logic device, a transistor logic device, a hardware component or any combination thereof. It may implement or execute various exemplary logic blocks, modules and circuits described in conjunction with the disclosure of the present invention. Processor 301 may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, etc.
[0109] The bus 302 may include a path to transmit information between the above components. The bus 302 may be a PCI bus or an EISA bus, etc. The bus 302 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0110] The memory 303 can be a ROM or other type of static storage device that can store static information and instructions, a RAM or other type of dynamic storage device that can store information and instructions, or an EEPROM, a CD-ROM or other optical disk storage, an optical disk storage (including a compressed optical disk, a laser disk, an optical disk, a digital versatile disk, a Blu-ray disk, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited to these.
[0111] It should be noted that the mobile application data collection and analysis system 30 can implement the above-mentioned mobile application data collection and analysis method, and can achieve the same or similar technical effects. To avoid repetition, the present invention will not go into details.
[0112] The beneficial effects brought about by the technical solution provided by the embodiment of the present invention include at least:
[0113] In the present invention, various types of mobile application data are collected in real time, the mobile application data is processed, and the mobile application data is encrypted and stored, thereby avoiding the risk of leaking user information and ensuring user privacy security. The processed mobile application data is reported to the data visualization analysis platform according to the reporting strategy, and the processed mobile application data is analyzed by the data visualization analysis platform. There is no need to access a third-party platform for data analysis, and the process is simple, does not require multi-party collaboration, and is highly efficient. There is no need to pay for a deeper analysis of user behavior data, thereby reducing enterprise expenditure costs.
[0114] The present invention also provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program can be loaded and executed by a processor according to the mobile application data collection and analysis method described in the first aspect.
[0115] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.
[0116] There are a few points to note:
[0117] (1) The drawings of the embodiments of the present invention only relate to the structures related to the embodiments of the present invention, and other structures may refer to the general design.
[0118] (2) For the sake of clarity, in the drawings used to describe the embodiments of the present invention, the thickness of the layers or regions is exaggerated or reduced, that is, these drawings are not drawn according to the actual scale. It is understood that when an element such as a layer, film, region or substrate is referred to as being "on" or "under" another element, the element may be "directly" "on" or "under" the other element or there may be intermediate elements.
[0119] (3) In the absence of conflict, the embodiments of the present invention and the features therein may be combined with each other to obtain new embodiments.
[0120] The above are only specific embodiments of the present invention, but the protection scope of the present invention is not limited thereto. The protection scope of the present invention shall be based on the protection scope of the claims.
Claims
1. A method for collecting and analyzing mobile application data, characterized in that: include: S1: Real-time collection of various types of mobile application data; S2: Processing the mobile application data; S3: According to the reporting strategy, the processed mobile application data is reported to the data visualization analysis platform; S4: Performing data visualization analysis on the processed mobile application data through the data visualization analysis platform.
2. The method for collecting and analyzing mobile application data according to claim 1, characterized in that: The S2 specifically includes: S201: Screening the mobile application data to obtain first target mobile application data; S202: Cleaning the first target mobile application data to obtain second target mobile application data; S203: Use the AES-256 encryption algorithm to encrypt and store the second target mobile application data.
3. The method for collecting and analyzing mobile application data according to claim 2, characterized in that: After S203, the method further includes: S204: Batch delete the reported data by matching ID from the local database.
4. The method for collecting and analyzing mobile application data according to claim 2, characterized in that: The S201 specifically includes: S2011: Initiate a data reporting request to the server through the API; S2012: According to the data reporting request, the server sets a data sampling rate threshold through a data visualization analysis platform; S2013: Screening the mobile application data according to the data sampling rate threshold to obtain first target mobile application data that is allowed to be reported to the data visualization analysis platform.
5. The method for collecting and analyzing mobile application data according to claim 2, characterized in that: The S202 specifically includes: S2021: Deduplication of the first target mobile application data by identifying a unique field; S2022: Based on the synchronization method, when the number of mappings stored in the network request data pool is greater than the preset number of mappings, traverse the mapping's unique identification field set, and use an iterator to remove data from the deduplicated first target mobile application data; S2023: When the cold start data in the removed first target mobile application data is greater than a first preset time length, deleting the cold start data as invalid data; S2024: Perform unit conversion and format conversion on the first target mobile application data after deleting the cold start data to unify the data format, and filter out wrong format data for deletion to obtain second target mobile application data.
6. The method for collecting and analyzing mobile application data according to claim 2, characterized in that: The 203 specifically includes: S2031: Generate a key through a key generator; S2032: Generate an initialization vector; S2033: Using Cipher according to the key and the initialization vector, encrypt and store the second target mobile application data.
7. The method for collecting and analyzing mobile application data according to claim 1, characterized in that: The reporting strategies include: a first reporting strategy, a second reporting strategy, a third reporting strategy and a fourth reporting strategy.
8. The method for collecting and analyzing mobile application data according to claim 7, characterized in that: The first reporting strategy is specifically: The server generates a random integer within a preset range, and when the random integer hits the data sampling rate threshold, reports network information related to mobile application data collection; when the device startup hits the data sampling rate threshold, reports the processed mobile application data to the data visualization analysis platform; The second reporting strategy is specifically: According to a second preset time period, regularly reporting the processed mobile application data to the data visualization analysis platform; The third reporting strategy is specifically: By adopting an asynchronous multi-thread pool method, when the application startup time exceeds a third preset time, the processed mobile application data is asynchronously reported to the data visualization analysis platform; The fourth reporting strategy is specifically: When the network status is unstable or the server is temporarily unable to respond, the processed mobile application data is asynchronously reported to the data visualization analysis platform through the retry mechanism.
9. The method for collecting and analyzing mobile application data according to claim 7, characterized in that: The S3 specifically includes: S301: Calculate data transmission delay: Among them, D t represents data transmission delay, L represents data size, and R represents bandwidth. S302: When the data transmission delay is greater than a first transmission threshold, selecting the first reporting strategy to report the processed mobile application data to a data visualization analysis platform; S303: When the data transmission delay is greater than the second transmission threshold and less than the first transmission threshold, selecting the second reporting strategy to report the processed mobile application data to the data visualization analysis platform; S304: When the data transmission delay is greater than the third transmission threshold and less than the second transmission threshold, selecting the third reporting strategy to report the processed mobile application data to the data visualization analysis platform; S305: When the data transmission delay is less than the third transmission threshold, select the fourth reporting strategy to report the processed mobile application data to the data visualization analysis platform.
10. A mobile application data collection and analysis system, characterized in that: include: memory and one or more processors; One or more applications are stored in the memory, and the one or more applications are suitable for being executed by the one or more processors to implement the mobile application data collection and analysis method according to any one of claims 1 to 9.