Abstract:
Among other things, we describe a method that includes, on an electronic device, determining that a current quality metric of signals received by a location system of the electronic device does not meet a threshold quality metric, and based on the determination, selecting a recommendation for changing a position of the device in a manner that would alter the current quality metric. This aspect can also include corresponding systems, apparatus, and computer program products stored on a storage device.
Abstract:
Techniques of non-intrusive region notification are described. A mobile device can be programmed to trigger an application program when the mobile device enters or exits a region. The region can be defined by various virtual fencing technologies. If, at the time of entry or exit of a region, the mobile device is in a power-saving operating mode, the mobile device can transition to an active operating mode temporarily, register a fence-crossing event (entry or exit of the region) with the application program, and then transition back to the power-saving operating mode. The mobile device can launch the registered application program in response to the mobile device receiving a user input to enter the active operating mode. The application program can provide a user interface associated with the region on a display surface of the mobile device in place of a home screen or other user interface.
Abstract:
A proximity fence can be a location-agnostic fence defined by signal sources having no geographic location information. The proximity fence can correspond to a group of signal sources instead of a point location fixed to latitude and longitude coordinates. A signal source can be a radio frequency (RF) transmitter broadcasting a beacon signal. The beacon signal can include a payload that includes an identifier indicating a category to which the signal source belongs, and one or more labels indicating one or more subcategories to which the signal source belongs. The proximity fence defined by the group of signal sources can trigger different functions of application programs associated with the proximity fence on a mobile device, when the mobile device moves within the proximity fence and enters and exits different parts of the proximity fence corresponding to the different subcategories.
Abstract:
A wireless electronic device may include wireless communications circuitry and processing circuitry. The wireless communications circuitry may receive radio-frequency signals from external communications circuitry in a number of frequency channels of a communications band. The processing circuitry may gather received signal quality data such as receive signal strength indicator (RSSI) values from the radio-frequency signals received in each of the frequency channels. The processing circuitry may accumulate respective probability distributions of gathered RSSI values for each frequency channel and may compare each of the probability distributions to generate RSSI offset values for each frequency channel. The processing circuitry may gather additional RSSI values in one or more frequency channels and may adjust the additional RSSI values based on the associated RSSI offset values. The processing circuitry may use the adjusted RSSI values to determine an accurate location of the wireless electronic device.
Abstract:
Among other things, we describe a method that includes receiving, on a mobile device, an indication that an application executing on the mobile device has entered a background state, receiving, from the application, a value indicating a condition for providing location data to the application, disabling a resource associated with the application, while the resource associated with the application is disabled, storing location data received from a location system of the mobile device, and when the condition indicated by the value is met, enabling the resource associated with the application, and providing the stored location data to the application.
Abstract:
In an example method, a computer system receives a query from a mobile device, including an indication of a location of the mobile device, and an environmental measurement obtained by the mobile device at the location. A set of candidate points of interest in geographical proximity to the location is determined. For each of one or more candidate points of interest of the set, a location fingerprint of the candidate point of interest and contextual data regarding the candidate point of interest are obtained. A similarity between the environmental measurement and each location fingerprint is determined. A particular candidate point of interest is selected from among the set based on the similarity, and based on an assessment of the contextual data. A label of the selected point of interest is associated with the location and transmitted to the mobile device.
Abstract:
In some implementations, a beaconing protocol can be used to broadcast beacon information to mobile devices. The beaconing protocol can be used by a Bluetooth Low Energy (LE) (e.g., Bluetooth 4.0) beacon to transmit a package of information that identifies the beacon and indicates the calibrated transmission power (e.g., measured power) of the beacon. The package of information can be configured by beacon providers and/or beacon installers at the locations where the beacons are installed. When a mobile device receives the beacon package, the mobile device can use the beacon identification information and/or the measured power of the beacon to determine a location (e.g., precise location, geofence location) of the mobile device. In some implementations, the mobile device can transmit the beacon information to a server and the server can determine the location of the mobile device and send location and/or content information back to the mobile device.
Abstract:
Systems, methods and non-transitory, computer-readable storage mediums are disclosed for a multimode GNSS odometer. In some implementations, a method comprises: obtaining, by a device, position and velocity data from a sensor embedded in, or coupled to the device; statistically combining, by the device, the position and velocity data to generate a first delta distance travelled by the device over a period of time, the statistical combining including weighting a contribution of an integrated speed to the first delta distance, the integrated speed derived from the obtained velocity data and period of time; filtering, by the device, the first delta distance to generate a filtered first delta distance; and generating, by the device, a first estimate of total distance travelled by the device based on the filtered first delta distance.
Abstract:
Among other things, we describe a method that includes, on an electronic device, determining that a current quality metric of signals received by a location system of the electronic device does not meet a threshold quality metric, and based on the determination, selecting a recommendation for changing a position of the device in a manner that would alter the current quality metric. This aspect can also include corresponding systems, apparatus, and computer program products stored on a storage device.
Abstract:
In some implementations, a beaconing protocol can be used to broadcast beacon information to mobile devices. The beaconing protocol can be used by a Bluetooth Low Energy (LE) (e.g., Bluetooth 4.0) beacon to transmit a package of information that identifies the beacon and indicates the calibrated transmission power (e.g., measured power) of the beacon. The package of information can be configured by beacon providers and/or beacon installers at the locations where the beacons are installed. When a mobile device receives the beacon package, the mobile device can use the beacon identification information and/or the measured power of the beacon to determine a location (e.g., precise location, geofence location) of the mobile device. In some implementations, the mobile device can transmit the beacon information to a server and the server can determine the location of the mobile device and send location and/or content information back to the mobile device.