Positioning method of mobile device, mobile device, storage medium and program product
By collecting environmental and device status information from mobile devices and dynamically adjusting the activation timing of the satellite positioning module, the contradiction between power consumption and positioning accuracy is resolved, resulting in a more efficient positioning method and improved user experience.
Patent Information
- Application Number
- CN202511649110.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-11
- Publication Date
- 2026-01-06
AI Technical Summary
In existing technologies, the continuous operation of satellite positioning modules significantly increases the power consumption of mobile devices, resulting in a substantial reduction in battery life. Furthermore, fixed-interval operation schemes struggle to balance power consumption and positioning accuracy.
By collecting environmental information and device status information of the current environment of the mobile device, the timing of the activation of the satellite positioning module is dynamically adjusted, and positioning calculations are performed in combination with sensor data to update real-time positioning information.
It achieves a balance between power consumption and positioning accuracy in mobile devices, meets actual positioning needs, and improves user experience.
Smart Images

Figure CN121276567A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the positioning field, in particular to a positioning method of a mobile device, a mobile device, a storage medium and a program product. BACKGROUND
[0002] In various scenarios such as navigation, motion trajectory recording, logistics tracking, and location-based augmented reality services, a mobile device needs to maintain positioning function for a long time to provide real-time location information. The mobile device usually uses a satellite positioning module to realize positioning. However, the continuous opening of the satellite positioning module will significantly increase the power consumption of the mobile device, resulting in a significant reduction in battery life.
[0003] To reduce power consumption, a scheme of opening the satellite positioning module at a fixed time interval is proposed in the related art, that is, after starting the satellite positioning module for positioning, the satellite positioning module is closed, the data collected by the sensors of the mobile device is used for position calculation and updating of the positioning, and the satellite positioning module is opened again at a fixed time interval to correct the calculated positioning.
[0004] In the above scheme, the effect of reducing power consumption is not good or the positioning deviation is too large, and the contradiction between power consumption and positioning accuracy is difficult to balance. SUMMARY
[0005] Embodiments of the present application provide a positioning method of a mobile device, a mobile device, a storage medium and a program product to balance the power consumption and positioning accuracy of the mobile device.
[0006] In a first aspect, embodiments of the present application provide a positioning method of a mobile device, comprising:
[0007] starting a satellite positioning module of the mobile device for positioning, closing the satellite positioning module after obtaining real-time positioning information, and collecting environment information of an environment in which the mobile device is currently located;
[0008] determining a target time for next time to open the satellite positioning module based on the environment information;
[0009] before reaching the target time, using a sensor of the mobile device to collect data for positioning calculation to update the real-time positioning information, and obtaining device state information of the mobile device, and updating the target time based on the device state information.
[0010] In some embodiments, the determining of the target time for next time to open the satellite positioning module based on the environment information comprises:
[0011] determining an environment type of the environment in which the mobile device is currently located based on the environment information;
[0012] determine the target time based on the environment type of the environment where the mobile device is currently located and a correspondence between environment types and positioning frequencies.
[0013] In some embodiments, the environment information comprises one or more of illumination intensity information, temperature and humidity information, altitude information, air pressure information, WIFI signal strength, mobile cellular signal strength, and crowd information.
[0014] The determination of the environment type of the environment where the mobile device is currently located based on the environment information comprises one or more of the following:
[0015] determine a terrain type of the environment where the mobile device is currently located based on one or more of the temperature and humidity information, the altitude information, and the air pressure information, wherein the environment type comprises the terrain type.
[0016] determine an indoor or outdoor type of the environment where the mobile device is currently located based on one or more of the illumination intensity information, the WIFI signal strength, and the mobile cellular signal strength, wherein the environment type comprises the indoor or outdoor type.
[0017] determine a crowded degree of the environment where the mobile device is currently located based on the crowd information, wherein the environment type comprises the crowded degree.
[0018] In some embodiments, before the determination of the target time based on the environment type of the environment where the mobile device is currently located and the correspondence between environment types and positioning frequencies, the method further comprises:
[0019] determine a preset motion mode of the mobile device, wherein the preset motion mode is a motion mode with the longest total duration in a historical motion process of the mobile device or a current motion mode of the mobile device.
[0020] determine the correspondence between the environment type and the positioning frequency corresponding to the preset motion mode from the correspondence between the environment type and the positioning frequency corresponding to each of the different motion modes.
[0021] In some embodiments, the device state information comprises motion direction information, and the updating of the target time based on the device state information comprises:
[0022] determine a motion complexity of the mobile device based on the motion direction information.
[0023] update the target time to the current time in a case where the motion complexity is greater than or equal to a preset threshold.
[0024] In some embodiments, the obtaining the device state information of the mobile device comprises:
[0025] determining, based on historical motion data of the mobile device, motion prediction data of the mobile device in a preset future time period, the motion prediction data being used to indicate a motion pattern in the preset future time period, and the device state information comprising the motion prediction data;
[0026] the updating the target time based on the device state information comprises:
[0027] in a case where the motion prediction data indicates that the motion pattern is a first motion pattern before the target time, delaying the target time by a first time length, and in a case where the motion pattern is a second motion pattern, advancing the target time by a second time length, wherein a motion speed of the first motion pattern is less than a motion speed of a current motion pattern, and a motion speed of the second motion pattern is greater than the motion speed of the current motion pattern.
[0028] In some embodiments, the device state information comprises mobile cell information of the mobile device, and the updating the target time based on the device state information comprises:
[0029] determining, based on the mobile cell information, whether a mobile cell accessed by the mobile device changes;
[0030] in a case where the mobile cell accessed by the mobile device changes, updating the target time to a current time.
[0031] In a second aspect, an embodiment of the present application provides a positioning device of a mobile device, comprising:
[0032] a first processing module configured to start a satellite positioning module of the mobile device to perform positioning, and to close the satellite positioning module after obtaining real-time positioning information, and to collect environment information of an environment in which the mobile device is currently located;
[0033] a second processing module configured to determine a target time at which the satellite positioning module is to be started next based on the environment information;
[0034] a third processing module configured to, before the target time is reached, perform positioning calculation by using a sensor of the mobile device to collect data, to update the real-time positioning information, and to obtain device state information of the mobile device, and to update the target time based on the device state information.
[0035] In some embodiments, the second processing module is configured to:
[0036] determine an environment type of an environment where the mobile device is currently located based on the environment information;
[0037] determine the target time based on the environment type of the environment where the mobile device is currently located and a correspondence between environment types and positioning frequencies.
[0038] In some embodiments, the environment information comprises one or more of illumination intensity information, temperature and humidity information, altitude information, air pressure information, WIFI signal strength, mobile cellular signal strength, and people flow information.
[0039] The second processing module is configured to:
[0040] determine a terrain type of the environment where the mobile device is currently located based on one or more of the temperature and humidity information, the altitude information, and the air pressure information, wherein the environment type comprises the terrain type.
[0041] determine an indoor or outdoor type of the environment where the mobile device is currently located based on one or more of the illumination intensity information, the WIFI signal strength, and the mobile cellular signal strength, wherein the environment type comprises the indoor or outdoor type.
[0042] determine a crowded degree of the environment where the mobile device is currently located based on the people flow information, wherein the environment type comprises the crowded degree.
[0043] In some embodiments, the second processing module is configured to:
[0044] determine a preset motion mode of the mobile device, wherein the preset motion mode is a motion mode with the longest total duration in a historical motion process of the mobile device or a current motion mode of the mobile device.
[0045] determine a correspondence between an environment type and a positioning frequency corresponding to the preset motion mode from a correspondence between environment types and positioning frequencies corresponding to different motion modes.
[0046] In some embodiments, the third processing module is configured to:
[0047] determine a motion complexity of the mobile device based on the motion direction information.
[0048] update the target time to a current time in a case where the motion complexity is greater than or equal to a preset threshold.
[0049] In some embodiments, the third processing module is configured to:
[0050] determine motion prediction data of the mobile device in a preset future time period based on historical motion data of the mobile device, the motion prediction data being used to indicate a motion pattern in the preset future time period, the device state information comprising the motion prediction data;
[0051] delay the target time by a first time length in a case where the motion prediction data indicates that the motion pattern is a first motion pattern before the target time, and advance the target time by a second time length in a case where the motion pattern is a second motion pattern, wherein a motion speed of the first motion pattern is less than a motion speed of a current motion pattern, and a motion speed of the second motion pattern is greater than the motion speed of the current motion pattern.
[0052] In some embodiments, the device state information comprises mobile cell information of the mobile device, and the third processing module is configured to:
[0053] determine whether a mobile cell accessed by the mobile device changes based on the mobile cell information.
[0054] update the target time to a current time in a case where the mobile cell accessed by the mobile device changes.
[0055] In a third aspect, an embodiment of the present application provides a mobile device, comprising a memory and a processor.
[0056] The memory stores computer-executed instructions.
[0057] The processor executes the computer-executed instructions stored in the memory, so that the processor executes the first aspect and various possible implementation manners of the first aspect.
[0058] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores computer-executed instructions, and the computer-executed instructions are executed by a processor to implement the first aspect and various possible implementation manners of the first aspect.
[0059] In a fifth aspect, an embodiment of the present application provides a computer program product, which comprises a computer program, and the computer program is executed by a processor to implement the first aspect and various possible implementation manners of the first aspect.
[0060] The positioning method of the mobile device, the mobile device, the storage medium and the program product provided by the embodiments of the present application can determine a target time for next time to start the satellite positioning module by collecting environment information of the environment where the mobile device is currently located after starting the satellite positioning module to perform positioning and closing the satellite positioning module, and the target time is updated based on device state information of the mobile device before the target time is reached. The scheme dynamically adjusts the timing of next time to start the satellite positioning module based on the environment information of the environment where the mobile device is currently located and the device state information, balances the power consumption and the positioning accuracy, and can better meet the actual positioning requirements and improve the user experience. BRIEF DESCRIPTION OF DRAWINGS
[0061] The accompanying drawings, which are incorporated herein and form a part of the specification, illustrate embodiments consistent with the present application and, together with the description, further serve to explain the principles of the present application.
[0062] Figure 1 The flowchart of the positioning method of the mobile device provided by the present application Figure 1 ;
[0063] Figure 2 The flowchart of the positioning method of the mobile device provided by the present application Figure 2 ;
[0064] Figure 3 The structural diagram of the positioning device of the mobile device provided by the present application
[0065] Figure 4 The structural diagram of the mobile device provided by the present application
[0066] The above drawings have shown the specific embodiments of the present application, and more detailed description will be given hereinafter. These drawings and the description are not intended to limit the scope of the concept of the present application by any means, but to illustrate the concept of the present application to those skilled in the art by referring to specific embodiments. DETAILED DESCRIPTION
[0067] The exemplary embodiments will be described in detail herein with reference to the drawings. Unless otherwise specified, the same or similar components are denoted by the same reference numerals throughout the different drawings. The embodiments described in the following exemplary embodiments do not represent all the embodiments consistent with the present application. Rather, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.
[0068] In schemes that activate the satellite positioning module at fixed time intervals, cumulative errors occur during location calculations based on sensor data collected by mobile devices. Therefore, the longer the fixed time interval, the greater the cumulative error and the lower the positioning accuracy. However, if the fixed time interval is too short, it is difficult to reduce power consumption. Thus, this scheme struggles to balance power consumption and positioning accuracy. Furthermore, usage needs may change in real time for different scenarios and users, making it difficult to meet actual positioning requirements and resulting in a poor user experience.
[0069] To address the aforementioned issues, this application proposes a positioning method for mobile devices. In this method, after activating and deactivating the satellite positioning module, the target time for activating the satellite positioning module next is determined by collecting environmental information about the mobile device's current environment. Furthermore, before reaching the target time, the target time is updated based on the mobile device's device status information. This approach dynamically adjusts the timing of activating the satellite positioning module based on the environmental and device status information of the mobile device's current environment, achieving a balance between power consumption and positioning accuracy. It also better meets actual positioning needs and improves user experience.
[0070] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will be described below with reference to the accompanying drawings.
[0071] Figure 1 Flowchart of the positioning method for the mobile device provided in this application Figure 1 The method can be executed by a mobile device. Figure 1 As shown, the method includes:
[0072] S101. Activate the satellite positioning module of the mobile device for positioning. After obtaining real-time positioning information, turn off the satellite positioning module and collect environmental information of the current environment of the mobile device.
[0073] Mobile devices can be any device with positioning capabilities, such as mobile phones, smart wearable devices, or logistics equipment with location tracking functions. The satellite positioning module can be a BeiDou Navigation Satellite System (BDS) module, a Global Positioning System (GPS) module, a Global Navigation Satellite System (GLONASS) module, or a Galileo satellite navigation system module, etc., and this application does not limit the scope of the embodiments.
[0074] The mobile device's satellite positioning module is activated for location services. This can be done either when the application on the mobile device begins location services, or when a target time is reached (described in subsequent steps). After obtaining location information each time the mobile device activates its satellite positioning module, it shuts it down and waits for the next opportunity to activate it, which is the target time. This target time is determined based on the environmental information of the mobile device's current environment.
[0075] Environmental information collected by mobile devices may include one or more of the following: light intensity, temperature and humidity, altitude, air pressure, Wi-Fi signal strength, mobile cellular signal strength, and pedestrian traffic.
[0076] For example, light intensity information can be collected by a photosensitive sensor or an ambient light sensor. The sensor can convert light intensity into an electrical signal based on the photoelectric effect, and the magnitude of the light intensity can be characterized by the level of the electrical signal.
[0077] For example, temperature and humidity information can be detected by a temperature and humidity sensor. It should be noted that the temperature and humidity sensor can be integrated or standalone.
[0078] For example, air pressure information can be collected by an air pressure sensor. The air pressure sensor uses piezoresistive or capacitive sensing technology to convert air pressure into an electrical signal, and the level of the electrical signal is used to characterize the air pressure.
[0079] For example, altitude information can be indirectly calculated from air pressure collected by a barometer. Similarly, Wi-Fi signal strength can be obtained from the Wi-Fi chip in a mobile device; for instance, the Wi-Fi chip can analyze Received Signal Strength Indication (RSSI) values in the 2.4GHz / 5GHz band.
[0080] For example, mobile cellular signal strength can be obtained by receiving radio frequency signals transmitted by the base station via an antenna, demodulating them with a baseband chip, or by detecting them with a dedicated radio frequency sensor.
[0081] For example, pedestrian flow information can be collected through infrared photoelectric sensors or cameras, and pedestrian density can be determined through infrared reflection or image recognition.
[0082] S102. Determine the target time to activate the satellite positioning module next based on environmental information.
[0083] The required positioning frequency may vary depending on the environment in which the mobile device is located. For example, the required positioning frequency may differ between indoor and outdoor environments, between mountainous and urban environments, and between open and crowded environments. Actual environmental conditions can be even more complex, encompassing various scenarios such as open urban environments and congested mountainous areas. Therefore, it is necessary to combine environmental information about the mobile device's current location to determine the target time for activating the satellite positioning module next, ensuring that the timing of each activation meets the needs of the current environment.
[0084] S103. Before reaching the target time, use the sensors of the mobile device to collect data for positioning calculation, so as to update the real-time positioning information, and obtain the device status information of the mobile device, and update the target time based on the device status information.
[0085] After the satellite positioning module is turned off and before the target time is reached, the mobile device collects data through sensors to perform positioning calculations. For example, the mobile device uses accelerometers, gyroscopes and other sensors to collect information such as the acceleration and angular velocity of the mobile device. Based on the position information obtained by the satellite positioning module, positioning calculations are performed to obtain updated positioning information.
[0086] For example, the positioning information from the satellite positioning module is used as the initial position. The attitude information of the mobile device is updated based on the angular velocity, and the attitude information is transformed from the sensor coordinate system to the world coordinate system to obtain the rotation matrix. Based on the rotation matrix, the acceleration is transformed to the world coordinate system, and then the acceleration is integrated to obtain the velocity of the mobile device. The current position of the mobile device is determined based on the initial position and velocity. The mobile device can use a low-power microcontroller unit (MCU) to perform the above positioning calculations to reduce power consumption.
[0087] During the above process, the mobile device also acquires its own device status information, which may include the current status information of the mobile device, real-time data collected by the sensors of the mobile device, or the status prediction information of the mobile device within a preset period of time in the future. The device status information represents the current or preset period of time in which the mobile device is in a state.
[0088] In the preceding steps, the target time for the next activation of the satellite positioning module was determined based on the environmental information of the mobile device's current environment, i.e., based on the external environment. In this step, however, the target time is updated by combining this with the mobile device's own device status information. This ensures that the timing of the next activation of the satellite positioning module not only matches the environmental conditions but also better reflects the current state of the mobile device. Updating the target time can involve advancing or delaying it. Understandably, after the target time is updated, the mobile device will activate the satellite positioning module according to the updated target time.
[0089] The positioning method for mobile devices provided in this application, after activating the satellite positioning module for positioning and then deactivating it, determines the target time for activating the satellite positioning module again by collecting environmental information of the current environment of the mobile device. Furthermore, before reaching the target time, the target time is updated based on the device status information of the mobile device. This scheme dynamically adjusts the timing of activating the satellite positioning module again based on the current external environment of the mobile device and the device status information of the mobile device itself, achieving a balance between power consumption and positioning accuracy, and better meeting actual positioning needs and improving user experience.
[0090] Figure 2 Flowchart of the positioning method for the mobile device provided in this application Figure 2 ,like Figure 2 As shown, in this embodiment... Figure 1 Based on the embodiments, the steps are described in more detail below. The method includes:
[0091] S201. Activate the satellite positioning module of the mobile device for positioning. After obtaining real-time positioning information, turn off the satellite positioning module and collect environmental information of the current environment of the mobile device.
[0092] This step can be found in [link / reference]. Figure 1 S101 in the illustrated embodiment will not be described again here.
[0093] S202. Based on environmental information, determine the environment type of the current environment in which the mobile device is located.
[0094] The environment type of the current environment in which the mobile device is located can include one or more aspects. That is, the environment can be classified in different ways to obtain environment types under different classification methods. For example, environment types can include terrain types classified by topography, indoor / outdoor types classified by indoor or outdoor, and congestion levels classified by pedestrian flow. The environment type of the current environment in which the mobile device is located can include environment types under one or more classification methods.
[0095] In some scenarios, the terrain type of the current environment of the mobile device can be determined based on one or more of the temperature and humidity information, altitude information, and air pressure information. The environment type includes terrain type.
[0096] In one implementation, this embodiment of the application can pre-define multiple terrain types and one or more features of temperature and humidity information, altitude information, and air pressure information corresponding to each terrain type. These features may include threshold ranges, trends, and magnitudes of change for the temperature and humidity information, altitude information, and air pressure information over a preset time period. The mobile device compares one or more of the detected temperature and humidity information, altitude information, and air pressure information with the pre-defined features of one or more of the temperature and humidity information, altitude information, and air pressure information corresponding to each of the various terrain types, and determines the matched terrain type as the terrain type of the environment in which the mobile device is currently located.
[0097] For example, in a mountain climbing scenario, if a mobile device detects a significantly lower air pressure value than the standard sea level using a barometric pressure sensor, and displays an altitude of 4800 meters based on altitude information, combined with the low temperature detected by a temperature sensor, it can be determined that the mobile device is in high-altitude mountainous terrain. Similarly, in a marine environment, if a mobile device detects an altitude close to 0 meters and persistently high humidity, it can be determined that the mobile device is in coastal or open water terrain.
[0098] In one implementation, the terrain classification model can be pre-trained in this application embodiment. One or more of the detected temperature and humidity information, altitude information, and air pressure information are input into the terrain classification model to obtain the terrain type of the current environment of the mobile device output by the terrain classification model.
[0099] In some scenarios, the indoor / outdoor type of the current environment of a mobile device can be determined based on one or more of the following: light intensity information, WIFI signal strength, and mobile cellular signal strength. The environment type includes indoor / outdoor types.
[0100] In this embodiment, one or more features of light intensity, Wi-Fi signal strength, and mobile cellular signal strength corresponding to indoor and outdoor types can be preset. These features may include light intensity information, threshold ranges for Wi-Fi signal strength and mobile cellular signal strength, their trends over a preset time period, and the magnitude of change. The mobile device compares one or more of the detected light intensity, Wi-Fi signal strength, and mobile cellular signal strength with the preset features of the same features corresponding to indoor and outdoor types, and determines the matched indoor or outdoor type as the environment type of the mobile device's current location.
[0101] For example, if a mobile device detects a light intensity that is consistently above 20,000 lux, it can be determined that the mobile device is in an outdoor environment, meaning the environment type is outdoor. Similarly, if a mobile device cannot scan for any known Wi-Fi networks or the Wi-Fi signal strength is consistently below -85dBm, it can be determined that the mobile device is in an outdoor environment, meaning the environment type is outdoor. Furthermore, if a mobile device detects multiple cellular signal strengths that are all above -90dBm, it can be determined that the mobile device is in an outdoor environment, meaning the environment type is outdoor.
[0102] Mobile devices can also make judgments based on multiple environmental information. For example, if a mobile device detects that the light intensity is consistently above 20,000 lux, while the WiFi signal strength is significantly reduced to below -85dBm and the mobile cellular network signal fluctuates, it can be determined that the mobile device is in an outdoor environment, i.e., the environment type is outdoor. On the other hand, if a mobile device detects that the light intensity is below 500 lux, the WiFi signal strength is stable at around -40dBm, and there are multiple overlapping mobile cellular signals, it can be determined that the mobile device is in an indoor environment, i.e., the environment type is indoor.
[0103] In some scenarios, the level of congestion in the current environment of a mobile device is determined based on pedestrian traffic information, and the environment type includes the level of congestion.
[0104] For example, mobile devices can set multiple traffic threshold ranges, each corresponding to a congestion level. For instance, by using four traffic threshold ranges, the congestion level can be divided into four levels: smooth, normal, congested, and extremely congested. The detected traffic information can be compared with the traffic threshold ranges corresponding to different congestion levels to determine the congestion level of the environment in which the mobile device is currently located.
[0105] When a mobile device determines the environment type of its current environment based on the detected environmental information, it can determine the environment type under the above classification methods as much as possible according to the various environmental information that can be detected at present. The final determined environment type of the current environment includes the environment type under the various classification methods that can be determined based on the currently detected environmental information.
[0106] For example, if the currently detected environmental information includes temperature and humidity, altitude, and pedestrian traffic, then the determined environment type includes terrain type and crowding level. Similarly, if the currently detected environmental information includes temperature and humidity, altitude, and Wi-Fi signal strength, then the determined environment type includes terrain type and indoor / outdoor type. Finally, if the currently detected environmental information includes temperature and humidity and altitude, then the determined environment type includes terrain type.
[0107] S203. Determine the target time based on the environment type of the current environment of the mobile device and the correspondence between the environment type and the positioning frequency.
[0108] As explained in the foregoing embodiments, different environment types may require different positioning frequencies. In this embodiment, the correspondence between environment type and positioning frequency can be preset. It should be noted that the correspondence between environment type and positioning frequency can be the correspondence between individual environment types and positioning frequencies, such as the correspondence between various terrain types and positioning frequencies, the correspondence between indoor and outdoor types and positioning frequencies, and the correspondence between various levels of congestion and positioning frequencies.
[0109] The correspondence between environment type and positioning frequency can also be a correspondence between multiple combinations of environment types and positioning frequencies. For example, there can be a correspondence between environment type and positioning frequency combinations of terrain type and congestion level; a correspondence between environment type and positioning frequency combinations of terrain type and indoor / outdoor type; a correspondence between environment type and positioning frequency combinations of indoor / outdoor type and congestion level; and a correspondence between environment type and positioning frequency combinations of terrain type, indoor / outdoor type, and congestion level. The above-mentioned correspondences between environment types and positioning frequencies include positioning frequencies corresponding to various possible combinations of environment types. These correspondences can be obtained through pre-testing or simulation in various environments.
[0110] If the environment type of the mobile device's current environment only includes one classification method, then the positioning frequency corresponding to the environment type of the mobile device's current environment is determined according to the correspondence between the environment type and the positioning frequency.
[0111] For example, if the current environment of the mobile device is coastal terrain, the positioning frequency corresponding to the coastal terrain is determined based on the correspondence between terrain type and positioning frequency.
[0112] If the environment type of the current environment of the mobile device includes a combination of two or more classification methods, then the positioning frequency corresponding to the current environment type of the mobile device is determined according to the correspondence between the combined environment type and the positioning frequency.
[0113] For example, if the current environment of the mobile device is coastal terrain with a congestion level of "unobstructed," then the positioning frequency corresponding to the coastal terrain with a congestion level of "unobstructed" is determined based on the correspondence between the environmental type and positioning frequency of the combination of terrain type and congestion level. Similarly, if the current environment of the mobile device is coastal terrain with a congestion level of "unobstructed" and is outdoors, then the positioning frequency corresponding to the coastal terrain with a congestion level of "unobstructed" and is outdoors is determined based on the correspondence between the environmental type and positioning frequency of the combination of terrain type, indoor / outdoor type, and congestion level.
[0114] After determining the positioning frequency, the positioning period is determined based on the positioning frequency. The time when the satellite positioning module is started this time is added to the positioning period to obtain the target time when the satellite positioning module is started next. The time when the satellite positioning module is started this time is the time when the satellite positioning module is started in S201.
[0115] In some embodiments, a preset motion mode of the mobile device is determined, wherein the preset motion mode is the motion mode with the longest total duration in the historical motion process of the mobile device or the current motion mode of the mobile device; and the correspondence between the environment type and the positioning frequency corresponding to the preset motion mode is determined from the correspondence between the environment type and the positioning frequency corresponding to the different motion modes.
[0116] When using a mobile device, the device may be stationary or moving at different speeds. When determining the positioning frequency, the mobile device's movement mode can also be considered to ensure that the satellite positioning module activates at the appropriate time regardless of the device's speed. Optionally, the movement mode can be categorized based on the mobile device's speed, such as stationary mode, slow walking mode, fast walking mode, running mode, cycling mode, and riding mode, or slow mode, normal mode, fast mode, and ultra-fast mode.
[0117] The aforementioned correspondence between environment type and positioning frequency can include the correspondence between environment type and positioning frequency under different motion modes. For example, if a mobile device is in slow mode for an extended period, the correspondence between the environment type and positioning frequency corresponding to slow mode is used to determine when to activate the satellite positioning module. The motion mode in which the mobile device is in the longest duration can be determined based on the mobile device's historical motion data. For example, if the mobile device's current motion mode is fast mode, the correspondence between the environment type and positioning frequency corresponding to fast mode is used to determine when to activate the satellite positioning module.
[0118] In some embodiments, steps S202 to S203 described above can be replaced by other methods. For example, in this embodiment, a positioning frequency prediction model can be pre-trained. Environmental information is input into the pre-trained positioning frequency prediction model to obtain the positioning frequency output by the model. Based on the current time and the positioning frequency, the target time is determined. By pre-training the positioning frequency prediction model to predict the optimal positioning frequency, positioning accuracy is improved.
[0119] S204. Before reaching the target time, use the sensors of the mobile device to collect data for positioning calculation, so as to update the real-time positioning information, and obtain the device status information of the mobile device, and update the target time based on the device status information.
[0120] In this step, data collected by the mobile device's sensors is used to perform location calculations to update the real-time location information. (See also...) Figure 1 S103 in the illustrated embodiment will not be described again here. The following describes the acquisition of the device status information of the mobile device and the updating of the target time based on the device status information.
[0121] In some embodiments, the device status information includes motion direction information; for example, the motion direction information can be detected by a geomagnetic sensor. Based on the motion direction information, the motion complexity of the mobile device is determined; if the motion complexity is greater than or equal to a first preset threshold, the target time is updated to the current time.
[0122] Optionally, the number of orientation changes of the mobile device can be determined based on the motion direction information. For example, if the orientation change exceeds a preset value, it is determined that an orientation change has occurred, and the orientation change count is incremented by 1. The motion complexity is determined by the number of orientation changes; the more orientation changes, the higher the motion complexity. Optionally, the fluctuation of the orientation changes of the mobile device can be determined based on the motion direction information. The fluctuation of orientation changes is used to characterize the motion complexity; the greater the fluctuation of orientation changes, the higher the motion complexity.
[0123] If the motion complexity is greater than or equal to the first preset threshold, it indicates that the current position change of the mobile device may be relatively complex and the positioning requirements may be high. Therefore, the target time is updated to the current time so that the satellite positioning module can be activated in a timely manner for positioning.
[0124] Optionally, if the motion complexity is less than the second preset threshold, it means that the mobile device is currently in a low-complexity motion such as linear motion, and the positioning requirements may be low. The target time can be delayed to reduce power consumption.
[0125] In some embodiments, the device status information includes motion prediction data. Based on the historical motion data of the mobile device, motion prediction data for the mobile device within a preset future time period is determined. The motion prediction data is used to indicate the motion pattern within the preset future time period. Optionally, the motion prediction model can be trained in advance using sample data. The historical motion data of the mobile device is input into the motion prediction model to obtain the motion prediction data output by the model.
[0126] If the motion prediction data indicates that the target time is before the target time and the motion mode is the first motion mode, the target time is delayed by a first duration. If the motion mode is the second motion mode, the target time is advanced by a second duration. In this case, the motion speed of the first motion mode is less than the motion speed of the current motion mode, and the motion speed of the second motion mode is greater than the motion speed of the current motion mode.
[0127] If the mobile device's movement mode is the first mode within the preset future timeframe, indicating that the device's speed may decrease compared to its current speed (meaning the device's speed gradually decreases), then the positioning frequency can be appropriately reduced, essentially delaying the target time to lower power consumption. If the mobile device's movement mode is the second mode within the preset future timeframe, indicating that the device's speed may increase compared to its current speed (meaning the device's speed gradually increases), then the positioning frequency can be appropriately increased, essentially advancing the target time to improve positioning accuracy. This ensures that the timing of activating the satellite positioning module matches the mobile device's movement state.
[0128] In some embodiments, the device status information includes mobile cell information accessed by the mobile device; based on the mobile cell information, it is determined whether the mobile cell accessed by the mobile device has changed; if the mobile cell accessed by the mobile device has changed, the target time is updated to the current time.
[0129] When the mobile cell accessed by a mobile device changes, it usually indicates a significant change in the mobile device's location. In such cases, timely satellite positioning is required to ensure positioning accuracy. Therefore, the target time is updated to the current time, so that the satellite positioning module can be activated in a timely manner when the mobile cell changes.
[0130] Figure 3 A schematic diagram of the positioning device for the mobile device provided in this application is shown below. Figure 3 As shown, the positioning device 300 for a mobile device provided in this embodiment includes:
[0131] The first processing module 301 is used to activate the satellite positioning module of the mobile device for positioning, and after obtaining real-time positioning information, to shut down the satellite positioning module and collect environmental information of the current environment of the mobile device.
[0132] The second processing module 302 is used to determine the target time for activating the satellite positioning module next based on environmental information;
[0133] The third processing module 303 is used to perform positioning calculations by collecting data from the sensors of the mobile device before reaching the target time, so as to update the real-time positioning information, and to obtain the device status information of the mobile device and update the target time based on the device status information.
[0134] In some implementations, the second processing module 302 is used to:
[0135] Based on environmental information, determine the environment type of the current environment in which the mobile device is located;
[0136] The target time is determined based on the current environment type of the mobile device and the correspondence between the environment type and the positioning frequency.
[0137] In some implementations, environmental information includes one or more of the following: light intensity information, temperature and humidity information, altitude information, air pressure information, WIFI signal strength, mobile cellular signal strength, and pedestrian traffic information.
[0138] The second processing module 302 is used for:
[0139] Based on one or more of the temperature and humidity information, altitude information, and air pressure information, determine the terrain type of the environment in which the mobile device is currently located. The environment type includes terrain type.
[0140] Based on one or more of the following: light intensity information, WIFI signal strength, and mobile cellular signal strength, determine the indoor or outdoor type of the current environment in which the mobile device is located. The environment type includes indoor and outdoor types.
[0141] The congestion level of the current environment of the mobile device is determined based on the flow of people. The environment type includes the degree of congestion.
[0142] In some implementations, the second processing module 302 is used to:
[0143] Determine the preset motion mode of the mobile device, wherein the preset motion mode is the motion mode with the longest total duration in the historical motion process of the mobile device or the current motion mode of the mobile device.
[0144] From the correspondence between the environment type and positioning frequency corresponding to different motion modes, determine the correspondence between the environment type and positioning frequency corresponding to the preset motion mode.
[0145] In some implementations, the third processing module 303 is used for:
[0146] Determine the motion complexity of the mobile device based on motion direction information;
[0147] If the motion complexity is greater than or equal to a preset threshold, the target time will be updated to the current time.
[0148] In some implementations, the third processing module 303 is used for:
[0149] Based on the historical motion data of the mobile device, the motion prediction data of the mobile device in the future preset time period is determined. The motion prediction data is used to indicate the motion mode in the future preset time period. The device status information includes the motion prediction data.
[0150] If the motion prediction data indicates that the target time is before the target time and the motion mode is the first motion mode, the target time is delayed by a first duration. If the motion mode is the second motion mode, the target time is advanced by a second duration. In this case, the motion speed of the first motion mode is less than the motion speed of the current motion mode, and the motion speed of the second motion mode is greater than the motion speed of the current motion mode.
[0151] In some implementations, the device status information includes mobile cell information accessed by the mobile device; the third processing module 303 is used for:
[0152] Based on mobile cell information, determine whether the mobile cell accessed by the mobile device has changed;
[0153] If the mobile cell accessed by a mobile device changes, the target time will be updated to the current time.
[0154] The positioning device for the mobile device provided in this embodiment can execute the method provided in the above method embodiment. Its implementation principle and technical effect are similar, and will not be described in detail here.
[0155] Figure 4 This is a schematic diagram of the structure of the mobile device provided in this application. Figure 4 As shown, the mobile device 400 provided in this embodiment includes at least one processor 401 and a memory 402. Optionally, the mobile device 400 further includes a communication component 403. The processor 401, memory 402, and communication component 403 are connected via a bus 404.
[0156] In a specific implementation, at least one processor 401 executes computer execution instructions stored in memory 402, causing at least one processor 401 to perform the above-described method.
[0157] The specific implementation process of processor 401 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.
[0158] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0159] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.
[0160] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.
[0161] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.
[0162] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method.
[0163] The aforementioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.
[0164] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an application-specific integrated circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.
[0165] The division of units is merely a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0166] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0167] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0168] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0169] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0170] Finally, it should be noted that other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein, and is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.
Claims
1. A positioning method of a mobile device, characterized by, The method comprises: starting a satellite positioning module of the mobile device to perform positioning, obtaining real-time positioning information, and then closing the satellite positioning module, and collecting environment information of an environment in which the mobile device is currently located; determining a target time at which the satellite positioning module is to be started next time based on the environment information; before the target time is reached, performing positioning calculation by collecting data by using a sensor of the mobile device to update the real-time positioning information, and obtaining device state information of the mobile device, and updating the target time based on the device state information.
2. The method of claim 1, wherein, The method further comprises: determining an environment type of the environment in which the mobile device is currently located based on the environment information; determining the target time based on the environment type of the environment in which the mobile device is currently located and a corresponding relationship between environment types and positioning frequencies.
3. The method of claim 2, wherein, The environment information comprises one or more of illumination intensity information, temperature and humidity information, altitude information, air pressure information, WIFI signal strength, mobile cellular signal strength, and crowd information. The method further comprises: determining a terrain type of the environment in which the mobile device is currently located based on one or more of the temperature and humidity information, the altitude information, and the air pressure information, wherein the environment type comprises the terrain type; determining an indoor or outdoor type of the environment in which the mobile device is currently located based on one or more of the illumination intensity information, the WIFI signal strength, and the mobile cellular signal strength, wherein the environment type comprises the indoor or outdoor type; determining a crowded degree of the environment in which the mobile device is currently located based on the crowd information, wherein the environment type comprises the crowded degree.
4. The method of claim 2, wherein, The method further comprises: determining a preset motion mode of the mobile device, wherein the preset motion mode is a motion mode with the longest total duration in a historical motion process of the mobile device or a current motion mode of the mobile device; determining a corresponding relationship between an environment type and a positioning frequency corresponding to the preset motion mode from corresponding relationships between environment types and positioning frequencies corresponding to different motion modes.
5. The method according to any one of claims 1 to 4, characterized in that, The device state information comprises motion direction information, and the method further comprises: determining a motion complexity of the mobile device based on the motion direction information; in a case where the motion complexity is greater than or equal to a preset threshold, updating the target time to a current time.
6. The method according to any one of claims 1 to 4, characterized in that, The method further comprises: determining motion prediction data of the mobile device in a future preset time length based on historical motion data of the mobile device, wherein the motion prediction data is used to indicate a motion mode in the future preset time length, and the device state information comprises the motion prediction data. The updating the target time based on the device state information comprises: in the case that the motion prediction data indicates that the motion mode is a first motion mode before the target time, delaying the target time by a first time length, and in the case that the motion mode is a second motion mode before the target time, advancing the target time by a second time length, wherein the motion speed of the first motion mode is less than the motion speed of a current motion mode, and the motion speed of the second motion mode is greater than the motion speed of the current motion mode.
7. The method according to any one of claims 1 to 4, characterized in that, The device state information comprises mobile cell information of a mobile cell accessed by the mobile device; and the updating the target time based on the device state information comprises: determining, based on the mobile cell information, whether a change occurs to the mobile cell accessed by the mobile device; in the case that a change occurs to the mobile cell accessed by the mobile device, updating the target time to a current time.
8. A mobile device, comprising: comprise: a memory, a processor; the memory stores computer-executed instructions; the processor executes the computer-executed instructions stored in the memory, so that the processor executes the method according to any one of claims 1-7.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executed instructions, and the computer-executed instructions are executed by the processor to implement the method according to any one of claims 1-7.
10. A computer program product, characterised in that, comprise a computer program, and the computer program is executed by the processor to implement the method according to any one of claims 1-7.