Detection method, user equipment, server, readable medium and program product
By detecting signaling sent by network devices in the terminal device and combining it with the mobile country code to determine the roaming scenario, the problem of terminal devices being unable to identify network access anomalies when roaming fails is solved, enabling accurate fault prompts and solution provision, and improving user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HONOR DEVICE CO LTD
- Filing Date
- 2024-10-14
- Publication Date
- 2026-04-21
AI Technical Summary
Existing terminal device communication detection functions cannot detect network access anomalies caused by roaming failures, preventing users from obtaining specific solutions and impacting user experience.
By implementing a communication detection function in the terminal device, the roaming failure reason value in the signaling sent by the network device is obtained. The mobile country code of the user device and the country code of the SIM card are combined to determine whether the user is in a roaming scenario. When a roaming failure reason value is detected, the user is shown the reason for the failure and a solution is provided.
It accurately identifies and prompts users that the reason for network access failure is roaming failure, provides corresponding solutions, and improves the user experience of the device.
Smart Images

Figure CN121908309A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, specifically to a detection method, user equipment, server, readable medium, and program product. Background Technology
[0002] Currently, some terminal devices offer users a device detection function. Specifically, users may encounter problems while using the terminal device, such as the inability to use communication functions or screen rotation. In this scenario, the terminal device can use the device detection function to determine the cause of the problem and provide the user with corresponding solutions.
[0003] For example, device detection functions may include communication and network detection functions (hereinafter referred to as communication detection functions). Communication detection functions can be used to determine the specific reasons for abnormal network access and provide corresponding solutions. For instance, based on this communication detection function, a terminal device can determine that there is no subscriber identity module (SIM) card in the card slot, and then prompt the user to insert a SIM card to access the network.
[0004] However, the communication detection function may fail to detect network access anomalies caused by roaming failures. Specifically, in scenarios where a terminal device uses a SIM card from a first operator to access the network, if the terminal device moves to the network coverage area of a second operator, and there is no roaming agreement between the first and second operators, the terminal device will be unable to roam to the network provided by the second operator using the first operator's SIM card; that is, the terminal device will be unable to access the network due to roaming failure. In this scenario, even if the user uses the communication detection function, they will not be able to determine the specific reason for the network access failure, and consequently, will not be able to obtain corresponding solutions to the problem. Summary of the Invention
[0005] This application provides a detection method, user equipment, server, readable medium, and program product that can detect network access anomalies caused by roaming failure.
[0006] In a first aspect, this application provides a detection method applied to a user equipment. The method includes: network access failure at a first location; obtaining a first detection instruction from the user, wherein the first detection instruction is used to instruct network fault detection; corresponding to determining that the user equipment is in a roaming scenario, obtaining at least one signaling sent by a network device; determining that a first cause value included in the at least one signaling indicates roaming failure; based on the first cause value, determining that the reason for the network access failure of the user equipment at the first location is roaming failure; and displaying to the user the detection result corresponding to the first detection instruction as roaming failure.
[0007] Here, in the case of network access failure and receiving the user's first detection command, the user equipment can determine that the network access failure at the first location is due to roaming failure based on at least one first cause value sent by the network device in the roaming scenario, indicating roaming failure. Furthermore, the detection result can be displayed to the user as roaming failure, informing the user that the current network access failure is due to roaming failure, and providing the user with corresponding solutions. Based on the above scheme, a communication detection function capable of detecting network access anomalies caused by roaming failure can be implemented. This fills the gap in the user equipment's communication detection function's inability to detect network access anomalies caused by roaming failure, enabling the user equipment to be prompted with the cause of failure and solutions when unable to access the network due to roaming failure, thus improving the user experience.
[0008] The user equipment can be a terminal device, such as mobile phone 10 as described below. The network device can be a base station, such as base station 20 as described below. The first location can be the current location of the user equipment, for example, a location within the network coverage area of the second operator to which the user equipment has moved. The user equipment can determine that network access at the first location has failed based on receiving the access failure instruction sent by the network device. The first detection instruction can be an instruction for triggering the communication detection function, such as a click operation on control 100b as described below. The user equipment can implement network fault detection based on the communication detection function. The signaling sent by the network device can include the access failure signaling, and the first reason value can be the reason value corresponding to roaming failure, that is, the first reason value can be the reason value in the roaming failure signaling.
[0009] In one possible implementation of the first aspect above, determining that the user equipment is in a roaming scenario includes: determining that the user equipment is in a roaming scenario because the first mobile country code corresponding to the first location is different from the second mobile country code of the first SIM card; wherein the first mobile country code is sent by the network device when the user equipment enters the network coverage area of the network device, and the network coverage area of the network device includes the first location; wherein the first SIM card includes the SIM card used by the user equipment to access the network at the first location.
[0010] Here, when a user equipment (UE) enters the network coverage area of a network device, it receives a first mobile country code sent by the network device. Furthermore, the UE can store a second mobile country code corresponding to the SIM card it is using. Therefore, the UE can determine that it is currently in a roaming scenario based on the difference between the first and second mobile country codes. Specifically, this applies to international roaming scenarios between different countries. Based on the aforementioned method, the UE can accurately identify roaming scenarios; the implementation is simple and highly accurate.
[0011] The first mobile country code of the first location can be the MCC value in the system message sent by base station 20 below, and the second mobile country code of the first SIM card can be the MCC value in HPLMN below. The first SIM card can be the SIM card used by mobile phone 10 when sending an access request to base station 20 below, which is equivalent to the SIM card corresponding to the mobile data network used by mobile phone 10.
[0012] In one possible implementation of the first aspect above, determining that at least one signaling message includes a first cause value indicating roaming failure includes: receiving a list of cause values sent by a server, wherein the list of cause values includes one or more cause values corresponding to roaming failure; and determining that at least one signaling message includes a first cause value indicating roaming failure based on the list of cause values.
[0013] In one possible implementation of the first aspect above, at least one signaling includes a first signaling, and determining that a first cause value included in at least one signaling indicates roaming failure based on a list of cause values includes: determining that the first cause value included in the first signaling is located in the list of cause values, and determining that the first cause value indicates roaming failure.
[0014] Here, the user equipment can determine that the network access failure is due to roaming failure based on the receipt of at least one first signaling message. Here, the first signaling message includes a first reason value, which is a reason value corresponding to roaming failure located in the reason value list. It can be understood that this method can prevent missed detection of network access failures caused by roaming failures, reducing the false negative rate.
[0015] The server can be server 30 as described below, and the first signaling can be the roaming failure signaling as described below, that is, the access failure signaling carrying the reason value corresponding to the roaming failure.
[0016] In one possible implementation of the first aspect above, after acquiring at least one signaling sent by the network device, the method further includes: sending the first signaling to the server so that the server determines or updates the list of cause values.
[0017] In some embodiments, the user equipment can send at least one signaling message, including a first signaling message, to the server. The server then filters out the first signaling message from the at least one signaling message and determines the cause value corresponding to the roaming failure based on the first signaling message. This approach can reduce the workload of the user equipment.
[0018] In other embodiments, the user equipment may also send only the first signaling to the server, so that the servers can determine the cause value corresponding to the roaming failure based on the received first signaling. It is understood that this approach can reduce the workload on the server.
[0019] In one possible implementation of the first aspect above, determining that the reason for the user equipment's network access failure at the first location is roaming failure includes: corresponding to the fact that within the first statistical period, the number of times the user equipment receives the first reason value is greater than the second threshold, then determining that the reason for the user equipment's network access failure at the first location is roaming failure.
[0020] Here, a user equipment (UE) is only considered to have roaming failure as the cause of network access failure at the first location if the number of times it receives the first cause value exceeds the second threshold within the first statistical period. This method effectively improves the accuracy of determining roaming failure as the cause of network access failure and reduces the false alarm rate.
[0021] In one possible implementation of the first aspect above, determining that the reason for the user equipment's network access failure at the first location is roaming failure based on the first cause value includes: corresponding to the user equipment receiving the first cause value continuously within multiple first statistical periods included in the first statistical duration, and the number of times the user equipment receives the first cause value in each first statistical period being greater than the first count threshold, then determining that the reason for the user equipment's network access failure at the first location is roaming failure.
[0022] Here, a user equipment (UE) is only considered to have roaming failure as the cause of its network access failure at the first location if the number of times it receives the first cause value within each first statistical period exceeds the first threshold. This method can further improve the accuracy of determining roaming failure as the cause of network access failure and further reduce the false alarm rate.
[0023] In one possible implementation of the first aspect above, the method further includes: obtaining a second detection instruction from the user, wherein the second detection instruction is used to instruct the gravity sensor to perform fault detection; obtaining m data points collected by the gravity sensor in the user equipment within a first time period; determining that the gravity sensor is faulty if there are n adjacent identical data points among the m data points; wherein m ≥ n ≥ 2.
[0024] Here, the user equipment can implement a gravity sensor detection function based on the above, and this function can be used to detect gravity sensor faults. Specifically, by detecting adjacent and identical data among multiple collected data points, it can be determined that the gravity sensor has become stuck. In this way, gravity sensor stuck abnormalities can be identified simply and accurately.
[0025] The second detection instruction can be an instruction used to trigger the gravity sensor detection function, such as a click operation on control 800a as described below. The first duration can be a period of time as described in S701 below.
[0026] In one possible implementation of the first aspect above, after obtaining the method of acquiring m data points collected by the gravity sensor in the user equipment within a first time period, the above further includes: determining that the gravity sensor is faulty if at least one of the m data points exceeds a preset value range.
[0027] Here, the preset numerical range can be the preset numerical range in S705. Based on the aforementioned method, the gravity sensor detection function can also detect abnormal situations where the collected data is out of range.
[0028] In one possible implementation of the first aspect above, the method further includes: obtaining a third detection instruction from the user, wherein the third detection instruction is used to instruct the barometer to perform fault detection; obtaining multiple data collected by the barometer in the user equipment within a second time period; and determining that the barometer is faulty if the variance of the multiple data is greater than a preset variance threshold.
[0029] Here, the user equipment can implement a barometer detection function based on the above content, and this barometer detection function can be used to detect barometer faults. Specifically, if the variance of multiple collected data points is greater than a preset variance threshold, it can be determined that the barometer's collected pressure value has changed significantly in a short period of time, thus confirming that the barometer is malfunctioning. In this way, barometer malfunctions can be identified simply and accurately.
[0030] The second duration can be a period of time within S901.
[0031] In addition, after acquiring multiple data points collected by the barometer in the user equipment within a second time period, if at least one of the data points exceeds a preset value range, it can be determined that the barometer is faulty.
[0032] Based on the aforementioned method, the barometer detection function can also detect abnormal situations where the collected data is out of range.
[0033] Secondly, this application provides a detection method applied to a server. The method includes: receiving multiple reporting messages sent by multiple user devices, wherein the reporting messages include signaling received by the user devices during network access failure in a roaming scenario and sent by a network device, the signaling including a second cause value; selecting second cause values corresponding to roaming failure from the second cause values included in the signaling in the multiple reporting messages to form a cause value list; and sending the cause value list to the user devices.
[0034] Here, the server can determine a list of reason values based on access failure signaling received from multiple terminal devices. Specifically, the reason values that appear more frequently in the access failure signaling can be used as the reason values corresponding to roaming failures, thus forming a list of reason values. In this way, the list of reason values can be determined simply and relatively accurately.
[0035] In one possible implementation of the second aspect above, selecting second cause values corresponding to roaming failure from the second cause values included in the signaling in the multiple reported information to form a cause value list includes: determining the number of each different cause value among the second cause values included in the signaling in the multiple reported information; and selecting one or more cause values whose number is greater than a number threshold to form a cause value list.
[0036] Here, the server can use the most frequently occurring reason values as the reason values corresponding to roaming failures, and then form a list of reason values.
[0037] In one possible implementation of the second aspect above, selecting second cause values corresponding to roaming failure from the signaling included in the multiple reported information to form a cause value list includes: determining the proportion of each different cause value among all second cause values in the signaling included in the multiple reported information; sorting each different cause value in descending order according to its proportion; and selecting one or more cause values whose sum of proportions is greater than a preset proportion threshold in order from first to last to form a cause value list.
[0038] Here, the server can use the most frequent cause values as the cause values for roaming failures, and then compile a list of cause values.
[0039] Thirdly, this application provides a user equipment, including: one or more processors; one or more memories; the one or more memories storing one or more programs, which, when executed by one or more processors, cause the user equipment to perform the detection method provided by the first aspect and various possible implementations of the first aspect.
[0040] Fourthly, this application provides a server, including: one or more processors; one or more memories; the one or more memories storing one or more programs, which, when executed by one or more processors, cause the server to perform the detection method provided in the second aspect above and various possible implementations of the second aspect above.
[0041] Fifthly, this application provides a computer-readable medium storing instructions that, when executed on a computer, cause the computer to perform the detection method provided by the first aspect and various possible implementations thereof, as well as the second aspect and various possible implementations thereof.
[0042] In a sixth aspect, this application provides a computer program product, characterized in that it includes a computer program / instruction, which, when executed by a processor, implements the first aspect and various possible implementations of the first aspect, as well as the detection method provided by the second aspect and various possible implementations of the second aspect.
[0043] The beneficial effects of the third to sixth aspects mentioned above can be referred to the descriptions of the first aspect and its various possible implementations, as well as the second aspect and its various possible implementations, which will not be elaborated here. Attached Figure Description
[0044] Figure 1 The diagram shown is a scenario illustration of using the communication detection function provided in an embodiment of this application;
[0045] Figure 2 The diagram shown is a schematic representation of a communication system architecture for a mobile phone 10 according to an embodiment of this application.
[0046] Figure 3 The diagram shown is an interactive schematic diagram of implementing a communication detection function according to an embodiment of this application;
[0047] Figure 4 The diagram shown is a flowchart illustrating a process for determining that the reason for being unable to access the network is roaming failure, according to an embodiment of this application.
[0048] Figure 5 The image shown is a schematic diagram of the interface after applying the communication detection function according to an embodiment of this application;
[0049] Figure 6 The diagram shown is a flowchart illustrating a communication detection function based on a first database, according to an embodiment of this application.
[0050] Figure 7 The diagram shown is a flowchart illustrating a method for implementing a gravity sensor detection function according to an embodiment of this application.
[0051] Figure 8a The figure shown is a schematic diagram of an interface for implementing the gravity sensor detection function according to an embodiment of this application;
[0052] Figure 8b The figure shown is a schematic diagram of the interface after applying the gravity sensor detection function according to an embodiment of this application;
[0053] Figure 8c The figure shown is a schematic diagram of another interface after applying the gravity sensor detection function according to an embodiment of this application;
[0054] Figure 9The diagram shown is a flowchart illustrating a method for implementing a gravity sensor detection function according to an embodiment of this application.
[0055] Figure 10a The figure shown is a schematic diagram of an interface for implementing a barometer detection function according to an embodiment of this application;
[0056] Figure 10b The image shown is a schematic diagram of the interface after applying the barometer detection function according to an embodiment of this application;
[0057] Figure 10c The image shown is a schematic diagram of another interface after applying the barometer detection function according to an embodiment of this application;
[0058] Figure 11 The diagram shown is a structural schematic of a mobile phone 10 provided in an embodiment of this application. Detailed Implementation
[0059] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions in the embodiments of this application will be described in detail below with reference to the accompanying drawings and specific implementation methods.
[0060] To facilitate understanding of the solutions in the embodiments of this application by those skilled in the art, some concepts and terms involved in the embodiments of this application will be explained below.
[0061] (1) Public Land Mobile Network (PLMN): This refers to a public wireless network that provides mobile communication services. A PLMN may include a mobile country code (MCC) and a mobile network code (MNC). The MCC identifies the country to which the network belongs; for example, 460 represents China. The MNC identifies the specific operator; for example, 00 represents China Mobile, and 01 represents China Unicom.
[0062] (2) Home Public Land Mobile Network (HPLMN): One type of PLMN refers to the public wireless network provided by the operator to which the SIM card of the terminal device belongs. In HPLMMN, the MNC is used to identify the operator to which the SIM card of the terminal device belongs (hereinafter referred to as the "first operator").
[0063] (3) Roaming: refers to the phenomenon that when a terminal device leaves the network coverage area of the HPLMN and moves to the network coverage area provided by a third operator, the terminal device can register with the network provided by the third operator based on the SIM card due to the roaming agreement between the first operator and the third operator, and thus continue to access the network within the network coverage area of the third operator.
[0064] Conversely, if the terminal device leaves the HPLMN's network coverage area and moves to a network coverage area provided by a second operator, and there is no roaming agreement between the first and second operators, the terminal device will be unable to register with the second operator's network based on its SIM card. Consequently, the terminal device will be unable to access the network within the second operator's network coverage area. It can be understood that the reason the terminal device cannot access the network in this case is roaming failure.
[0065] Currently, since all operators can support nationwide network coverage, roaming usually refers to international roaming, that is, when a terminal device leaves the country corresponding to its HPLMN and moves to another country. Accordingly, the countries corresponding to the aforementioned second and third operators are different from the countries corresponding to the first operator.
[0066] (4) Roaming agreement: refers to a cooperation agreement signed between different operators, which allows terminal devices to continue to use mobile communication services through PLMNs provided by other operators, in addition to the HPLMN provided by the first operator.
[0067] It is understood that the terminal device in the embodiments of this application may also be referred to as a terminal, user equipment (UE), mobile station (MS), mobile terminal (MT), etc. The terminal device can be a mobile phone, smart TV, wearable device, tablet computer, computer with wireless transceiver function, virtual reality (VR) terminal device, augmented reality (AR) terminal device, wireless terminal in industrial control, wireless terminal in self-driving, wireless terminal in remote medical surgery, wireless terminal in smart grid, wireless terminal in transportation safety, wireless terminal in smart city, wireless terminal in smart home, etc. The following description uses a mobile phone as an example to illustrate the detection method provided in the embodiments of this application.
[0068] Based on the foregoing, Figure 1 A schematic diagram of a scenario in which a mobile phone 10 uses the communication detection function is shown.
[0069] See Figure 1 Mobile phone 10 may move from the network coverage area of the first operator to the network coverage area of the aforementioned second operator. Furthermore, there is no roaming agreement between the first and second operators. In this case, mobile phone 10 will fail to access the network because it cannot roam to the network provided by the second operator, and correspondingly, a "network access unavailable" indicator may be displayed in the display area 100a of mobile phone 10.
[0070] Furthermore, after discovering that mobile phone 10 cannot access the network, the user can use the communication detection function in mobile phone 10 to locate the specific reason for the inability to access the network. For example, mobile phone 10 may trigger the device detection function based on user operation, displaying the device detection interface 100. The device detection interface 100 includes a control 100b, which can be used to trigger the aforementioned communication detection function, and the control 100b can display the prompt "Communication and Network". Here, the device detection function can be implemented by a functional module in a system application or a third-party application. For example, the device detection function can be implemented based on the device detection module in a system application. For instance, the device detection function can be implemented by the "Smart Detection" module in My Device. Alternatively, the device detection function can also be implemented by an independent system application or a third-party application. This application does not limit the specific implementation of the device detection function; in other embodiments, the device detection function can also be implemented as a mini-program, webpage, etc.
[0071] Here, the mobile phone 10 may detect the user's click operation on the control 100b, and then analyze the reason for the inability to access the network based on the communication detection function, and display the analyzed reason and solution in the display area 101a of the detection result interface 101.
[0072] However, because the communication detection function of the phone 10 cannot detect roaming failures, the phone 10 may display "No specific cause of the abnormality detected" or other prompts during roaming scenarios. (See reference...) Figure 1 The message displayed in area 101a of the test results interface 101 indicates that in roaming scenarios, the mobile phone 10 is unable to pinpoint the reason for the network access failure or provide a corresponding solution, thus affecting the user experience.
[0073] Here, the aforementioned roaming scenario refers to the scenario where mobile phone 10 leaves the network coverage area of the first operator and moves to the network coverage area provided by another operator. Based on the foregoing, roaming is usually international roaming. Therefore, the roaming scenarios mentioned below may include scenarios where mobile phone 10 leaves the country corresponding to the first operator and moves to another country to continue using the first operator's SIM card to access the network.
[0074] To address the aforementioned issues, this application provides a detection method that enables a terminal device to detect network access failure as a roaming failure. Specifically, after receiving a signaling message (hereinafter referred to as "access failure signaling") from a base station indicating network access failure, the terminal device can record the cause value carried in the access failure signaling. This cause value is defined by the communication protocol and can be used to determine the specific cause of the network access failure. However, in a roaming failure scenario, the base station may send multiple different cause values to the terminal device, and some of these cause values are related to the terminal device's roaming failure (e.g., cause value 14, cause value 13, etc.). Other cause values are unrelated to the terminal device's roaming failure (e.g., cause value 38, cause value 27, etc.). Therefore, the detection method provided by this application enables the terminal device to determine the cause value corresponding to the roaming failure. Furthermore, when the terminal device determines that the user has triggered the communication detection function, it can first determine whether the current scenario is a roaming scenario. If the current scenario is determined to be a roaming scenario, the terminal device can further determine whether its recorded cause values include the cause value corresponding to the roaming failure. If so, the terminal device can determine that the inability to access the network is due to roaming failure. Furthermore, the terminal device can use its communication detection function to inform the user that the inability to access the network is due to roaming failure and provide corresponding solutions. For example, it can suggest that the user call their operator to activate roaming service, or suggest that the user obtain a SIM card from the operator in the location of the terminal device.
[0075] Here, the aforementioned access failure signaling may include various signaling messages carrying a reason value that the terminal device may receive. For example, it may include attachReject signaling, locationUpdateReject signaling, etc. This application does not specify any particular type of access failure signaling.
[0076] Below, we will first explain in detail how to determine the cause value corresponding to roaming failure.
[0077] Based on the foregoing, in scenarios where terminal device roaming fails, the base station may send various cause values to the terminal device. Some of these cause values are related to roaming failure; specifically, the base station might send cause value 14 (roaming restriction) due to not supporting roaming for the terminal device, or cause value 13 (unallocated number) due to not supporting roaming call services for the terminal device. Other cause values are unrelated to roaming failure; specifically, the base station might send cause value 38 (network failure) or cause value 27 (destination out of order) to the terminal device due to network failure.
[0078] It is understandable that in scenarios where roaming fails, the higher the proportion of partial cause values sent by the base station among all cause values, the more likely that partial cause value is related to the roaming failure of the terminal device. Therefore, the detection method provided in this application can acquire all cause values received by multiple terminal devices in roaming failure scenarios, count the number of times different cause values are received, and then determine the proportion of different cause values in the total number of received cause values, and identify one or more cause values with the highest proportion as the cause values corresponding to roaming failure. In one example, a server can receive access failure signaling received by multiple terminal devices in roaming failure scenarios. The server can then record the different cause values carried in all received access failure signaling and count the number of access failure signaling carrying each cause value. Furthermore, the server can determine the proportion of the number of access failure signaling carrying each cause value in all received access failure signaling to determine the proportion of each cause value. Therefore, the server can identify one or more cause values with the highest proportion as the cause values corresponding to roaming failure and send the cause values corresponding to roaming failure to the terminal device, so that the terminal device can detect that the network access failure is caused by roaming failure based on the cause values corresponding to roaming failure.
[0079] The following section details the methods for determining roaming scenarios.
[0080] In international roaming scenarios, the presence of a terminal device in a roaming environment can be determined by comparing the country corresponding to its HPLMN with the country of the network coverage area it is in. Specifically, after entering a network coverage area, the terminal device receives system information sent by the base station of that area via the broadcast control channel (BCCH). This system message includes the MCC value corresponding to the network coverage area. Therefore, based on the discrepancy between the MCC value in the HPLMN and the MCC value in the system message, the terminal device can determine that the country corresponding to its HPLMN is different from the country of the network coverage area, thus confirming that it is currently in a roaming environment.
[0081] The following is a detailed explanation of how terminal devices determine that network access failure is due to roaming failure.
[0082] In some embodiments, the terminal device may determine that the network access failure is due to roaming failure based on the receipt of at least one roaming failure signaling. In other embodiments, the terminal device may also determine that the network access failure is due to roaming failure based on the number of roaming failure signaling received within a preset time period exceeding a preset threshold. Here, the aforementioned roaming failure signaling includes access failure signaling carrying a reason value corresponding to the reason value of roaming failure.
[0083] Specifically, in some embodiments, when the terminal device determines that a user has triggered the communication detection function, if it determines that the previously received access failure signaling includes roaming failure signaling, then the reason for the network access failure can be determined to be roaming failure. For example, after determining that a user has triggered the communication detection function, the terminal device can search for access failure signaling received within a preset search period (1 hour, 12 hours, 1 day, 3 days, etc.) before the user triggered the communication detection function to see if it includes roaming failure signaling. If it does, then the reason for the network access failure can be determined to be roaming failure. It can be understood that this method can prevent missed detection of network access failures caused by roaming failures and reduce the false negative rate.
[0084] In other embodiments, when the terminal device determines that a user has triggered the communication detection function, if it determines that the number of roaming failure signaling messages received within a preset time period is greater than a preset threshold, then the reason for network access failure can be determined to be roaming failure. For example, after determining that a user has triggered the communication detection function, the terminal device can search for whether roaming failure signaling messages are included in the access failure signaling messages received within a preset search time period (1 hour, 12 hours, 1 day, 3 days, etc.) before the user triggered the communication detection function, and whether the number of roaming failure signaling messages is greater than a preset threshold. If it is greater than the preset threshold, then the reason for network access failure can be determined to be roaming failure. It can be understood that this method can improve the accuracy of determining that the reason for network access failure is roaming failure and reduce the false alarm rate.
[0085] Alternatively, after determining that a user has triggered the communication detection function, the terminal device can retrieve access failure signaling received within multiple periods encompassed by a preset retrieval duration prior to the user triggering the communication detection function. This determines whether roaming failure signaling was received in each period and whether the number of received roaming failure signaling is greater than a preset threshold. For example, the terminal device can retrieve access failure signaling received for each day within the 7 days prior to the user triggering the communication detection function. If the number of roaming failure signaling received for each day within those 7 days is greater than the preset threshold, then the cause of the network access failure can be determined to be roaming failure. This method can be understood to further improve the accuracy of determining roaming failure as the cause of network access failure and reduce the false alarm rate.
[0086] Furthermore, the device detection function implemented based on the detection method provided in this application may also include a hardware detection function to detect whether there are any abnormalities in the hardware components of the terminal device. Here, the aforementioned hardware components may include sensors, physical buttons, virtual buttons, cameras, displays, speakers, etc., and the aforementioned sensors may include gravity sensors, barometers, etc.
[0087] The following section uses the hardware detection functions, including a gravity sensor detection function for detecting gravity sensors and a barometer detection function for detecting barometers, as examples to describe in detail the method for detecting whether hardware components are abnormal based on the detection method provided in this application.
[0088] Specifically, when a user discovers an abnormality in the switching between portrait and landscape modes on the terminal device, or when other functions based on the gravity sensor malfunction, the user can trigger the gravity sensor detection function so that the terminal device can detect the gravity sensor according to this function.
[0089] In one detection method of gravity sensor, the terminal device can record multiple data collected by the gravity sensor within a certain period of time (e.g., 1 second, 2 seconds, etc.) and determine whether there are abnormalities such as the gravity sensor being stuck or the data being collected out of range based on the multiple data collected.
[0090] For example, because gravity sensors can sensitively detect minute changes in the motion state of a terminal device, even when the device is nearly stationary, such as when it is placed horizontally, the data collected by the gravity sensor will still change slightly. For instance, when the device is nearly stationary, two adjacent data points collected by the gravity sensor might be "0.46806642413139343" and "0.4638765752315521". Therefore, the terminal device can determine whether the gravity sensor has become stuck by judging whether multiple data points collected by the gravity sensor at consecutive moments are the same. If multiple data points collected by the gravity sensor at consecutive moments are the same, it can be determined that the gravity sensor has become stuck. For example, if two data points collected by the gravity sensor at adjacent moments are the same, it can be determined that the gravity sensor has become stuck.
[0091] For example, the data collected by a gravity sensor has a fixed numerical range. The terminal device can determine whether the gravity sensor is collecting data outside this range by judging whether the data exceeds this range. Alternatively, the terminal device can calculate the average of multiple data points collected by the gravity sensor over a period of time and determine whether this average exceeds the numerical range, thus avoiding the influence of occasional noise data on the judgment result and improving the effectiveness of the judgment.
[0092] Furthermore, if the terminal device determines that the weight sensor is stuck or its data collection is out of range based on the gravity sensor's detection function, it can notify the user that the gravity sensor is faulty and provide corresponding solutions. For example, it can suggest that the user report the gravity sensor for repair.
[0093] Specifically, when a user discovers an abnormality in the altitude value displayed on the terminal device or other functions based on the barometer, the user can trigger the barometer detection function so that the terminal device can perform barometer detection based on this function.
[0094] In one barometer detection method, the terminal device can record multiple data points collected by the barometer over a period of time (e.g., 2 seconds, 10 seconds, 1 minute, 5 minutes, etc.) and calculate the variance of these multiple data points. Then, the terminal device's barometer detection function can determine whether the barometer is malfunctioning based on whether the variance value exceeds a preset variance threshold.
[0095] Specifically, it can be understood that the air pressure value of the environment in which the terminal device is located will not change significantly within a short period of time (e.g., 2 seconds, 5 minutes, etc.). Correspondingly, the variance of multiple data points collected by the barometer should be less than or equal to a preset variance threshold. Therefore, if the terminal device determines, based on the barometer detection function, that the variance of multiple data points collected by the barometer is greater than the preset variance threshold, it indicates that the barometer of the terminal device is abnormal.
[0096] Furthermore, the terminal device can use its barometer detection function to inform the user that the barometer is faulty and provide corresponding solutions. For example, it can suggest that the user report the barometer for repair.
[0097] The following section uses a mobile phone 10 as an example as the terminal device, and further explains the detection method provided in this application in conjunction with the accompanying drawings.
[0098] It should also be stated that the steps in the methods and processes in this application are numbered for ease of reference, not to limit the order of steps. If there is an order between the steps, the textual description shall prevail.
[0099] The process by which mobile phone 10 implements the aforementioned communication detection function based on the detection method provided in this application will be described in detail below with reference to the accompanying drawings.
[0100] For example, Figure 2 A schematic diagram of a communication system architecture for a mobile phone 10 is shown according to an embodiment of this application.
[0101] It should be understood that the layered architecture used in the communication system of the iPhone 10 divides the software into several layers, with these layers communicating with each other through software interfaces. These layers may include, for example, the application layer, the application framework layer, and the Android... TM runtime (Android) TM The communication method provided in this application is illustrated using the following examples: runtime, system libraries, hardware abstraction layer, kernel layer, etc. The following description focuses on the layer containing the functional modules involved in the communication method.
[0102] exist Figure 2 From top to bottom, the layers are: application layer, application framework layer, system library, kernel layer, and hardware.
[0103] The application layer can include a series of application packages.
[0104] Specifically, in the technical solutions provided in the embodiments of this application, the application layer may include a device detection module 200, wherein the device detection module 200 may include a communication detection module 200a, a gravity sensor detection module 200b, a barometer detection module 200c, etc.
[0105] Among them, the device detection module 200 can be an independent application in the mobile phone 10 (hereinafter referred to as "device detection application"). Furthermore, the communication detection module 200a can be a functional module in the device detection application used to implement the aforementioned communication detection function, the gravity sensor detection module 200b can be a functional module in the device detection application used to implement the aforementioned gravity sensor detection function, and the barometer detection module 200c can be a functional module in the device detection application used to implement the aforementioned barometer detection function.
[0106] Alternatively, the device detection module 200 can be a functional module of a system application or a third-party application installed on the mobile phone 10. Furthermore, the communication detection module 200a, the gravity sensor detection module 200b, and the barometer detection module 200c can be sub-modules within the device detection module. For example, the device detection module could be MyHonor. TM The "intelligent detection" module, and furthermore, the communication detection module 200a, the gravity sensor detection module 200b, and the barometer detection module 200c can be sub-modules of the "intelligent detection" module.
[0107] Alternatively, the communication detection module 200a, the gravity sensor detection module 200b, and the barometer detection module 200c can be independent system applications or third-party applications in the mobile phone 10.
[0108] This application does not provide a limiting description of the specific implementation of the device detection module 200 and its communication detection module 200a, gravity sensor detection module 200b, and barometer detection module 200c. In other embodiments, the device detection module 200 may also be a mini-program, webpage, etc.
[0109] Here, the specific process by which the mobile phone 10 implements the aforementioned gravity sensor detection function based on the gravity sensor detection module 200b can be found in the following. Figure 7 For a detailed explanation, the specific process by which the mobile phone 10 implements the aforementioned barometer detection function based on the barometer detection module 200c can be found below. Figure 9 The detailed explanations in the text are omitted here.
[0110] Specifically, the communication detection module 200a can obtain the MCC value of the SIM card corresponding to the mobile data network being used by the mobile phone 10 from the subscription manager 203, obtain the MCC value from the system information sent by the base station from the telephone manager 202, and combine it with the cause value list to implement the aforementioned communication detection function. The process will be described below. Figure 3 The process is explained in detail in the diagram, and will not be repeated here.
[0111] The application framework layer provides application programming interfaces (APIs) and programming frameworks for applications in the application layer. In some implementations, these APIs and frameworks can be described as functions.
[0112] For example, the application framework layer may include a connection manager 201, a phone manager 202, a subscription manager 203, etc.
[0113] Among them, the connectivity manager 201 is an Android... TM A system service in the operating system is used to manage various types of network connections (such as Wi-Fi, mobile data, Bluetooth, etc.) and monitor network status of the mobile phone 10. In the detection method provided in this application, the connection manager 201 can be used to determine whether the mobile phone 10 has enabled mobile data network.
[0114] Among them, the subscription manager 203 is an Android... TM A system service in the operating system is used to manage and obtain information related to SIM cards. In the detection method provided in this application, the subscription manager 203 can be used to determine information about one or more SIM cards of the mobile phone 10, including the MCC value in the HPLMN corresponding to the SIM card.
[0115] Among them, Telephony Manager 202 is an Android... TM A system service in the operating system is used to provide applications with the network connection status and other relevant information of mobile phone 10. In the detection method provided in this application, the phone manager 202 can be used to determine the mobile data connection status of one or more SIM cards of mobile phone 10, and further determine the SIM card corresponding to the mobile data network being used by mobile phone 10. The phone manager 202 can also obtain the MCC value from the system information in the RIL library 204 and provide the MCC value to the communication detection module 200a.
[0116] It should be understood that the above description is merely an example provided to better understand the specific implementation of the communication method provided in this application, and does not constitute a limiting description of the embodiments of this application.
[0117] The system library includes a radio interface layer (RIL) library, a list of cause values, and a list of signaling.
[0118] RIL library 204 can receive the MCC value from the system information sent by RIL driver 205 and provide the MCC value to telephone manager 202.
[0119] The reason value list may include reasons sent by the base station to determine roaming failure. Specifically, it can be composed of the following: Figure 3 After determining one or more cause values corresponding to a roaming failure, server 30 stores them in a cause value list and sends them to mobile phone 10. Alternatively, mobile phone 10 can receive one or more cause values corresponding to a roaming failure sent by server 30 and store them in the cause value list. Server 30 can periodically send the cause value list or one or more cause values corresponding to roaming failures. Therefore, mobile phone 10 can clear the cause value list of the previous period after receiving the cause value list of the next period or one or more cause values corresponding to roaming failures, thereby updating the cause value list. The signaling list can record access failure signaling sent by the base station. Mobile phone 10 can be set with a storage duration (e.g., 3 days, 7 days, etc.). Mobile phone 10 can then delete access failure signaling with a storage duration exceeding the storage duration to ensure that the signaling list only stores recently received access failure signaling. It is understood that the storage duration can be greater than or equal to the preset retrieval duration required to implement the communication detection function.
[0120] The kernel layer is the layer between hardware and software. The kernel layer may include RIL driver 205, which is the part that directly interacts with the operating system kernel and provides a device driver interface for communication with hardware modem 206. In the detection method provided in this application, RIL driver 205 can receive the MCC value from the system message demodulated by modem 206 and send the MCC value to RIL library 204.
[0121] The hardware of a communication system may include a modem 206, an antenna 207, etc.
[0122] Antenna 207 is used to send data packets to and receive data packets sent by the network side. In the detection method provided in this application, antenna 207 can be used to receive system messages and access failure signaling sent by the base station and send them to modem 206. Antenna 207 can also be used to send access requests to the base station.
[0123] In this method, modem 206 sends encrypted data packets to antenna 207 and demodulates the data packets received by antenna 207. In the detection method provided in this application, modem 206 can send an access request to antenna 207. Modem 206 can also demodulate system messages received by antenna 207 after obtaining them. Specifically, modem 206 can demodulate the MCC value in the system message and send it to RIL driver 205. Modem 206 can also send access failure signaling to the aforementioned signaling list after receiving it.
[0124] Understandably, the above Figure 2 The layers and components within each layer of the illustrated communication system software architecture do not constitute a specific limitation on the mobile phone 10. In other embodiments of this application, the communication system of the mobile phone 10 may include more than Figure 2 The diagram shows more or fewer layers, and each layer may contain more than [a certain number of layers]. Figure 2 The application does not limit the number of more or fewer components shown.
[0125] Below, in conjunction with the above Figure 2 The diagram shows the communication system architecture. Figure 3 A schematic diagram of the interactive process of a mobile phone 10 implementing a communication detection function based on the detection method provided in this application is shown.
[0126] In the embodiments of this application, Figure 3 The interactive process shown may involve mobile phone 10, base station 20 and server 30 as the executing entities.
[0127] In this system, mobile phone 10 detects the reason for network access failure as roaming failure based on the communication detection function, and base station 20 sends an access failure message to mobile phone 10 so that mobile phone 10 can determine that the current network access has failed. Server 30 determines the reason value corresponding to the roaming failure based on the access failure messages sent by multiple terminal devices (including mobile phone 10) and sends it to mobile phone 10 so that mobile phone 10 can detect that the reason for network access failure is roaming failure.
[0128] Specifically, the interaction process for mobile phone 10 to implement the communication detection function includes:
[0129] S300: Mobile phone 10 enters the network coverage area corresponding to base station 20.
[0130] For example, in a scenario where mobile phone 10 uses a SIM card from a first operator to access the network, the network coverage area where mobile phone 10 is located may belong to the network provided by base station 20, and the operator corresponding to base station 20 may be a second operator. Here, the first operator and the second operator may belong to different countries. Essentially, mobile phone 10 uses a SIM card from the first operator in a first country to access the network provided by the second operator in a second country.
[0131] S301: Base station 20 sends information about the network coverage area where mobile phone 10 is located to mobile phone 10.
[0132] For example, when mobile phone 10 enters the network coverage area corresponding to base station 20, it will receive information from base station 20 via BCCH regarding the network coverage area where mobile phone 10 is located. This information may be system information corresponding to base station 20, and the system message may include the MCC value corresponding to the second operator of base station 20. It can be understood that the MCC value in the system message may correspond to a second country.
[0133] S302: Mobile phone 10 determines the MCC value corresponding to base station 20 based on the information corresponding to the network coverage area it is in.
[0134] For example, after receiving the MCC value corresponding to the second operator of the base station 20 in the system message, the mobile phone 10 can record it.
[0135] S303: Mobile phone 10 sends the MCC value corresponding to base station 20 and the MCC value in HPLMN of mobile phone 10 to server 30.
[0136] For example, mobile phone 10 can send the MCC value corresponding to the second operator and the MCC value corresponding to the first operator to server 30. It can be understood that the MCC value corresponding to the first operator is the MCC value in the HPLMN. Furthermore, server 30 can record the MCC value corresponding to the first operator and the MCC value corresponding to the second operator.
[0137] S304: Mobile phone 10 sends an access request to base station 20.
[0138] For example, after mobile phone 10 activates the mobile data network, it can send an access request to base station 20. It is understood that this application does not limit the specific types of access requests; for example, an access request may include a request for accessing the network, such as an attach request.
[0139] S305: Base station 20 sends an access failure signal to mobile phone 10.
[0140] For example, if mobile phone 10 fails to roam, base station 20 will send an access failure signaling to mobile phone 10. Here, the roaming failure of mobile phone 10 may include the fact that the SIM card of the first operator used by mobile phone 10 does not support roaming to the network provided by the second operator.
[0141] Here, this application does not make any restrictive description of the specific content of the access failure signaling. In the scenario where mobile phone 10 fails to roam, the access failure signaling sent by base station 20 to mobile phone 10 may be the aforementioned attachment failure signaling or the aforementioned location update rejection signaling.
[0142] This application does not impose any restrictive description on the reason value carried in the access failure signaling. For example, in a scenario where there is no roaming agreement between the first operator and the second operator, the reason value carried in the access failure signaling sent by the base station 20 to the mobile phone 10 could be the aforementioned reason value 14.
[0143] For example, in a scenario where mobile phone 10 has not activated the call roaming service corresponding to the second operator, the reason value carried in the access failure signaling sent by base station 20 to mobile phone 10 can be the aforementioned reason value 13 or reason value 19 (Circuit Switched Service temporarily unavailable). Here, the call roaming service corresponding to the second operator includes the service of roaming to the network provided by the second operator to realize call services.
[0144] For example, in a scenario where mobile phone 10 has not activated the network roaming service corresponding to the second operator, the reason value carried in the access failure signaling sent by base station 20 to mobile phone 10 could be reason value 24 (no packet data protocol context activated) or reason value 10 (international mobile equipment identity not accepted). Here, the network roaming service corresponding to the second operator includes the service of roaming to the network provided by the second operator to access the internet.
[0145] Furthermore, it is understood that if the network equipment malfunctions, the base station 20 will also send an access failure signaling to the mobile phone 10. The aforementioned network equipment includes the base station 20 and core network equipment used to provide network services. Here, when the network equipment malfunctions, the access failure signaling sent by the base station 20 to the mobile phone 10 can be the aforementioned attach failure signaling, location update rejection signaling, etc. The reason value in the access failure signaling can be the aforementioned reason value 38, reason value 27, etc. This application does not impose any restrictive descriptions on the access failure signaling that the base station 20 may send when the network equipment malfunctions, or the reason values therein.
[0146] S306: Mobile phone 10 sends an access failure signal to server 30.
[0147] For example, after receiving an access failure signaling from server 30, mobile phone 10 can forward it to server 30. It is understood that other terminal devices besides mobile phone 10 can also send access failure signaling to server 30 based on S300 to S306, so that server 30 can determine the reason value corresponding to the roaming failure based on the access failure signaling sent by multiple terminal devices according to S309 below.
[0148] Understandably, in one example, mobile phone 10 can directly forward the received access failure signaling to server 30. Server 30 then filters out access failure signaling in roaming failure scenarios from the received access failure signaling and determines the cause value corresponding to the roaming failure based on the access failure signaling in the roaming failure scenario. The specific filtering process can be found in the detailed explanation in S307 to S308 below, and will not be repeated here.
[0149] In another example, mobile phone 10 may determine that it is currently in a roaming scenario and only send access failure signaling received in the roaming scenario to server 30, so that server 30 can determine the cause value corresponding to the roaming failure based on the access failure signaling in the roaming failure scenario. The specific process by which mobile phone 10 determines that it is currently in a roaming scenario can be found in the detailed description in S402 below, and will not be repeated here.
[0150] S307: Server 30 determines that mobile phone 10 is in a roaming scenario based on the MCC value corresponding to base station 20 and the MCC value in HPLMN of mobile phone 10.
[0151] For example, after receiving the MCC value corresponding to the base station 20 and the MCC value in the HPLMN of the mobile phone 10 based on the aforementioned S303, the server 30 can determine that the mobile phone 10 is in a roaming scenario based on the difference between the two MCC values. Here, the MCC value corresponding to the base station can be used to represent the country where the base station is located, which is equivalent to the country where the mobile phone 10 is currently located. The MCC value in the HPLMN is used to represent the country to which the operator providing the HPLMN belongs, which is equivalent to the country to which the SIM card used by the mobile phone 10 to access the network belongs. The server 30 can determine that the mobile phone 10 is in a roaming scenario based on the difference between the country where the mobile phone 10 is currently located and the country to which the SIM card used to access the network belongs.
[0152] S308: Server 30 records access failure signaling in roaming scenarios.
[0153] Here, it can be understood that the time when mobile phone 10 receives the MCC value corresponding to base station 20 is earlier than the time when it receives the access failure signaling. After receiving the MCC value corresponding to base station 20, mobile phone 10 sends it and the MCC value in the HPLMN to server 30. Therefore, the time when server 30 receives the MCC value corresponding to base station 20 and the MCC value in the HPLMN is earlier than the time when it receives the access failure signaling. Therefore, after server 30 determines that mobile phone 10 is in a roaming scenario based on the MCC value corresponding to base station 20 and the MCC value in the HPLMN, it can identify the access failure signaling received after receiving the MCC value as the access failure signaling in the roaming scenario. Therefore, server 30 can record the access failure signaling received by mobile phone 10 in the roaming scenario to determine the cause value corresponding to the roaming failure based on the access failure signaling in the roaming scenario.
[0154] It is understandable that, for other terminal devices besides mobile phone 10, server 30 can also record the access failure signaling received by each terminal device in the roaming scenario in the same substantially similar way.
[0155] S309: Server 30 determines the cause value corresponding to the roaming failure based on the access failure signaling of multiple terminal devices in the roaming scenario.
[0156] Here, server 30 can determine the cause value corresponding to roaming failure based on access failure signaling received by multiple terminal devices, including mobile phone 10, in the roaming scenario.
[0157] For example, after recording the access failure signaling sent by multiple terminal devices in the roaming scenario based on the aforementioned S308, server 30 can record the reason value carried in all access failure signaling and count the number of each reason value. Based on the foregoing, it can be understood that the higher the proportion of a certain reason value in the total number of reason values, the greater the correlation between that reason value and the roaming failure of mobile phone 10. Therefore, server 30 can use one or more reason values with the highest proportion in the total number of reason values as the reason values corresponding to the roaming failure.
[0158] For example, server 30 can sort all reason values in descending order of quantity and use one or more reason values whose sum of percentages is greater than a preset percentage threshold as the reason value corresponding to roaming failure. This application does not impose any limiting description on the aforementioned preset percentage threshold, which can be any of 80%, 85%, 90%, 95%, or other values.
[0159] In one application scenario, server 30 can determine that cause value 15 (no suitable cells in location area), cause values 13, 19, 24, 14, 17 (network failure), and 10 are the seven most prevalent cause values, and these seven cause values account for more than 90% of the total number of cause values. Therefore, server 30 can use these seven cause values as the cause values corresponding to roaming failure.
[0160] It is understood that in other embodiments, server 30 may also use one or more frequently occurring cause values as the cause values corresponding to roaming failures. Specifically, server 30 may count the proportion of different cause values in the total number of cause values, and use one or more cause values with the highest proportion (e.g., 5, 7, etc.) as the cause values corresponding to roaming failures.
[0161] In other embodiments, server 30 may also use one or more cause values that appear in a large number as the cause value corresponding to roaming failure. Specifically, server 30 may count the number of various cause values for all cause values and use one or more cause values with the largest number (e.g., 5, 7, etc.) as the cause value corresponding to roaming failure.
[0162] S310: Server 30 sends the reason value corresponding to the roaming failure to mobile phone 10.
[0163] For example, after determining the cause value corresponding to the roaming failure based on the aforementioned S309, the server 30 can send it to the mobile phone 10.
[0164] It is understandable that since the process of multiple terminal devices, including mobile phone 10, sending access failure signaling to server 30 can be continuous, server 30 can continuously update the cause value corresponding to roaming failure based on the continuously sent access failure signaling, so as to improve the accuracy of the determined cause value corresponding to roaming failure.
[0165] S311: Based on the reason value corresponding to the roaming failure, mobile phone 10 determines that the reason for not being able to access the network is roaming failure.
[0166] For example, mobile phone 10 can be configured according to the following Figure 4 The process shown determines the reason for the inability to access the network as a roaming failure based on the reason value corresponding to the roaming failure.
[0167] Furthermore, it can be understood that the reason value corresponding to the roaming failure received by mobile phone 10 can also be determined by server 30 based on access failure instructions provided by multiple terminal devices other than mobile phone 10. In other words, after server 30 determines the reason value corresponding to the roaming failure based on access failure instructions sent by multiple terminal devices, it sends it to mobile phone 10. Therefore, mobile phone 10 can directly execute the aforementioned communication detection function based on the reason value corresponding to the roaming failure, without waiting for the aforementioned S300 to S309 to complete before determining the reason for the inability to access the network as a roaming failure based on the communication detection function.
[0168] For example, Figure 4 The diagram illustrates a process where a mobile phone 10 determines that it cannot access the network because of roaming failure.
[0169] For ease of description, the following steps will use mobile phone 10 as the execution subject, and the execution subject will not be described again below.
[0170] Specifically, the process by which mobile phone 10 determines that the reason for its inability to access the network is roaming failure may include:
[0171] S400: Network access failed at the first location.
[0172] For example, the network coverage area provided by the second operator where mobile phone 10 is located is the first location. Mobile phone 10 attempts to access the mobile data network provided by the SIM card of the first operator at the first location, but network access fails.
[0173] S401: The user's first detection command is obtained, wherein the first detection command is used to instruct network fault detection.
[0174] For example, mobile phone 10 may provide a device detection function for the user, which may include a communication detection function. For instance, mobile phone 10 may include a device detection application, which is an application for implementing the device detection function. The device detection application may include the aforementioned communication detection module 200a for implementing the communication detection function. The communication detection module 200a may execute the communication detection function based on the user's first detection command to perform network fault detection.
[0175] See above Figure 1 As shown, the communication detection module 200a corresponds to the aforementioned control 100b, and the aforementioned first detection instruction can be a user's click operation on the control 100b. Specifically, when the mobile phone 10 detects a user's click operation on the control 100b, the mobile phone 10 can perform network fault detection based on the communication detection function.
[0176] S402: Corresponds to determining that the device is in a roaming scenario, and obtaining at least one signaling sent by the network device.
[0177] For example, after receiving the user's first detection command, the mobile phone 10 can first determine whether the mobile phone 10 is currently in a roaming scenario. Specifically, the mobile phone 10 can determine that the mobile data network is currently enabled based on the aforementioned connection manager 201, and further determine the SIM card currently in use based on the aforementioned phone manager 202. Further, it can determine the MCC value in the HPLMN corresponding to the currently used SIM card based on the aforementioned subscription manager 203.
[0178] Here, the mobile phone 10 can store the HPLMN of each SIM card inserted into the mobile phone 10 in a data table based on the subscription manager 203, and can set a corresponding SIM card tag for different HPLMNs, wherein the SIM card tag can uniquely identify a SIM card provided by an operator. The mobile phone 10 can store the MCC value in the system message received by the mobile phone 10 and the SIM card tag currently in use as a second data parameter based on the call manager 202. In addition, the mobile phone 10 can store the data table and the second data parameter in a first database.
[0179] Therefore, mobile phone 10 can determine that it is currently in a roaming scenario based on the fact that the MCC value in the second data parameter is different from the MCC value in the HPLMN corresponding to the currently used SIM card in the data table. Furthermore, mobile phone 10 can obtain at least one signaling sent by the network device. For example, mobile phone 10 can obtain access failure signaling sent by base station 20 (as an example of the aforementioned signaling) based on a process substantially the same as described in S300 to S305, as detailed in the descriptions of S300 to S305, which will not be repeated here. Therefore, mobile phone 10 can record all access failure signaling sent by base station 20; for example, mobile phone 10 can save all access failure signaling as the aforementioned signaling list.
[0180] It is understandable that after mobile data network is activated in a roaming scenario, base station 20 may send multiple access failure signaling messages to mobile phone 10, and the reason values carried in each access failure signaling message may be the same or different. Therefore, mobile phone 10 can record multiple access failure signaling messages.
[0181] S403: Determine at least one first cause value included in the signaling to indicate roaming failure.
[0182] For example, after receiving the reason value corresponding to the roaming failure sent by the server 30 based on the aforementioned S310, the mobile phone 10 can save it. For example, the mobile phone 10 can save the reason value corresponding to the roaming failure as the aforementioned reason value list.
[0183] Furthermore, the mobile phone 10 can determine whether the aforementioned signaling list includes the cause value corresponding to the roaming failure based on the cause value list.
[0184] For example, mobile phone 10 can determine that at least one cause value carried by an access failure signaling (as an example of a first cause value) exists in the aforementioned signaling list. Furthermore, mobile phone 10 can determine, based on the following S404, that the network access failure at the first location is a roaming failure.
[0185] S404: Based on the first cause value, the reason for the network access failure at the first location is determined to be roaming failure.
[0186] In one example, if the reason value carried by at least one access failure instruction in the signaling list is in the reason value list, the mobile phone 10 can determine that the network access failure at the first location is a roaming failure. This method can reduce the false negative rate in determining the cause of network access failure in roaming failure scenarios.
[0187] In another example, mobile phone 10 can set a preset search duration and a preset number. When mobile phone 10 determines that the number of reason values carried by access failure commands received within the preset search duration that are in the reason value list is greater than the preset number, it can determine that the reason for network access failure is roaming failure.
[0188] This application does not specify any limitations on the preset search duration or preset quantity. For example, the preset search duration could be 7 days, and the preset quantity could be 20 times. Specifically, after receiving the first detection command, mobile phone 10 can query the signaling list for access failure commands recorded in the past 7 days. If more than 20 access failure commands from the past 7 days carry reason values that are in the reason value list, then the network access failure at the first location can be determined to be a roaming failure. Alternatively, after receiving the first detection command, mobile phone 10 can query the signaling list for access failure commands recorded in the past 7 days. If more than 20 access failure commands from each of the past 7 days carry reason values that are in the reason value list, then the network access failure at the first location can be determined to be a roaming failure. It can be understood that this method can reduce the false alarm rate in determining the cause of network access failure in roaming failure scenarios.
[0189] S405: Display to the user the detection result corresponding to the first detection command: roaming failed.
[0190] Here, once the mobile phone 10 determines that the reason for the network access failure at the first location is roaming failure, it can display the reason for the network access failure to the user and provide the user with a corresponding solution.
[0191] For example, Figure 5 A schematic diagram of the interface after applying the communication detection function is shown.
[0192] See Figure 5 The mobile phone 10 can display a detection result interface 500, which may include a display area 500a. Display area 500a may display a message such as "SIM1 is suspected to be incompatible with the local operator's network, which may affect call or mobile data usage. It is recommended to call the operator to check if roaming is supported." This informs the user that the current network access failure is due to roaming failure and suggests that the user contact the operator. Here, SIM1 refers to the SIM card corresponding to the currently used mobile data network as determined by the phone manager 202.
[0193] It is understood that this application does not provide restrictive descriptions of the specific prompts in display area 500a. For example, the prompt could also be: "The reason for the current inability to access the network is roaming failure. It is recommended to call your operator to activate roaming service, or to use a SIM card provided by your current operator."
[0194] Based on the foregoing, Figure 6 A schematic diagram of the process of mobile phone 10 implementing communication detection function based on the aforementioned first database is shown.
[0195] For ease of description, the following steps will use mobile phone 10 as the execution subject, and the execution subject will not be described again below.
[0196] Specifically, the process by which mobile phone 10 implements the communication detection function based on the aforementioned first database may include:
[0197] S600: It has been determined that the user's access to the mobile data network is blocked.
[0198] For example, mobile phone 10 can determine that the user's use of mobile data network is blocked based on the detection of the aforementioned first detection command. The aforementioned blocking of mobile data network use may include network access failure.
[0199] S601: Start communication detection function.
[0200] For example, after the mobile phone 10 detects the first detection command, it can activate the communication detection function.
[0201] S602: Read data from the first database.
[0202] For example, mobile phone 10 can determine that it is currently in a roaming scene based on data in the first database. The specific process by which mobile phone 10 determines that it is currently in a roaming scene based on data in the first database can be found in the detailed description in S402 above, and will not be repeated here.
[0203] S603: Determine whether the data in the signaling list meets the preset rules.
[0204] If the determination is yes, it indicates that the data in the signaling list meets the preset rules, and the following S604 can be executed;
[0205] If the determination is negative, it indicates that the data in the signaling list does not meet the preset rules, and the following S605 can be executed.
[0206] This application does not provide a restrictive description of the specific content of the preset rules. In one example, the preset rules may include the presence of at least one access failure signaling in the signaling list carrying a reason value corresponding to roaming failure. In another example, the preset rules may include the presence of more than 20 access failure commands carrying reason values corresponding to roaming failure in each day of access failure commands stored in the signaling list for the past 7 days.
[0207] S604: Provides solutions for roaming failures to users.
[0208] For example, if mobile phone 10 determines, based on the aforementioned S603, that the data in the signaling list meets the preset rules, then the reason for network access failure can be determined as roaming failure. Furthermore, a solution corresponding to roaming failure can be provided to the user. The specific content of the aforementioned solution can be found in the aforementioned... Figure 5 The specific details will not be elaborated here.
[0209] S605: The reason for the network access failure has been determined to be not roaming failure.
[0210] For example, if mobile phone 10 determines, based on the aforementioned S603, that the data in the signaling list does not meet the preset rules, it can be determined that the reason for network access failure is not roaming failure.
[0211] Furthermore, as can be seen from the foregoing, the device detection function of mobile phone 10 may also include a gravity sensor detection function. The gravity sensor detection function implemented based on the detection method provided in this application will be described in detail below with reference to the accompanying drawings.
[0212] For example, Figure 7 A schematic diagram of a process for implementing the detection function of a gravity sensor based on the detection method provided in this application is shown.
[0213] For ease of description, the following steps will use mobile phone 10 as the execution subject, and the execution subject will not be described again below.
[0214] Specifically, the process by which the mobile phone 10 implements the gravity sensor detection function can include:
[0215] S700: Determines whether gravity sensor detection function is supported.
[0216] If the determination is yes, it indicates that the mobile phone 10 supports the gravity sensor detection function, and the following S701 can be executed;
[0217] If the determination is negative, it indicates that the phone 10 does not support the gravity sensor detection function, and the following S702 can be executed.
[0218] For example, mobile phone 10 can implement gravity sensor detection function based on gravity sensor detection module. The gravity sensor detection module can be a functional module for providing the aforementioned gravity sensor detection function, for example, it can be a functional module in an application that provides the aforementioned device detection function. The gravity sensor detection module can also be a standalone application for implementing the gravity sensor detection function. This application does not impose any limiting description on the specific form of the gravity sensor detection module.
[0219] Furthermore, after receiving the user's second detection command, the mobile phone 10 can determine whether it supports the gravity sensor detection function by judging whether the mobile phone includes a gravity sensor detection module. Here, the second detection command may include instructions that can trigger the gravity sensor detection module to implement the gravity sensor detection function.
[0220] Specifically, Figure 8a A schematic diagram of an interface for implementing gravity sensor detection function is shown.
[0221] See Figure 8a The mobile phone 10 can display a device detection interface 800. The device detection interface 800 includes a control 800a, which can be used to trigger the aforementioned gravity sensor detection function, and the control 800a can display the message "Gravity Sensor". Furthermore, the second detection instruction can include a user's click operation on the control 800a.
[0222] S701: Collects multiple data points over a period of time based on a gravity sensor.
[0223] For example, if the mobile phone 10 determines that it is so based on the aforementioned S700, it means that the mobile phone 10 supports the gravity sensor detection function, and therefore can collect multiple data over a period of time based on the gravity sensor.
[0224] Specifically, after receiving the second detection command, if the mobile phone 10 determines that it supports the gravity sensor detection function, it can collect multiple gravity data over a period of time (e.g., 1 second, 2 seconds, etc.) based on the gravity sensor. It can be understood that the gravity data collected by the gravity sensor can include acceleration data corresponding to the three coordinate systems in a three-dimensional coordinate system, such as acceleration data in the X direction, acceleration data in the Y direction, and acceleration data in the Z direction.
[0225] S702: The message indicates that the gravity sensor detection function is not supported.
[0226] For example, if the mobile phone 10 determines no based on the aforementioned S700, it means that the mobile phone 10 does not support the gravity sensor detection function, and therefore can prompt the user that the gravity sensor detection function is not currently supported. Here, no restrictive description is given on the specific method of prompting the user that the gravity sensor detection function is not supported. For example, the prompting method may include a pop-up prompt, a display window prompt, etc.
[0227] S703: Determine whether there are adjacent and identical data among multiple collected data.
[0228] If the determination is yes, it indicates that there are adjacent and identical data among the multiple data collected by the mobile phone 10, and the following S704 can be executed;
[0229] If the determination is negative, it indicates that there are no adjacent and identical data among the multiple data collected by the mobile phone 10, and the following S705 can be executed.
[0230] As mentioned above, the gravity sensor can sensitively detect minute changes in the motion state of the terminal device. Therefore, the mobile phone 10 can determine whether the gravity sensor has malfunctioned by judging whether there are adjacent and identical data among multiple data collected by the gravity sensor. Specifically, it can determine whether there are adjacent and identical data among the acceleration data in each direction of multiple gravity data.
[0231] S704: An anomaly has been detected in the gravity sensor.
[0232] For example, if the mobile phone 10 determines that there are adjacent and identical data among the multiple data collected by the gravity sensor, for example, if the gravity sensor collects two adjacent and identical data, it indicates that the gravity sensor has encountered an abnormal situation of being stuck.
[0233] Specifically, if adjacent and identical acceleration data exist in any direction collected by the gravity sensor, it indicates that the gravity sensor has malfunctioned and is stuck. For example, if the acceleration data in the X direction of two adjacent gravity data points collected by the gravity sensor are identical, it indicates that the gravity sensor has malfunctioned and is stuck. The phone 10 can then notify the user of this gravity sensor malfunction.
[0234] Here, Figure 8b A schematic diagram of the interface after applying the gravity sensor detection function is shown.
[0235] See Figure 8bThe mobile phone 10 can display a detection result interface 801, which may include a display area 801a. The display area 801a may display a message stating "Gravity sensor malfunction, repair recommended," informing the user that the gravity sensor may be malfunctioning and suggesting that the user report it for repair. It is understood that this application does not impose any limiting descriptions on the specific message displayed in the display area 801a; the foregoing content is merely an example.
[0236] Furthermore, if the mobile phone 10 determines, based on the following S705, that multiple collected data points are outside the preset numerical range—specifically, if the mobile phone 10 determines that the acceleration data in any direction among the multiple gravity data points is outside the corresponding numerical range—it can be determined that the gravity sensor has an abnormal situation where the collected data is out of range. Furthermore, the mobile phone 10 can, based on the aforementioned... Figure 8b The message displayed indicates to the user that the gravity sensor is malfunctioning.
[0237] S705: Determine whether the collected data are within the preset value range.
[0238] If the determination is yes, it indicates that the multiple data collected by the mobile phone 10 are within the preset value range, and the following S706 can be executed.
[0239] If the determination is negative, it indicates that multiple data collected by the mobile phone 10 are not within the preset value range, and the aforementioned S704 can be executed.
[0240] As mentioned above, the data collected by the gravity sensor has a fixed numerical range. Therefore, if there are no adjacent and identical data among the multiple data collected by the phone 10, it can be determined whether the data collected by the gravity sensor exceeds the numerical range, thus further confirming whether there is an anomaly where the gravity sensor is collecting data out of range.
[0241] Specifically, the aforementioned numerical range may include the numerical range corresponding to the acceleration data in the X direction, the numerical range corresponding to the acceleration data in the Y direction, and the numerical range corresponding to the acceleration data in the Z direction. Furthermore, the mobile phone 10 can determine whether the acceleration data in each direction among multiple gravity data points falls within the corresponding numerical range.
[0242] S706: Confirmed that there is no abnormality in the gravity sensor.
[0243] For example, if the mobile phone 10 determines that multiple data collected by the gravity sensor are within a preset value range and there are no adjacent and identical data, it indicates that the gravity sensor is not abnormal.
[0244] Specifically, if the phone 10 determines that the acceleration data in each direction among multiple data points are all within the corresponding numerical range, and that there are no adjacent and identical acceleration data in any direction, then it can be determined that the gravity sensor is not malfunctioning. Furthermore, the user can be prompted that the gravity sensor is not malfunctioning and suggested checking other components.
[0245] Here, Figure 8c This diagram illustrates another interface after applying the gravity sensor detection function.
[0246] See Figure 8c The mobile phone 10 can display a detection result interface 802, which may include a display area 802a. The display area 802a may display a prompt stating "Preliminary judgment: the gravity sensor is not abnormal; it is recommended to test other components," informing the user that the current gravity sensor is not abnormal and suggesting that the user test other components. It is understood that this application does not make any limiting descriptions of the specific prompts in the display area 802a; the foregoing content is merely an example.
[0247] Furthermore, it is understood that in some other embodiments, the mobile phone 10 may not execute the aforementioned S703, but may implement the gravity sensor detection function only based on S700, S701, S702, S704, S705, and S706.
[0248] Furthermore, based on the foregoing, the device detection function of the mobile phone 10 may also include a barometer detection function.
[0249] The barometer detection function implemented based on the detection method provided in this application will be described in detail below with reference to the accompanying drawings.
[0250] For example, Figure 9 A schematic diagram of a process for implementing barometer detection function based on the detection method provided in this application is shown.
[0251] For ease of description, the following steps will use mobile phone 10 as the execution subject, and the execution subject will not be described again below.
[0252] Specifically, the process by which mobile phone 10 implements the barometer detection function may include:
[0253] S900: Determines whether the barometer detection function is supported.
[0254] If the determination is yes, it indicates that the mobile phone 10 supports the barometer detection function, and the following S901 can be executed;
[0255] If the result is negative, it indicates that the phone 10 does not support the barometer detection function, and the following S902 can be executed.
[0256] For example, mobile phone 10 can implement barometer detection function based on barometer detection module. The barometer detection module can be a functional module for providing the aforementioned barometer detection function, for example, it can be a functional module in an application that provides the aforementioned device detection function. The barometer detection module can also be a standalone application for implementing the barometer detection function. This application does not impose any limiting description on the specific form of the barometer detection module.
[0257] Furthermore, after receiving the user's third detection command, the mobile phone 10 can determine whether it supports the barometer detection function by checking whether the phone includes a barometer detection module. Here, the third detection command can include instructions that trigger the barometer detection module to perform the barometer detection function.
[0258] Specifically, Figure 10a A schematic diagram of an interface for implementing barometer detection function is shown.
[0259] See Figure 10a The mobile phone 10 can display a device detection interface 1000. The device detection interface 1000 includes a control 1000a, which can be used to trigger the aforementioned barometer detection function, and the control 1000a can display the message "barometer". Furthermore, the third detection instruction can include the user's click operation on the control 1000a.
[0260] S901: Collects multiple data points over a period of time based on a barometer.
[0261] For example, if the mobile phone 10 determines that it is based on the aforementioned S900, it means that the mobile phone 10 supports the barometer detection function, and therefore can collect multiple data over a period of time based on the barometer.
[0262] Specifically, after receiving the third detection command, if the mobile phone 10 determines that the mobile phone 10 supports the barometer detection function, it can collect multiple barometer data over a period of time (e.g., 2 seconds, 10 seconds, 1 minute, 5 minutes, etc.) based on the barometer.
[0263] S902: The barometer detection function is not supported.
[0264] For example, if the mobile phone 10 determines no based on the aforementioned S900, it means that the mobile phone 10 does not support the barometer detection function, and therefore can prompt the user that the barometer detection function is not currently supported. Here, no restrictive description is given on the specific method of prompting the user that the barometer detection function is not supported. For example, the prompting method may include a pop-up prompt, a display window prompt, etc.
[0265] S903: Determine whether the variance of multiple collected data is greater than the preset variance threshold.
[0266] If the determination is yes, it indicates that the variance of multiple data collected by the mobile phone 10 is greater than the preset variance threshold, and the following S904 can be executed.
[0267] If the determination is negative, it indicates that the variance of multiple data collected by the mobile phone 10 is less than or equal to the preset variance threshold, and the following S905 can be executed.
[0268] Based on the foregoing, it is known that the air pressure in the environment where the mobile phone 10 is located will not change significantly within a short period of time (e.g., 2 seconds, 10 seconds, 1 minute, 5 minutes, etc.). Correspondingly, the variance of the multiple air pressure data collected by the barometer should be less than or equal to a preset variance threshold. Therefore, the mobile phone 10 can determine whether the barometer has malfunctioned by checking whether the variance of multiple air pressure data is greater than the preset variance threshold.
[0269] S904: The barometer is found to be faulty.
[0270] For example, if the mobile phone 10 determines that the variance of multiple barometric pressure data collected by the barometer is greater than a preset variance threshold, it indicates that the barometer has malfunctioned. The mobile phone 10 can then notify the user of the barometer malfunction.
[0271] Here, Figure 10b A schematic diagram of the interface after applying the barometer detection function is shown.
[0272] See Figure 10b The mobile phone 10 can display a test result interface 1001, which may include a display area 1001a. Display area 1001a may display a message stating "Barometer malfunction, warranty recommended," informing the user that the current barometer may be malfunctioning and recommending warranty repair. It is understood that this application does not impose any limiting descriptions on the specific message displayed in display area 1001a; the foregoing content is merely an example.
[0273] Furthermore, if mobile phone 10 determines, based on the following S904, that multiple collected air pressure data are not within the preset numerical range, it can be determined that the barometer has an abnormal situation of collecting data out of range. Furthermore, mobile phone 10 can also, based on the aforementioned... Figure 10b The message displayed indicates to the user that the barometer is malfunctioning.
[0274] S905: Determine whether the collected data are within the preset value range.
[0275] If the determination is yes, it indicates that the multiple data collected by the mobile phone 10 are within the preset value range, and the following S906 can be executed;
[0276] If the determination is negative, it indicates that multiple data collected by the mobile phone 10 are not within the preset value range, and the aforementioned S904 can be executed.
[0277] It can be understood that the data collected by the barometer also has a fixed numerical range. Therefore, if the variance of multiple barometric pressure data collected by the phone 10 based on the barometer is less than or equal to a preset variance threshold, it is possible to further determine whether there is an anomaly in the barometer's data collection range by judging whether the data collected by the barometer exceeds the numerical range.
[0278] S906: Confirm that the barometer is not malfunctioning.
[0279] For example, if the mobile phone 10 determines that multiple pressure data collected by the barometer are within a preset value range, and the variance of the multiple pressure data is less than or equal to a preset variance threshold, it indicates that the barometer is not malfunctioning. Furthermore, it can prompt the user that the barometer is not malfunctioning and suggest checking other components.
[0280] Here, Figure 10c A schematic diagram of the interface after applying the barometer detection function is shown.
[0281] See Figure 10c The mobile phone 10 can display a test result interface 1002, which may include a display area 1002a. The display area 1002a may display a prompt stating "Preliminary judgment: the barometer is not abnormal; it is recommended to test other components," informing the user that the current barometer is not abnormal and suggesting that the user test other components. It is understood that this application does not make any limiting descriptions of the specific prompts in the display area 1002a; the foregoing content is merely an example.
[0282] Figure 11 A schematic diagram of the structure of mobile phone 10 is shown.
[0283] The mobile phone 10 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, a sensor module 180, buttons 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0284] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the mobile phone 10. In other embodiments of this application, the mobile phone 10 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0285] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). These different processing units may be independent devices or integrated into one or more processors.
[0286] The controller can generate operation control signals based on the instruction opcode and timing signals to control the fetching and execution of instructions. In this application, the aforementioned instructions may include a first detection instruction, a second detection instruction, and a third detection instruction.
[0287] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can retrieve it directly from the aforementioned memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.
[0288] In some embodiments, the processor 110 may include one or more interfaces. Interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.
[0289] The wireless communication function of mobile phone 10 can be realized through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor and baseband processor.
[0290] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in mobile phone 10 can be used to cover one or more communication frequency bands. Different antennas can also be multiplexed to improve antenna utilization. For example, antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in conjunction with a tuning switch. In this application, antenna 1 and antenna 2 may include the aforementioned antenna 207.
[0291] The mobile communication module 150 can provide solutions for wireless communication applications including 2G / 3G / 4G / 5G on the mobile phone 10. The mobile communication module 150 may include at least one filter, switch, power amplifier, low-noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via the antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to the modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via the antenna 1. In some embodiments, at least some functional modules of the mobile communication module 150 may be housed in the processor 110. In some embodiments, at least some functional modules of the mobile communication module 150 and at least some modules of the processor 110 may be housed in the same device.
[0292] The modem processor may include a modulator and a demodulator. The modulator modulates a low-frequency baseband signal to be transmitted into a mid-to-high frequency signal. The demodulator demodulates a received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After processing by the baseband processor, the low-frequency baseband signal is transmitted to the application processor. The application processor outputs sound signals through an audio device (not limited to speaker 170A, receiver 170B, etc.) or displays images or videos through the display screen 194. In some embodiments, the modem processor may be a separate device. In other embodiments, the modem processor may be independent of the processor 110 and housed in the same device as the mobile communication module 150 or other functional modules. In this application, the modem processor may include the aforementioned modem 206.
[0293] The wireless communication module 160 can provide solutions for wireless communication applications on the mobile phone 10, including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, performs frequency modulation and filtering of the electromagnetic wave signals, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, perform frequency modulation and amplification, and convert them into electromagnetic waves for radiation via antenna 2.
[0294] In some embodiments, antenna 1 of mobile phone 10 is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, enabling mobile phone 10 to communicate with networks and other devices via wireless communication technology. The aforementioned wireless communication technology may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time-Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technologies, etc. The aforementioned GNSS may include the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS), the BeiDou Navigation Satellite System (BDS), the Quasi-Zenith Satellite System (QZSS), and / or satellite-based augmentation systems (SBAS).
[0295] The internal memory 121 can be used to store computer executable program code, which includes instructions. The internal memory 121 may include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function (such as sound playback, image playback, etc.), etc. The data storage area may store data created during the use of the mobile phone 10 (such as audio data, phonebook, etc.). Furthermore, the internal memory 121 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc. The processor 110 executes various functional applications and data processing of the mobile phone 10 by running instructions stored in the internal memory 121 and / or instructions stored in memory located in the processor. In this application, the aforementioned instructions may include a first detection instruction, a second detection instruction, and a third detection instruction.
[0296] Pressure sensor 180A is used to sense pressure signals and convert them into electrical signals. In some embodiments, pressure sensor 180A can be disposed on display screen 194. There are many types of pressure sensors 180A, such as resistive pressure sensors, inductive pressure sensors, and capacitive pressure sensors. A capacitive pressure sensor may include at least two parallel plates with conductive material. When force is applied to pressure sensor 180A, the capacitance between the electrodes changes. Mobile phone 10 determines the pressure intensity based on the change in capacitance. When a touch operation is applied to display screen 194, mobile phone 10 detects the intensity of the touch operation based on pressure sensor 180A. Mobile phone 10 can also calculate the touch position based on the detection signal from pressure sensor 180A. In some embodiments, touch operations applied to the same touch position but with different touch operation intensities can correspond to different operation commands.
[0297] The barometric pressure sensor 180C is used to measure air pressure. In some embodiments, the mobile phone 10 calculates altitude using the air pressure value measured by the barometric pressure sensor 180C to assist in positioning and navigation. In this application, the barometric pressure sensor 180C may include the aforementioned barometer.
[0298] The accelerometer 180E can detect the magnitude of the acceleration of the mobile phone 10 in various directions (generally three axes). When the mobile phone 10 is stationary, it can detect the magnitude and direction of gravity. It can also be used to identify the posture of electronic devices and applied to applications such as screen orientation switching and pedometers. In this application, the accelerometer 180E may include the aforementioned gravity sensor.
[0299] The SIM card interface 195 is used to connect a SIM card. The SIM card can be inserted into or removed from the SIM card interface 195 to make contact with and separate from the mobile phone 10. The mobile phone 10 can support one or N SIM card interfaces, where N is a positive integer greater than 1. The SIM card interface 195 can support Nano SIM cards, Micro SIM cards, SIM cards, etc. Multiple cards can be inserted into the same SIM card interface 195 simultaneously. The types of these multiple cards can be the same or different. The SIM card interface 195 is also compatible with different types of SIM cards. The SIM card interface 195 is also compatible with external storage cards. The mobile phone 10 interacts with the network through the SIM card to realize functions such as calls and data communication. In some embodiments, the mobile phone 10 uses an eSIM, i.e., an embedded SIM card. The eSIM card can be embedded in the mobile phone 10 and cannot be separated from the mobile phone 10.
[0300] This application also provides a computer program product for implementing the detection methods provided in the above embodiments.
[0301] Various embodiments of the mechanisms disclosed in this application can be implemented in hardware, software, firmware, or combinations of these implementation methods. Embodiments of this application can be implemented as computer program modules or module code executable on a programmable system, the programmable system including at least one processor, a storage system (including volatile and non-volatile memory and / or storage elements), at least one input device, and at least one output device.
[0302] Computer program modules or module code can be applied to input instructions to perform the functions described in this application and generate output information. The output information can be applied to one or more output devices in a known manner. For the purposes of this application, the processing system includes any system having a processor such as, for example, a digital signal processor (DSP), a microcontroller, an application-specific integrated circuit (ASIC), or a microprocessor.
[0303] Module code can be implemented using a high-level modular language or an object-oriented programming language to communicate with the processing system. Assembly language or machine language can also be used to implement module code when needed. In fact, the mechanisms described in this application are not limited to any particular programming language. In either case, the language can be a compiled language or an interpreted language.
[0304] In some cases, the disclosed embodiments may be implemented in hardware, firmware, software, or any combination thereof. The disclosed embodiments may also be implemented as instructions carried or stored thereon on one or more temporary or non-temporary machine-readable (e.g., computer-readable) storage media, which may be read and executed by one or more processors. For example, the instructions may be distributed via a network or through other computer-readable media. Therefore, machine-readable media may include any mechanism for storing or transmitting information in a machine-readable (e.g., computer-readable) form, including but not limited to floppy disks, optical disks, optical discs, magneto-optical disks, read-only memory (ROM), random access memory (RAM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic cards or optical cards, flash memory, or tangible machine-readable storage for transmitting information (e.g., carrier waves, infrared signals, digital signals, etc.) using the Internet in the form of electrical, optical, acoustic, or other forms of propagated signals. Therefore, machine-readable media include any type of machine-readable medium suitable for storing or transmitting electronic instructions or information in a machine-readable (e.g., computer-readable) form.
[0305] In this specification, the reference to "an embodiment" or "an embodiment" means that a specific feature, structure, or characteristic described in connection with the embodiment is included in at least one exemplary implementation or technology disclosed according to an embodiment of this application. The appearance of the phrase "in an embodiment" in various places in the specification does not necessarily refer to the same embodiment.
[0306] The disclosure of embodiments of this application also relates to means for performing operations in text. This means may be specifically constructed for the claimed purpose or may include a general-purpose computer selectively activated or reconfigured by a computer program stored in a computer. Such a computer program may be stored on a computer-readable medium, such as, but not limited to, any type of disk, including floppy disks, optical disks, CD-ROMs, magneto-optical disks, read-only memory (ROM), random access memory (RAM), EPROM, EEPROM, magnetic or optical cards, application-specific integrated circuits (ASICs), or any type of medium suitable for storing electronic instructions, and each may be coupled to a computer system bus. Furthermore, the computer mentioned in the specification may include a single processor or may employ an architecture involving multiple processors for increased computing power.
[0307] Furthermore, the language used in this specification has been primarily chosen for readability and instructional purposes and may not have been selected to depict or limit the disclosed subject matter. Therefore, the embodiments disclosed herein are intended to illustrate, and not limit, the scope of the concepts discussed herein.
Claims
1. A detection method applied to user equipment, characterized in that, The method includes: Network access failed at the first location; The user's first detection command is obtained, wherein the first detection command is used to instruct network fault detection; Corresponding to determining that the user equipment is in a roaming scenario, at least one signaling sent by the network device is obtained; Determining that a first cause value included in at least one of the signaling messages indicates a roaming failure; Based on the first reason value, the reason for the user equipment's network access failure at the first location is determined to be roaming failure; The user is shown the detection result corresponding to the first detection command as roaming failure.
2. The method according to claim 1, characterized in that, The step of determining that the user equipment is in a roaming scenario includes: If the first mobile country code corresponding to the first location is different from the second mobile country code of the first SIM card, it is determined that the user equipment is in a roaming scenario. The first mobile country code is sent by the network device when the user equipment enters the network coverage area of the network device, and the network coverage area of the network device includes the first location. The first SIM card includes the SIM card used by the user equipment to access the network at the first location.
3. The method according to claim 1, characterized in that, The determination that the first cause value included in the at least one signaling message indicates roaming failure includes: Receive a list of reason values sent by the server, wherein the list of reason values includes one or more reason values corresponding to roaming failures; Based on the list of cause values, a first cause value included in at least one signaling signal indicates a roaming failure.
4. The method according to claim 3, characterized in that, The at least one signaling includes a first signaling, and, The step of determining, based on the list of cause values, that the first cause value included in at least one signaling signal indicates roaming failure includes: The first cause value corresponding to the first signaling is located in the cause value list, and the first cause value indicates that the roaming has failed.
5. The method according to claim 4, characterized in that, After acquiring at least one signaling sent by the network device, the method further includes: The first signaling is sent to the server so that the server determines or updates the list of cause values.
6. The method according to claim 3, characterized in that, The step of determining that the network access failure of the user equipment at the first location is due to roaming failure based on the first cause value includes: This corresponds to continuously counting the user equipment receiving the first cause value within multiple first statistical periods included in the first statistical duration; If the number of times the first cause value is received within each first statistical period is greater than the first threshold, it is determined that the reason for the network access failure of the user equipment at the first location is roaming failure.
7. The method according to claim 3, characterized in that, The determination that the reason for the user equipment's network access failure at the first location is roaming failure includes: If, within the first statistical period, the number of times the user equipment receives the first reason value is greater than the second threshold, then the reason for the user equipment's network access failure at the first location is determined to be roaming failure.
8. The method according to claim 1, characterized in that, The method further includes: The user's second detection command is obtained, wherein the second detection command is used to instruct the gravity sensor to perform fault detection; Acquire m data points collected by the gravity sensor in the user equipment within a first time period; If there are n adjacent identical data points among the m data points, it is determined that the gravity sensor is faulty. Where m ≥ n ≥ 2.
9. The method according to claim 8, characterized in that, After acquiring m data points collected by the gravity sensor in the user equipment within a first time period, the method further includes: If at least one of the m data points exceeds a preset value range, it is determined that the gravity sensor is faulty.
10. The method according to claim 1, characterized in that, The method further includes: The user's third detection command is obtained, wherein the third detection command is used to instruct the barometer to perform fault detection; Acquire multiple data points collected by the barometer in the user equipment during a second time period; If the variance of the multiple data points is greater than a preset variance threshold, it is determined that the barometer is faulty.
11. A detection method applied to a server, characterized in that, The method includes: Receive multiple reporting messages sent by multiple user devices, wherein the reporting messages include signaling sent by network devices received by the user devices during network access failure in roaming scenarios, and the signaling includes a second cause value; From the second cause values included in the signaling of the multiple reported information, select the second cause values corresponding to roaming failure to form a cause value list; The list of reason values is sent to the user equipment.
12. The method according to claim 11, characterized in that, The step of selecting a second cause value corresponding to roaming failure from the signaling included in the plurality of reported information to form a cause value list includes: Determine the number of different cause values among the second cause values included in the signaling of multiple reported messages; Select one or more cause values whose quantity exceeds the quantity threshold to form a cause value list.
13. The method according to claim 11, characterized in that, The step of selecting a second cause value corresponding to roaming failure from the signaling included in the plurality of reported information to form a cause value list includes: Determine the proportion of each different cause value among all second cause values in the signaling included in multiple reported information; Sort the different cause values in descending order of percentage; Select one or more cause values whose sum of proportions is greater than a preset proportion threshold in order from first to last to form a cause value list.
14. A user equipment, characterized in that, include: One or more processors; One or more memories; the one or more memories storing one or more programs, which, when executed by the one or more processors, cause the user equipment to perform the detection method according to any one of claims 1 to 10.
15. A server, characterized in that, include: One or more processors; One or more memories; the one or more memories store one or more programs that, when executed by the one or more processors, cause the server to perform the detection method according to any one of claims 11 to 13.
16. A computer-readable medium, characterized in that, The readable medium stores instructions that, when executed on a computer, cause the computer to perform the detection method according to any one of claims 1 to 13.
17. A computer program product, characterized in that, It includes a computer program / instruction that, when executed by a processor, implements the detection method according to any one of claims 1 to 13.