Device category determination method and device, storage medium and electronic device
By receiving and parsing data from terminal devices and matching historical device identifiers to determine device categories, the problem of device identifier splitting and conflict is solved, improving the accuracy and ease of obtaining device categories.
Patent Information
- Application Number
- CN202411288855.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-13
- Publication Date
- 2026-03-13
AI Technical Summary
In existing technologies, when determining device categories using the International Mobile Identifier (IMI) or Advertising Identifier (OI), there are issues of device identification splitting and identification conflicts, resulting in low accuracy of device category identification and difficulty in obtaining the classification information.
The system receives current data information reported by the terminal device, parses it to obtain the identifier of the device to be detected and the identifier of the reference device, matches it with historical device identifiers in the preset device identifier database, and determines the device category based on the matching result, including new, historical, conflict and split categories.
It improves the accuracy of device categories, reduces the low accuracy caused by identifier splitting or conflict, and reduces the difficulty of acquisition, providing a better user experience.
Smart Images

Figure CN121658401A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of this disclosure relate to the field of computer technology, and more specifically, the embodiments of this disclosure relate to a method for determining a device category, an apparatus for determining a device category, a computer-readable storage medium, and an electronic device. Background Technology
[0002] This section is intended to provide background or context for the embodiments of this disclosure as set forth in the claims. The description herein is not intended to be a prior art simply because it is included in this section.
[0003] Existing methods for determining device categories can use the device's International Mobility Identifier (IMI) or Advertising Identifier (AII). However, these methods suffer from issues such as device identifier splitting or conflicting identifiers, resulting in low accuracy in the determined device categories. Summary of the Invention
[0004] However, in the existing technology, on the one hand, determining the device category by using the device's International Mobile Identification Code (IMC) or Advertising Identifier (ADI) does not take into account the operating environment information of the application client, resulting in a low accuracy rate for device classification; on the other hand, obtaining the IMC or ADI is difficult, which leads to the problem of not being able to accurately classify devices based on the IMC or ADI.
[0005] Therefore, an improved method for determining device categories is urgently needed. This method would receive current data reported by the terminal device, parse the current data to obtain the identifier of the device to be detected and the identifier of the reference device associated with the terminal device, and then match the first historical device identifier corresponding to the reference device identifier in a preset device identifier database to obtain a first identifier matching result, and the second historical device identifier corresponding to the identifier of the device to be detected to obtain a second identifier matching result. Finally, based on the first identifier matching result and the second identifier matching result, the device category to which the terminal device belongs is determined. This method can determine the device category without relying on the International Mobile Identification Code (IMC) or the Advertising Identifier (AII), thereby improving the accuracy of device category determination.
[0006] In this context, embodiments of the present disclosure are intended to provide a method for determining a device category, an apparatus for determining a device category, a computer-readable storage medium, and an electronic device.
[0007] According to one aspect of this disclosure, a method for determining a device category is provided, comprising:
[0008] Receive current data information reported by the terminal device, and parse the current data information to obtain the identifier of the device to be detected and the identifier of the reference device associated with the terminal device;
[0009] A first identifier matching result is obtained by matching a first historical device identifier corresponding to the reference device identifier in a preset device identifier database, and a second identifier matching result is obtained by matching a second historical device identifier corresponding to the device identifier to be detected.
[0010] Based on the first identifier matching result and the second identifier matching result, the device category to which the terminal device belongs is determined.
[0011] In one exemplary embodiment of this disclosure, the preset device identifier database includes a reference device identifier database and a detected device identifier database;
[0012] Specifically, the process of matching a first historical device identifier corresponding to the device identifier to be detected with a preset device identifier database to obtain a first identifier matching result, and matching a second historical device identifier corresponding to the reference device identifier to obtain a second identifier matching result, includes:
[0013] A first identifier matching result is obtained by matching the first historical device identifier corresponding to the reference device identifier in the reference device identifier database;
[0014] A second identifier matching result is obtained by matching the second historical device identifier corresponding to the identifier of the device to be detected in the detected device identifier database.
[0015] In one exemplary embodiment of this disclosure, determining the device category to which the terminal device belongs based on the first identifier matching result and the second identifier matching result includes:
[0016] Determine whether the first identifier matching result and the second identifier matching result are completely consistent;
[0017] If the first identifier matching result and the second identifier matching result are completely consistent, then the device category to which the terminal device belongs is determined to be either a newly added device category or a historical device category;
[0018] If the first identifier matching result and the second identifier matching result are inconsistent, the device category to which the terminal device belongs is determined to be a device identifier conflict category or a device identifier split category.
[0019] In one exemplary embodiment of this disclosure, the newly added device category and the historical device category are determined in the following manner:
[0020] If the first identifier matching result is that a first historical device identifier corresponding to the reference device identifier exists in the reference device identifier database, and the second identifier matching result is that a second historical device identifier corresponding to the device identifier to be detected exists in the detected device identifier database, then the device category to which the terminal device belongs is the historical device category;
[0021] If the first identifier matching result is that there is no first historical device identifier corresponding to the reference device identifier in the reference device identifier database, and the second identifier matching result is that there is no second historical device identifier corresponding to the device identifier to be detected in the detected device identifier database, then the device category to which the terminal device belongs is the historical device category.
[0022] In one exemplary embodiment of this disclosure, the device identifier conflict category includes a reference device identifier conflict category or a device identifier conflict category to be detected; the device identifier split category includes a reference device identifier split category or a device identifier split category to be detected.
[0023] In one exemplary embodiment of this disclosure, the reference device identifier conflict category and the reference device identifier split category are determined as follows:
[0024] If the first identifier matching result is that there is a first historical device identifier corresponding to the reference device identifier in the reference device identifier database, and the historical runtime environment information in the reference device identifier database is inconsistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be a reference device identifier conflict category;
[0025] If the first identifier matching result is that there is no first historical device identifier corresponding to the reference device identifier in the reference device identifier database, and the historical runtime environment information in the reference device identifier database is consistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the reference device identifier split category.
[0026] In one exemplary embodiment of this disclosure, the detection device identifier conflict category and the detection device identifier split category are determined in the following manner:
[0027] If the second identifier matching result is that there is a second historical device identifier in the detected device identifier database that corresponds to the device identifier to be detected, and the historical runtime environment information in the detected device identifier database is inconsistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the device identifier conflict category to be detected;
[0028] If the second identifier matching result is that there is no second historical device identifier corresponding to the device identifier to be detected in the detected device identifier database, and the historical runtime environment information in the detected device identifier database is consistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the split category of the device identifier to be detected.
[0029] In one exemplary embodiment of this disclosure, the method for determining the device category further includes:
[0030] The device identifier conflict probability of the terminal device is determined based on the reference device identifier conflict category and the device identifier conflict category to be detected; wherein, the device identifier conflict probability includes the reference device identifier conflict probability and the device identifier conflict probability to be detected.
[0031] The device identifier split probability of the terminal device is determined based on the reference device identifier split category and the device identifier split category to be detected; wherein, the device identifier split probability includes the reference device identifier split probability and the device identifier split probability to be detected.
[0032] The number of users of the target application is predicted based on the device identifier conflict probability and the device identifier split probability.
[0033] In one exemplary embodiment of this disclosure, the reference device identifier split probability and the reference device identifier collision probability are obtained in the following manner:
[0034] Sampling is performed on the terminal devices included in the reference device identifier conflict category and the reference device identifier split category to obtain the first device sampling result;
[0035] Based on the number of first sub-devices corresponding to the conflict category with the reference device identifier and the number of second sub-devices corresponding to the split category with the reference device identifier included in the first device sampling result, the first device identifier split probability and the first device identifier conflict probability of the first device sampling result are determined.
[0036] The first total number of devices corresponding to the conflict category of the reference device identifier is determined based on the first device identifier split probability, and the second total number of devices corresponding to the split category of the reference device identifier is determined based on the first device identifier conflict probability.
[0037] The reference device identifier split probability is determined based on the first total number of devices, and the reference device identifier conflict probability is determined based on the second total number of devices.
[0038] In one exemplary embodiment of this disclosure, the current data information is generated by the terminal device in the following manner:
[0039] The system generates a device identifier to be detected and a reference device identifier for the terminal device, and collects the current runtime environment information of the terminal device when running the target application; wherein, the current runtime environment information includes a local web page data list, an Internet Protocol address, and local random data associated with the local web page data and the Internet Protocol address;
[0040] The current data information is generated based on the device identifier to be detected, the reference device identifier, the local web page data list, the Internet Protocol address, and local random data.
[0041] In one exemplary embodiment of this disclosure, generating the device identifier to be detected and the reference device identifier of the terminal device includes:
[0042] In response to the operation of the target application on the terminal device, the first identifier generation function corresponding to the identifier of the device to be detected and the second identifier generation function corresponding to the identifier of the reference device are invoked in the target application.
[0043] The identifier of the device to be detected is generated based on the first identifier generation function, and a reference device identifier is generated based on the device feature information of the terminal device according to the second identifier generation function.
[0044] In one exemplary embodiment of this disclosure, the second identifier generation function includes a second strong feature generation function and / or a second weak feature generation function; the reference device identifier includes a strong feature reference device identifier and / or a weak feature reference device identifier;
[0045] The process of generating a reference device identifier based on the device feature information of the terminal device using the second identifier generation function includes:
[0046] The strong device characteristics and weak device characteristics of the terminal device are obtained; wherein, the strong device characteristics include at least one of International Mobile Identifier, Advertising Identifier, Anonymous Identifier, and Custom Device Identifier; the weak device characteristics include at least one of device memory information, device system information, and device battery information.
[0047] The strong feature reference device identifier is generated based on the strong device features according to the second strong feature generation function, and / or the weak feature reference device identifier is generated based on the weak device features according to the second weak feature generation function.
[0048] According to one aspect of this disclosure, an apparatus for determining a device category is provided, comprising:
[0049] The data information parsing module is used to receive the current data information reported by the terminal device, and parse the current data information to obtain the identifier of the device to be detected and the identifier of the reference device associated with the terminal device.
[0050] The device identifier matching module is used to match a first historical device identifier corresponding to the reference device identifier in a preset device identifier database to obtain a first identifier matching result, and a second historical device identifier corresponding to the device identifier to be detected to obtain a second identifier matching result;
[0051] The device category determination module is used to determine the device category to which the terminal device belongs based on the first identifier matching result and the second identifier matching result.
[0052] In one exemplary embodiment of this disclosure, the preset device identifier database includes a reference device identifier database and a detected device identifier database;
[0053] Specifically, the process of matching a first historical device identifier corresponding to the device identifier to be detected with a preset device identifier database to obtain a first identifier matching result, and matching a second historical device identifier corresponding to the reference device identifier to obtain a second identifier matching result, includes:
[0054] A first identifier matching result is obtained by matching the first historical device identifier corresponding to the reference device identifier in the reference device identifier database;
[0055] A second identifier matching result is obtained by matching the second historical device identifier corresponding to the identifier of the device to be detected in the detected device identifier database.
[0056] In one exemplary embodiment of this disclosure, determining the device category to which the terminal device belongs based on the first identifier matching result and the second identifier matching result includes:
[0057] Determine whether the first identifier matching result and the second identifier matching result are completely consistent;
[0058] If the first identifier matching result and the second identifier matching result are completely consistent, then the device category to which the terminal device belongs is determined to be either a newly added device category or a historical device category;
[0059] If the first identifier matching result and the second identifier matching result are inconsistent, the device category to which the terminal device belongs is determined to be a device identifier conflict category or a device identifier split category.
[0060] In one exemplary embodiment of this disclosure, the newly added device category and the historical device category are determined in the following manner:
[0061] If the first identifier matching result is that a first historical device identifier corresponding to the reference device identifier exists in the reference device identifier database, and the second identifier matching result is that a second historical device identifier corresponding to the device identifier to be detected exists in the detected device identifier database, then the device category to which the terminal device belongs is the historical device category;
[0062] If the first identifier matching result is that there is no first historical device identifier corresponding to the reference device identifier in the reference device identifier database, and the second identifier matching result is that there is no second historical device identifier corresponding to the device identifier to be detected in the detected device identifier database, then the device category to which the terminal device belongs is the historical device category.
[0063] In one exemplary embodiment of this disclosure, the device identifier conflict category includes a reference device identifier conflict category or a device identifier conflict category to be detected; the device identifier split category includes a reference device identifier split category or a device identifier split category to be detected.
[0064] In one exemplary embodiment of this disclosure, the reference device identifier conflict category and the reference device identifier split category are determined as follows:
[0065] If the first identifier matching result is that there is a first historical device identifier corresponding to the reference device identifier in the reference device identifier database, and the historical runtime environment information in the reference device identifier database is inconsistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be a reference device identifier conflict category;
[0066] If the first identifier matching result is that there is no first historical device identifier corresponding to the reference device identifier in the reference device identifier database, and the historical runtime environment information in the reference device identifier database is consistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the reference device identifier split category.
[0067] In one exemplary embodiment of this disclosure, the detection device identifier conflict category and the detection device identifier split category are determined in the following manner:
[0068] If the second identifier matching result is that there is a second historical device identifier in the detected device identifier database that corresponds to the device identifier to be detected, and the historical runtime environment information in the detected device identifier database is inconsistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the device identifier conflict category to be detected;
[0069] If the second identifier matching result is that there is no second historical device identifier corresponding to the device identifier to be detected in the detected device identifier database, and the historical runtime environment information in the detected device identifier database is consistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the split category of the device identifier to be detected.
[0070] In one exemplary embodiment of this disclosure, the device category determination apparatus further includes:
[0071] The device identifier conflict probability determination module is used to determine the device identifier conflict probability of the terminal device based on the reference device identifier conflict category and the device identifier conflict category to be detected; wherein, the device identifier conflict probability includes the reference device identifier conflict probability and the device identifier conflict probability to be detected.
[0072] The device identifier split probability determination module is used to determine the device identifier split probability of the terminal device based on the reference device identifier split category and the device identifier split category to be detected; wherein, the device identifier split probability includes the reference device identifier split probability and the device identifier split probability to be detected.
[0073] The user number prediction module is used to predict the number of users of the target application based on the device identifier conflict probability and the device identifier split probability.
[0074] In one exemplary embodiment of this disclosure, the reference device identifier split probability and the reference device identifier collision probability are obtained in the following manner:
[0075] Sampling is performed on the terminal devices included in the reference device identifier conflict category and the reference device identifier split category to obtain the first device sampling result;
[0076] Based on the number of first sub-devices corresponding to the conflict category with the reference device identifier and the number of second sub-devices corresponding to the split category with the reference device identifier included in the first device sampling result, the first device identifier split probability and the first device identifier conflict probability of the first device sampling result are determined.
[0077] The first total number of devices corresponding to the conflict category of the reference device identifier is determined based on the first device identifier split probability, and the second total number of devices corresponding to the split category of the reference device identifier is determined based on the first device identifier conflict probability.
[0078] The reference device identifier split probability is determined based on the first total number of devices, and the reference device identifier conflict probability is determined based on the second total number of devices.
[0079] In one exemplary embodiment of this disclosure, the current data information is generated by the terminal device in the following manner:
[0080] The system generates a device identifier to be detected and a reference device identifier for the terminal device, and collects the current runtime environment information of the terminal device when running the target application; wherein, the current runtime environment information includes a local web page data list, an Internet Protocol address, and local random data associated with the local web page data and the Internet Protocol address;
[0081] The current data information is generated based on the device identifier to be detected, the reference device identifier, the local web page data list, the Internet Protocol address, and local random data.
[0082] In one exemplary embodiment of this disclosure, generating the device identifier to be detected and the reference device identifier of the terminal device includes:
[0083] In response to the operation of the target application on the terminal device, the first identifier generation function corresponding to the identifier of the device to be detected and the second identifier generation function corresponding to the identifier of the reference device are invoked in the target application.
[0084] The identifier of the device to be detected is generated based on the first identifier generation function, and a reference device identifier is generated based on the device feature information of the terminal device according to the second identifier generation function.
[0085] In one exemplary embodiment of this disclosure, the second identifier generation function includes a second strong feature generation function and / or a second weak feature generation function; the reference device identifier includes a strong feature reference device identifier and / or a weak feature reference device identifier;
[0086] The process of generating a reference device identifier based on the device feature information of the terminal device using the second identifier generation function includes:
[0087] The strong device characteristics and weak device characteristics of the terminal device are obtained; wherein, the strong device characteristics include at least one of International Mobile Identifier, Advertising Identifier, Anonymous Identifier, and Custom Device Identifier; the weak device characteristics include at least one of device memory information, device system information, and device battery information.
[0088] The strong feature reference device identifier is generated based on the strong device features according to the second strong feature generation function, and / or the weak feature reference device identifier is generated based on the weak device features according to the second weak feature generation function.
[0089] According to one aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the method for determining the device category as described in any of the preceding claims.
[0090] According to one aspect of this disclosure, an electronic device is provided, comprising:
[0091] Processor; and
[0092] Memory for storing the executable instructions of the processor;
[0093] The processor is configured to execute the device category determination method described in any one of the preceding embodiments via executing the executable instructions.
[0094] According to the device category determination method and device according to the embodiments of the present disclosure, current data information reported by a terminal device can be received and parsed to obtain a device identifier to be detected and a reference device identifier associated with the terminal device; a first identifier matching result is obtained by matching a first historical device identifier corresponding to the reference device identifier in a preset device identifier database, and a second identifier matching result is obtained by matching a second historical device identifier corresponding to the device identifier to be detected; the device category to which the terminal device belongs is determined based on the first identifier matching result and the second identifier matching result, without having to determine the device category based on the International Mobile Identifier (IMI) or Advertising Identifier (OI), thereby significantly reducing the problem of low accuracy in device category identification due to splits or conflicts in IMI or OI, and reducing the problem of being unable to determine the device category due to the high difficulty in obtaining IMI or OI, thus bringing a better experience to the user. Attached Figure Description
[0095] The above and other objects, features, and advantages of this disclosure will become readily apparent from the following detailed description of exemplary embodiments, taken in conjunction with the accompanying drawings. Several embodiments of this disclosure are illustrated in the drawings by way of example and not limitation, in which:
[0096] Figure 1 A flowchart illustrating an example method for determining a device category according to an exemplary embodiment of this disclosure is shown schematically.
[0097] Figure 2 The illustration schematically depicts a scenario example diagram of a device category determination system according to an exemplary embodiment of the present disclosure;
[0098] Figure 3 An example diagram illustrating current data information according to an exemplary embodiment of this disclosure is shown schematically;
[0099] Figure 4 An example diagram of a device category according to an exemplary embodiment of the present disclosure is shown schematically;
[0100] Figure 5 A flowchart illustrating a method for predicting the number of users according to an exemplary embodiment of this disclosure is shown schematically.
[0101] Figure 6 A block diagram of a device category determination apparatus according to an exemplary embodiment of the present disclosure is shown schematically;
[0102] Figure 7 A computer program product for implementing a method for determining a device category is illustrated schematically according to an example embodiment of the present disclosure;
[0103] Figure 8 An electronic device for implementing a method for determining a device category is illustrated schematically according to an example embodiment of the present disclosure.
[0104] In the accompanying drawings, the same or corresponding reference numerals indicate the same or corresponding parts. Detailed Implementation
[0105] The principles and spirit of this disclosure will now be described with reference to several exemplary embodiments. It should be understood that these embodiments are given merely to enable those skilled in the art to better understand and implement this disclosure, and are not intended to limit the scope of this disclosure in any way. Rather, these embodiments are provided to make this disclosure more thorough and complete, and to fully convey the scope of this disclosure to those skilled in the art.
[0106] Those skilled in the art will recognize that embodiments of this disclosure can be implemented as a system, apparatus, device, method, or computer program product. Therefore, this disclosure can be specifically implemented in the following forms: entirely hardware, entirely software (including firmware, resident software, microcode, etc.), or a combination of hardware and software.
[0107] According to embodiments of this disclosure, a method for determining device categories, an apparatus for determining device categories, a computer-readable storage medium, and an electronic device are provided.
[0108] In this article, it is important to understand that any number of elements in the accompanying figures is for illustrative purposes and not for limitation, and any naming is for distinction only and has no limiting meaning.
[0109] The principles and spirit of this disclosure will be explained in detail below with reference to several representative embodiments. Invention Overview
[0111] The applicant has discovered that in internet applications, it is often necessary to generate a device identifier for client devices (also referred to simply as devices) to uniquely identify them, and then classify the client devices based on this device identifier. Common device identifiers include: IMEI (International Mobile Equipment Identity), IDFA (Identifier for Advertisers) for Apple mobile phones, OAID (Open Anonymous Identification) for Android mobile phones, and the CAICT Zhuoxin ID, etc. Furthermore, various applications often classify client devices using self-developed device identifiers. The generation of self-developed device identifiers typically involves two methods: the first method is to generate and store them during initialization, ensuring that the storage is not modified as much as possible, and this device identifier can be used for a long time; the second method is to generate them on the server side. After the client device collects various information from the system, it sends it to the server, which comprehensively judges and returns the device identifier to the client device. This device identifier is used for a short period of time, and the server uses a certain algorithm to ensure that the device identifier returned for each request from the same client device is consistent.
[0112] However, regardless of the type of device identifier, due to the limitations of its functionality, device identifier splitting and / or device identifier conflicts may occur, affecting the correctness of business functions that rely on that device identifier in internet services (i.e., it is impossible to accurately determine whether the client device is a new device or an old device). Therefore, in order to ensure the correctness of the business as much as possible, it is necessary to evaluate the candidate device representations; however, the difficulty in device identifier evaluation lies in the difficulty of finding an absolutely correct reference object for comparison, and with the strengthening of privacy protection policies, ideal reference objects such as IMEI are difficult to collect. Therefore, how to evaluate the splitting rate and conflict rate of device IDs remains a difficult problem.
[0113] The commonly used device identification evaluation scheme in the industry mainly involves generating a unique random identifier for each client device and storing it in the application's document data. This identifier is reported along with the device identifier each time the corresponding client of the application is launched. The correspondence between the device identifier and the random identifier is then observed. If multiple different random identifiers are stored under a single device identifier, splits or conflicts may have occurred. However, this scheme suffers from the problem of oversimplification. Specifically: firstly, it does not consider the client app's runtime environment information; secondly, the random number reference is too simplistic, as various device identifiers exist in the industry and can also be used as references. Therefore, this scheme often fails to identify conflicts and splits, such as failing to recognize app data copying.
[0114] Furthermore, another situation exists where mobile device manufacturers often provide data migration functions when users upgrade to new phones, such as "one-click migration function in XX phone". This function does not require reinstalling the application client, but completely copies the applications and document data of the old phone to the new phone. At this time, the random identifier will not change. If the device identifier of the new device also remains unchanged due to the copy (in fact, a conflict between the device identifiers of the old and new devices is formed), then this method cannot accurately identify the device.
[0115] Based on this, the exemplary embodiments of this disclosure provide a method for determining device categories. This method involves receiving current data information reported by a terminal device and parsing the current data information to obtain a device identifier to be detected and a reference device identifier associated with the terminal device. Then, it matches a first historical device identifier corresponding to the reference device identifier in a preset device identifier database to obtain a first identifier matching result, and a second historical device identifier corresponding to the device identifier to be detected to obtain a second identifier matching result. Finally, based on the first and second identifier matching results, the device category to which the terminal device belongs is determined. Because the determination of the device category considers not only the device identifier to be detected but also the reference device identifier, the accuracy of the device category determination is improved.
[0116] After introducing the basic principles of this disclosure, various non-limiting embodiments of this disclosure will be described in detail below.
[0117] Exemplary methods
[0118] This exemplary embodiment first provides a method for determining a device category, which can run on a server, server cluster, or cloud server, etc. Of course, those skilled in the art can also run the method disclosed herein on other platforms as needed, and this exemplary embodiment does not impose any special limitations on this. Specifically, refer to... Figure 1 As shown, the method for determining this device category may include the following steps:
[0119] Step S110. Receive the current data information reported by the terminal device, and parse the current data information to obtain the identifier of the device to be detected and the identifier of the reference device associated with the terminal device;
[0120] Step S120. Match the first historical device identifier corresponding to the reference device identifier in the preset device identifier database to obtain a first identifier matching result, and match the second historical device identifier corresponding to the device identifier to be detected to obtain a second identifier matching result;
[0121] Step S130. Determine the device category to which the terminal device belongs based on the first identifier matching result and the second identifier matching result.
[0122] In the above-mentioned method for determining the device category, the current data information reported by the terminal device can be received and parsed to obtain the device identifier to be detected and the reference device identifier associated with the terminal device; a first identifier matching result is obtained by matching the first historical device identifier corresponding to the reference device identifier in a preset device identifier database, and a second identifier matching result is obtained by matching the second historical device identifier corresponding to the device identifier to be detected; the device category to which the terminal device belongs is determined based on the first identifier matching result and the second identifier matching result, without having to determine the device category based on the International Mobile Code (IMC) or Advertising Identifier (AOI), thereby significantly reducing the problem of low accuracy in device category identification due to the split or conflict of IMC or AOI, and reducing the problem of being unable to determine the device category due to the high difficulty in obtaining IMC or AOI, thus bringing a better experience to users.
[0123] The method for determining the device category described in the exemplary embodiments of this disclosure will be explained and described in detail below with reference to the accompanying drawings.
[0124] First, the terms used in the example embodiments of this disclosure will be explained and described.
[0125] Device ID: Device identity identifier (or device identifier), which can be used to identify the device and will not easily change during short-term use of the device.
[0126] Device ID uniqueness: Different devices have different device IDs.
[0127] Idempotency of device ID: The characteristic that the same device ID is returned for a single device at any time and in any scenario.
[0128] Device ID splitting: This refers to a situation where the device ID does not satisfy the idempotency of the device ID, which manifests as the device ID changing for the same device under certain circumstances and scenarios.
[0129] Device ID conflict: This occurs when a device ID does not meet the requirement of uniqueness, resulting in two different devices having the same device ID.
[0130] Split Rate: The probability of device ID splitting within a given time frame, the number of devices that have experienced device ID splitting, and the proportion of the total number of devices.
[0131] Conflict rate: The probability of a device ID conflict occurring within a given time frame, the number of devices experiencing a device ID conflict, and the proportion of the total number of devices.
[0132] Secondly, the system for determining the device category involved in the exemplary embodiments of this disclosure will be explained and described. Specifically, refer to... Figure 2 As shown, the system for determining the device category may include a terminal device 210 and a server 220; wherein, the terminal device can communicate with the server via wired or wireless means; in practical applications, the terminal device can be used to generate current data information and report the current data information to the server; the server can be used to determine the device category of the terminal device based on the current data information reported by the terminal device.
[0133] Furthermore, the specific generation process of the current data information described in the exemplary embodiments of this disclosure will be explained and described. Specifically, the current data information is generated by the terminal device in the following manner: First, a device identifier to be detected and a reference device identifier are generated for the terminal device, and the current runtime environment information of the terminal device when running the target application is collected; wherein, the current runtime environment information includes a local web page data list, an Internet Protocol address, and local random data associated with the local web page data and the Internet Protocol address; second, the current data information is generated based on the device identifier to be detected, the reference device identifier, the local web page data list, the Internet Protocol address, and the local random data. That is, in actual application, if an application needs to determine whether the accessed terminal device is a newly added device, it first needs to report the current data information to the server through the terminal device where the client of the application is located; wherein, the current data information should include not only the reference device identifier (e.g., it can be marked as IDA), but also the device identifier to be detected (e.g., it can be marked as IDB) and the current runtime environment information of the terminal device when running the target application (e.g., cookie list, IP address information, and random numbers, etc.).
[0134] In one example embodiment, during actual application, when the application client is initialized, ID A and ID B can be introduced. Simultaneously, a local webpage data list (i.e., a cookie list) and the terminal device's IP address information are collected. The application client also integrates a random number generation function, which generates a random number r and stores it in the corresponding document data of the application client. Naturally, the random number r will not change if the cookie list and IP address remain unchanged. Further, when the application client starts, ID A (which can be labeled a), ID B (which can be labeled b), the user identifier (which can be labeled uid), and runtime environment information (random number r, cookie list, and IP address, which can be labeled c, where c is a set that can include multiple different data) can be collected. Finally, the current data information is composed of a, b, uid, and c to form a reporting record R; where R = [a, b, uid, c].
[0135] In one example embodiment, the specific generation process of the device to be detected identifier and the reference device identifier can be implemented as follows: In response to the running operation of the target application on the terminal device, a first identifier generation function corresponding to the device to be detected identifier and a second identifier generation function corresponding to the reference device identifier, integrated in the target application, are called; the device to be detected identifier is generated based on the first identifier generation function, and the reference device identifier is generated based on the device feature information of the terminal device according to the second identifier generation function. Specifically, in practical applications, if it is necessary to obtain the reference device identifier and the device to be detected identifier, the corresponding identifier generation function needs to be integrated in the application client; in practical applications, if the terminal device has downloaded and installed the application client, the identifier generation function can be called to generate the corresponding device to be detected identifier when the running operation of the application client is detected.
[0136] In one example embodiment, the second identifier generation function described above may include a second strong feature generation function and a second weak feature generation function; the reference device identifier described above includes a strong feature reference device identifier and a weak feature reference device identifier; under this premise, generating a reference device identifier based on the device feature information of the terminal device using the second identifier generation function can be achieved in the following way: obtaining the strong device features and weak device features of the terminal device; wherein, the strong device features include at least one of International Mobile Identifier (IMI), Advertising Identifier (IUI), Anonymous Identifier (ANI), and Custom Device Identifier (CDI); the weak device features include at least one of device memory information, device system information, and device battery information; generating the strong feature reference device identifier based on the strong device features using the second strong feature generation function, and / or generating the weak feature reference device identifier based on the weak device features using the second weak feature generation function. Specifically, in practical applications, since the reference device identifier may include a strong feature reference device identifier generated from strong device features and a weak feature reference device identifier generated from weak device features, the second identifier generation function needs to set a second strong feature generation function and a second weak feature generation function to generate the strong feature reference device identifier and the weak feature reference device identifier respectively. Additionally, it should be noted that the reference device identifier may include one or more, and can be determined according to actual needs in practical applications. This example does not impose any special restrictions on this.
[0137] The following will be about Figure 1 The method for determining the equipment category shown will be further explained and illustrated. Specifically:
[0138] In step S110, the current data information reported by the terminal device is received and the current data information is parsed to obtain the identifier of the device to be detected and the identifier of the reference device associated with the terminal device.
[0139] For details, please refer to Figure 3 As shown, the current data information recorded here includes not only the identifier of the device to be detected and the identifier of the reference device, but also the runtime environment information c of the application client when reporting the current data information, and the user identifier uid logged in on the application client; among which, the runtime environment information c includes a random number r, a cookie list, an IP address, etc. Meanwhile, the specific storage of the current data information on the server can be shown in Table 1 below:
[0140] Table 1
[0141]
[0142]
[0143] In step S120, a first identifier matching result is obtained by matching a first historical device identifier corresponding to the reference device identifier in a preset device identifier database, and a second identifier matching result is obtained by matching a second historical device identifier corresponding to the device identifier to be detected; wherein, the preset device identifier database mentioned here may include a reference device identifier database and a detected device identifier database.
[0144] Specifically, the determination process for the first and second identifier matching results can be achieved as follows: First, a first identifier matching result is obtained by matching a first historical device identifier corresponding to the reference device identifier in the reference device identifier database; second, a second identifier matching result is obtained by matching a second historical device identifier corresponding to the device identifier to be detected in the detected device identifier database. In other words, in practical applications, two identifier databases can be maintained on the server. When matching is required, the corresponding device identifier can be directly matched in the corresponding database to obtain the corresponding matching result.
[0145] In step S130, the device category to which the terminal device belongs is determined based on the first identifier matching result and the second identifier matching result.
[0146] Specifically, the process of determining the device category can be implemented as follows: Determine whether the first identifier matching result and the second identifier matching result are completely consistent; if the first identifier matching result and the second identifier matching result are completely consistent, then determine that the device category to which the terminal device belongs is a newly added device category or a historical device category; if the first identifier matching result and the second identifier matching result are inconsistent, then determine that the device category to which the terminal device belongs is a device identifier conflict category or a device identifier split category. Here, the device identifier conflict category mentioned here includes a reference device identifier conflict category or a device identifier conflict category to be detected; the device identifier split category mentioned here includes a reference device identifier split category or a device identifier split category to be detected.
[0147] In one example embodiment, the newly added device category and the historical device category can be determined as follows: if the first identifier matching result is that a first historical device identifier corresponding to the reference device identifier exists in the reference device identifier database, and the second identifier matching result is that a second historical device identifier corresponding to the device identifier to be detected exists in the detected device identifier database, then the device category to which the terminal device belongs is the historical device category; if the first identifier matching result is that a first historical device identifier corresponding to the reference device identifier does not exist in the reference device identifier database, and the second identifier matching result is that a second historical device identifier corresponding to the device identifier to be detected does not exist in the detected device identifier database, then the device category to which the terminal device belongs is the historical device category.
[0148] The following section will further explain and illustrate the specific process for determining device categories. Specifically, assuming the matching result is denoted as M, there are several different cases for device categories:
[0149] ① If the identifier of the device to be detected does not exist in the database, and the identifier of the reference device does not exist either, then the terminal device is a newly added device, denoted as M = new device;
[0150] ② If both the identifier of the device to be detected and the identifier of the reference device exist in the database, then the terminal device is a historical device, denoted as M = old device;
[0151] ③ If the database contains an identifier for the device to be detected but not a identifier for the reference device, or if the database does not contain an identifier for the device to be detected but does contain an identifier for the reference device, then it is determined to be either a split category or a conflict category.
[0152] In an exemplary embodiment, the reference device identifier conflict category and the reference device identifier split category can be determined as follows: if the first identifier matching result indicates that a first historical device identifier corresponding to the reference device identifier exists in the reference device identifier database, and the historical runtime environment information in the reference device identifier database is inconsistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the reference device identifier conflict category; if the first identifier matching result indicates that a first historical device identifier corresponding to the reference device identifier does not exist in the reference device identifier database, and the historical runtime environment information in the reference device identifier database is consistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the reference device identifier split category.
[0153] In one example embodiment, the conflict category and the split category of the device identifier to be detected can be determined as follows: if the second identifier matching result is that a second historical device identifier corresponding to the device identifier to be detected exists in the detected device identifier database, and the historical runtime environment information in the detected device identifier database is inconsistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the conflict category of the device identifier to be detected; if the second identifier matching result is that a second historical device identifier corresponding to the device identifier to be detected does not exist in the detected device identifier database, and the historical runtime environment information in the detected device identifier database is consistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the split category of the device identifier to be detected.
[0154] The following will further explain and illustrate the specific process for determining the conflict category and split category of the device identifier to be tested. Specifically, the first matching result is denoted as M = M1, and the second matching result is denoted as M = M2. If M1 and M2 are equal, the comparison ends, indicating that no conflict or split problem was found in this comparison. This device is judged as a new device by both sets of device IDs, or it is the same old device, and is denoted as "C = OK". Furthermore, if M1 and M2 are not equal, it may be that the identifier of the device to be tested is conflicted or split, or it may be that the identifier of the reference device is conflicted or split, so further grouping analysis is required. Furthermore, for the case where M1 and M2 are not equal, the example embodiment of this disclosure concatenates the following judgments in sequence to form group C. If all 6 judgments below are "yes", it is denoted as "C = 111111", proving that the terminal device is a historical device. If C = 000000, it proves that the terminal device is a newly added device. Specifically:
[0155] ① Check if a record is matched by ID A; if yes, record 1, otherwise record 0.
[0156] ② Check whether the r in the reported R is equal to the r in the record matched by IDA. If yes, record it as 1; otherwise, record it as 0. If no record is matched by IDA, also record it as 0.
[0157] ③ Check whether the uid in the reported R matches the uid of the record in IDA. If yes, record it as 1; otherwise, record it as 0. If no record is matched by IDA, also record it as 0.
[0158] ④ Check if a record is matched by IDB; if yes, record 1, otherwise record 0.
[0159] ⑤ Check whether the r in the reported R is equal to the r in the record matched by IDB. If yes, record it as 1; otherwise, record it as 0. If no record is matched by IDB, also record it as 0.
[0160] ⑥ Check whether the uid in the reported R matches the uid of the record in IDB. If yes, record it as 1; otherwise, record it as 0. If no record is matched through IDB, also record it as 0.
[0161] Furthermore, based on the above matching results, it can be determined that: if the specific value is 100111, it belongs to the reference device identifier conflict category; if the specific value is 011111, it belongs to the reference device identifier split category; if the specific value is 111100, it belongs to the device identifier conflict category; and if the specific value is 111011, it belongs to the device identifier split category. Specific example diagrams can be found in the image below. Figure 4 As shown in Table 2 below, the specific storage of the matching results on the server is also as follows:
[0162] Table 2
[0163]
[0164]
[0165] Furthermore, after obtaining the device category of the terminal devices, it is also necessary to predict the number of users based on the device category. For details, please refer to... Figure 5 As shown, the specific process for predicting the number of users can be implemented in the following way:
[0166] Step S510: Determine the device identifier conflict probability of the terminal device based on the reference device identifier conflict category and the device identifier conflict category to be detected; wherein, the device identifier conflict probability includes the reference device identifier conflict probability and the device identifier conflict probability to be detected.
[0167] Step S520: Determine the device identifier split probability of the terminal device based on the reference device identifier split category and the device identifier split category to be detected; wherein, the device identifier split probability includes the reference device identifier split probability and the device identifier split probability to be detected.
[0168] Step S530: Predict the number of users of the target application based on the device identifier conflict probability and the device identifier split probability.
[0169] In one example embodiment, the specific calculation process for the reference device identifier split probability and the reference device identifier conflict probability can be implemented as follows: Sampling is performed on the terminal devices included in the reference device identifier conflict category and the reference device identifier split category to obtain a first device sampling result; based on the number of first sub-devices corresponding to the reference device identifier conflict category and the number of second sub-devices corresponding to the reference device identifier split category included in the first device sampling result, the first device identifier split probability and the first device identifier conflict probability of the first device sampling result are determined; based on the first device identifier split probability, a first total number of devices corresponding to the reference device identifier conflict category is determined, and based on the first device identifier conflict probability, a second total number of devices corresponding to the reference device identifier split category is determined; based on the first total number of devices, the reference device identifier split probability is determined, and based on the second total number of devices, the reference device identifier conflict probability is determined.
[0170] In one example embodiment, the specific calculation process for the probability of device identifier splitting and the probability of device identifier conflict can be implemented as follows: Sampling is performed on the terminal devices included in the conflict category and the split category of device identifier to obtain a second device sampling result; based on the number of third sub-devices corresponding to the conflict category and the number of fourth sub-devices corresponding to the split category of device identifier to be detected included in the second device sampling result, the probability of device identifier splitting and the probability of device identifier conflict in the second device sampling result are determined; based on the probability of device identifier splitting, a third total number of devices corresponding to the conflict category of device identifier to be detected is determined, and based on the probability of device identifier conflict, a fourth total number of devices corresponding to the split category of device identifier to be detected is determined; based on the third total number of devices, the probability of device identifier splitting is determined, and based on the fourth total number of devices, the probability of device identifier conflict is determined.
[0171] The following will further explain the specific process of predicting the number of users. Specifically: First, sample each group except C=OK, for example, 100 samples. Second, for each sample, combine it with the reported environmental information c to determine whether it belongs to a split or conflict of IDA or IDB. Further, calculate the split rate and conflict rate for each group except C=OK. Finally, for each group except C=OK, calculate the total number of splits and conflicts within that group based on the calculated split and conflict rates, sum them up, and divide the total number of splits and conflicts by the total number of samples to obtain the split rate and conflict rate of IDA or IDB. After obtaining the corresponding split and conflict rates, the corresponding number of users can be predicted. Based on this number of users, the bandwidth resources required by users during access can be predicted, thereby improving the user experience.
[0172] Thus, the method for determining device categories described in the exemplary embodiments of this disclosure has been fully implemented. Based on the foregoing description, the method for determining device categories described in the exemplary embodiments of this disclosure has at least the following advantages: Firstly, by introducing additional reference device identifiers and combining group drill-down with specific sampling analysis, the accuracy of evaluating device conflict rate and split rate is significantly improved; secondly, regarding the problem of "traditional random ID schemes failing to identify APP data copying," since the random ID in this scheme is only used for conflict rate and sampling rate analysis of each group, and device environment information is also comprehensively considered during analysis, application data copying will not affect the accuracy of the calculation results of this scheme; furthermore, it not only... Introducing multiple different reference IDs to evaluate the device ID under test can fully assess the splitting conflict problem. Furthermore, IDs based on different implementation algorithms can also be used for evaluation, such as simultaneously using device IDs generated based on strong feature acquisition and those calculated based on weak feature acquisition algorithms as references. This can also fully assess the splitting conflict problem. Further, for splitting conflict problems, drilling down to specific scenarios can help improve the device ID generation algorithm. For example, based on reported runtime information, user behavior can be inferred to some extent, thus helping to determine what kind of behavior caused the device ID splitting conflict. The scenario can also be reproduced through testing for further analysis.
[0173] Exemplary device
[0174] This disclosure also provides an apparatus for determining a device category. Specifically, refer to... Figure 6 As shown, the device for determining the device category may include a data information parsing module 610, a device identifier matching module 620, and a device category determination module 630. Wherein:
[0175] The data information parsing module 610 can be used to receive current data information reported by the terminal device, and parse the current data information to obtain the identifier of the device to be detected and the identifier of the reference device associated with the terminal device.
[0176] The device identifier matching module 620 can be used to match a first historical device identifier corresponding to the reference device identifier in a preset device identifier database to obtain a first identifier matching result, and a second historical device identifier corresponding to the device identifier to be detected to obtain a second identifier matching result;
[0177] The device category determination module 630 can be used to determine the device category to which the terminal device belongs based on the first identifier matching result and the second identifier matching result.
[0178] In one exemplary embodiment of this disclosure, the preset device identifier database includes a reference device identifier database and a detected device identifier database; wherein, matching a first historical device identifier corresponding to the device identifier to be detected in the preset device identifier database to obtain a first identifier matching result, and matching a second historical device identifier corresponding to the reference device identifier to obtain a second identifier matching result, includes: matching a first historical device identifier corresponding to the reference device identifier in the reference device identifier database to obtain a first identifier matching result; and matching a second historical device identifier corresponding to the device identifier to be detected in the detected device identifier database to obtain a second identifier matching result.
[0179] In one exemplary embodiment of this disclosure, determining the device category to which the terminal device belongs based on the first identifier matching result and the second identifier matching result includes: determining whether the first identifier matching result and the second identifier matching result are completely consistent; if the first identifier matching result and the second identifier matching result are completely consistent, then determining that the device category to which the terminal device belongs is a newly added device category or a historical device category; if the first identifier matching result and the second identifier matching result are inconsistent, then determining that the device category to which the terminal device belongs is a device identifier conflict category or a device identifier split category.
[0180] In an exemplary embodiment of this disclosure, the newly added device category and the historical device category are determined as follows: if the first identifier matching result is that a first historical device identifier corresponding to the reference device identifier exists in the reference device identifier database, and the second identifier matching result is that a second historical device identifier corresponding to the device identifier to be detected exists in the detected device identifier database, then the device category to which the terminal device belongs is the historical device category; if the first identifier matching result is that a first historical device identifier corresponding to the reference device identifier does not exist in the reference device identifier database, and the second identifier matching result is that a second historical device identifier corresponding to the device identifier to be detected does not exist in the detected device identifier database, then the device category to which the terminal device belongs is the historical device category.
[0181] In one exemplary embodiment of this disclosure, the device identifier conflict category includes a reference device identifier conflict category or a device identifier conflict category to be detected; the device identifier split category includes a reference device identifier split category or a device identifier split category to be detected.
[0182] In an exemplary embodiment of this disclosure, the reference device identifier conflict category and the reference device identifier split category are determined as follows: if the first identifier matching result indicates that a first historical device identifier corresponding to the reference device identifier exists in the reference device identifier database, and the historical runtime environment information in the reference device identifier database is inconsistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the reference device identifier conflict category; if the first identifier matching result indicates that a first historical device identifier corresponding to the reference device identifier does not exist in the reference device identifier database, and the historical runtime environment information in the reference device identifier database is consistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the reference device identifier split category.
[0183] In an exemplary embodiment of this disclosure, the conflict category and the split category of the device identifier to be detected are determined as follows: if the second identifier matching result indicates that a second historical device identifier corresponding to the device identifier to be detected exists in the detected device identifier database, and the historical runtime environment information in the detected device identifier database is inconsistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the conflict category of the device identifier to be detected; if the second identifier matching result indicates that a second historical device identifier corresponding to the device identifier to be detected does not exist in the detected device identifier database, and the historical runtime environment information in the detected device identifier database is consistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the split category of the device identifier to be detected.
[0184] In one exemplary embodiment of this disclosure, the device category determination apparatus further includes:
[0185] The device identifier conflict probability determination module is used to determine the device identifier conflict probability of the terminal device based on the reference device identifier conflict category and the device identifier conflict category to be detected; wherein, the device identifier conflict probability includes the reference device identifier conflict probability and the device identifier conflict probability to be detected.
[0186] The device identifier split probability determination module is used to determine the device identifier split probability of the terminal device based on the reference device identifier split category and the device identifier split category to be detected; wherein, the device identifier split probability includes the reference device identifier split probability and the device identifier split probability to be detected.
[0187] The user number prediction module is used to predict the number of users of the target application based on the device identifier conflict probability and the device identifier split probability.
[0188] In an exemplary embodiment of this disclosure, the reference device identifier split probability and the reference device identifier conflict probability are obtained as follows: Sampling is performed on the terminal devices included in the reference device identifier conflict category and the reference device identifier split category to obtain a first device sampling result; based on the number of first sub-devices corresponding to the reference device identifier conflict category and the number of second sub-devices corresponding to the reference device identifier split category included in the first device sampling result, the first device identifier split probability and the first device identifier conflict probability of the first device sampling result are determined; based on the first device identifier split probability, a first total number of devices corresponding to the reference device identifier conflict category is determined, and based on the first device identifier conflict probability, a second total number of devices corresponding to the reference device identifier split category is determined; based on the first total number of devices, the reference device identifier split probability is determined, and based on the second total number of devices, the reference device identifier conflict probability is determined.
[0189] In one exemplary embodiment of this disclosure, the current data information is generated by the terminal device in the following manner: generating a device identifier to be detected and a reference device identifier for the terminal device, and collecting the current runtime environment information of the terminal device when running the target application; wherein, the current runtime environment information includes a local web page data list, an Internet Protocol address, and local random data associated with the local web page data and the Internet Protocol address; and generating the current data information based on the device identifier to be detected, the reference device identifier, the local web page data list, the Internet Protocol address, and the local random data.
[0190] In one exemplary embodiment of this disclosure, generating a device identifier to be detected and a reference device identifier for the terminal device includes: in response to the running operation of a target application on the terminal device, invoking a first identifier generation function corresponding to the device identifier to be detected and a second identifier generation function corresponding to the reference device identifier integrated in the target application; generating the device identifier to be detected based on the first identifier generation function, and generating the reference device identifier based on the device feature information of the terminal device based on the second identifier generation function.
[0191] In one exemplary embodiment of this disclosure, the second identifier generation function includes a second strong feature generation function and / or a second weak feature generation function; the reference device identifier includes a strong feature reference device identifier and / or a weak feature reference device identifier; wherein, generating the reference device identifier based on the device feature information of the terminal device according to the second identifier generation function includes: obtaining strong device features and weak device features of the terminal device; wherein, the strong device features include at least one of International Mobile Identifier (IMI), Advertising Identifier (IUI), Anonymous Identifier (ANI), and Custom Device Identifier (CDI); the weak device features include at least one of device memory information, device system information, and device battery information; generating the strong feature reference device identifier based on the strong device features according to the second strong feature generation function, and / or generating the weak feature reference device identifier based on the weak device features according to the second weak feature generation function.
[0192] Exemplary storage media
[0193] After introducing the device category determination method and device category determination apparatus according to exemplary embodiments of the present disclosure, the following will refer to... Figure 7 The storage medium of the exemplary embodiments of this disclosure will be described.
[0194] refer to Figure 7 As shown, a program product 700 for implementing the above-described method according to an embodiment of the present disclosure is described. This product may employ a portable compact disc read-only memory (CD-ROM) and include program code, and may run on a terminal device, such as a personal computer. However, the program product of the present disclosure is not limited thereto.
[0195] The program product may employ any combination of one or more readable media. A 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 electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0196] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium.
[0197] Program code for performing the operations of this disclosure can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's computing device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing devices can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN).
[0198] Exemplary electronic devices
[0199] Having described the storage medium of exemplary embodiments of this disclosure, the following references are made. Figure 7 An electronic device according to an exemplary embodiment of the present disclosure will be described.
[0200] Figure 8 The electronic device 800 shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments disclosed herein.
[0201] like Figure 8 As shown, the electronic device 800 is presented in the form of a general-purpose computing device. The components of the electronic device 800 may include, but are not limited to: at least one processing unit 810, at least one storage unit 820, a bus 830 connecting different system components (including storage unit 820 and processing unit 810), and a display unit 840.
[0202] The storage unit 820 stores program code that can be executed by the processing unit 810, causing the processing unit 810 to perform the steps described in the "Exemplary Methods" section of this specification according to various exemplary embodiments of this disclosure. For example, the processing unit 810 can perform actions such as... Figure 1 Steps S110-S130 are shown in the diagram.
[0203] Storage unit 820 may include volatile storage units, such as random access memory (RAM) 8201 and / or cache memory 8202, and may further include read-only memory (ROM) 8203.
[0204] Storage unit 820 may also include a program / utility 8204 having a set (at least one) of program modules 8205, such program modules 8205 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of these examples may include an implementation of a network environment. Bus 830 may include a data bus, an address bus, and a control bus.
[0205] Electronic device 800 can also communicate with one or more external devices 900 (e.g., keyboards, pointing devices, Bluetooth devices, etc.) via input / output (I / O) interface 850. Furthermore, electronic device 800 can communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via network adapter 860. As shown in the figure, network adapter 860 communicates with other modules of electronic device 800 via bus 830. It should be understood that, although not shown in the figure, other hardware and / or software modules can be used in conjunction with electronic device 800, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0206] It should be noted that although several units / modules or sub-units / modules of the apparatus have been mentioned in the detailed description above, this division is merely exemplary and not mandatory. In fact, according to embodiments of this disclosure, the features and functions of two or more units / modules described above can be embodied in one unit / module. Conversely, the features and functions of one unit / module described above can be further divided and embodied by multiple units / modules.
[0207] Furthermore, although the operations of the methods disclosed herein are described in a specific order in the accompanying drawings, this does not require or imply that these operations must be performed in that specific order, or that all of the operations shown must be performed to achieve the desired result. Additionally or alternatively, certain steps may be omitted, multiple steps may be combined into one step, and / or one step may be broken down into multiple steps.
[0208] While the spirit and principles of this disclosure have been described with reference to several specific embodiments, it should be understood that this disclosure is not limited to the disclosed specific embodiments, and the division of aspects does not imply that features in these aspects cannot be combined for benefit; such division is merely for convenience of expression. This disclosure is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.
Claims
1. A method for determining equipment category, characterized in that, include: Receive current data information reported by the terminal device, and parse the current data information to obtain the identifier of the device to be detected and the identifier of the reference device associated with the terminal device; A first identifier matching result is obtained by matching a first historical device identifier corresponding to the reference device identifier in a preset device identifier database, and a second identifier matching result is obtained by matching a second historical device identifier corresponding to the device identifier to be detected. Based on the first identifier matching result and the second identifier matching result, the device category to which the terminal device belongs is determined.
2. The method for determining equipment category according to claim 1, characterized in that, The preset device identification database includes a reference device identification database and a detected device identification database; Specifically, the process of matching a first historical device identifier corresponding to the device identifier to be detected with a preset device identifier database to obtain a first identifier matching result, and matching a second historical device identifier corresponding to the reference device identifier to obtain a second identifier matching result, includes: A first identifier matching result is obtained by matching the first historical device identifier corresponding to the reference device identifier in the reference device identifier database; A second identifier matching result is obtained by matching the second historical device identifier corresponding to the identifier of the device to be detected in the detected device identifier database.
3. The method for determining equipment category according to claim 1, characterized in that, Based on the first identifier matching result and the second identifier matching result, the device category to which the terminal device belongs is determined, including: Determine whether the first identifier matching result and the second identifier matching result are completely consistent; If the first identifier matching result and the second identifier matching result are completely consistent, then the device category to which the terminal device belongs is determined to be either a newly added device category or a historical device category; If the first identifier matching result and the second identifier matching result are inconsistent, the device category to which the terminal device belongs is determined to be a device identifier conflict category or a device identifier split category.
4. The method for determining equipment category according to claim 3, characterized in that, The newly added equipment categories and historical equipment categories are determined in the following way: If the first identifier matching result is that a first historical device identifier corresponding to the reference device identifier exists in the reference device identifier database, and the second identifier matching result is that a second historical device identifier corresponding to the device identifier to be detected exists in the detected device identifier database, then the device category to which the terminal device belongs is the historical device category; If the first identifier matching result is that there is no first historical device identifier corresponding to the reference device identifier in the reference device identifier database, and the second identifier matching result is that there is no second historical device identifier corresponding to the device identifier to be detected in the detected device identifier database, then the device category to which the terminal device belongs is the historical device category.
5. The method for determining equipment category according to claim 3, characterized in that, The device identifier conflict category includes either the reference device identifier conflict category or the device identifier conflict category to be tested; the device identifier split category includes either the reference device identifier split category or the device identifier split category to be tested.
6. The method for determining equipment category according to claim 5, characterized in that, The reference device identifier conflict category and the reference device identifier split category are determined in the following way: If the first identifier matching result is that there is a first historical device identifier corresponding to the reference device identifier in the reference device identifier database, and the historical runtime environment information in the reference device identifier database is inconsistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be a reference device identifier conflict category; If the first identifier matching result is that there is no first historical device identifier corresponding to the reference device identifier in the reference device identifier database, and the historical runtime environment information in the reference device identifier database is consistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the reference device identifier split category.
7. The method for determining the equipment category according to claim 5, characterized in that, The conflict category and split category of the device identifier under test are determined as follows: If the second identifier matching result is that there is a second historical device identifier in the detected device identifier database that corresponds to the device identifier to be detected, and the historical runtime environment information in the detected device identifier database is inconsistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the device identifier conflict category to be detected; If the second identifier matching result is that there is no second historical device identifier corresponding to the device identifier to be detected in the detected device identifier database, and the historical runtime environment information in the detected device identifier database is consistent with the current runtime environment information in the current data information, then the device category to which the terminal device belongs is determined to be the split category of the device identifier to be detected.
8. A device for determining the category of equipment, characterized in that, include: The data information parsing module is used to receive the current data information reported by the terminal device, and parse the current data information to obtain the identifier of the device to be detected and the identifier of the reference device associated with the terminal device. The device identifier matching module is used to match a first historical device identifier corresponding to the reference device identifier in a preset device identifier database to obtain a first identifier matching result, and a second historical device identifier corresponding to the device identifier to be detected to obtain a second identifier matching result; The device category determination module is used to determine the device category to which the terminal device belongs based on the first identifier matching result and the second identifier matching result.
9. A computer-readable storage medium, characterized in that, It stores a computer program that, when executed by a processor, implements the method for determining the device category as described in any one of claims 1-7.
10. An electronic device, characterized in that, include: processor; as well as Memory for storing the executable instructions of the processor; The processor is configured to execute the method for determining the device category according to any one of claims 1-7 by executing the executable instructions.
Citation Information
Patent Citations
Equipment identification method and device, electronic equipment and storage medium
CN108363811A
Identity recognition method and device, electronic equipment and storage medium
CN112765588A
Device fingerprint determination method and device, device, storage medium and program product
CN115168919A
Equipment identifier identification method and device, server and storage medium
CN115273161A
Methods and systems for identifying multiple devices belonging to a single user by merging deterministic and probabilistic data to generate a cross device data structure
US20180081960A1