Abstract:
Systems, methods, devices and computer-readable mediums are disclosed for parking event detection and location estimation. In some implementations, a method comprises: determining, by a processor of a mobile device, a first activity state indicative of a possible parking event; obtaining, by the processor, a speed of the mobile device from a global navigation satellite system (GNSS) of the mobile device; obtaining, by the processor, pedometer data from a digital pedometer of the mobile device; determining, by the processor, a second activity state indicative of a possible parking event based at least in part on the GNSS speed and pedometer data; and responsive to the second activity state, estimating, by the processor, a location of the vehicle.
Abstract:
Systems, methods, and program products for determining a location of a calendar item are described. A mobile device can receive a calendar item including a description and a time. The mobile device can determine that, at the time specified in the calendar item, the mobile device is located at a location that is estimated to be significant to a user. The mobile device can store the description in association with the significant location. Upon receive a new calendar item containing at least one term in the description, the mobile device can predict that the user will visit the significant location at the time specified in the new calendar item. The mobile device can provide user assistance based on the prediction.
Abstract:
Using various functionalities of electronic devices such as applications that gather location information to provide a service to the user can come at the cost of significant power consumption, and consequently battery drainage. A data sharing system enables the creation of a network of participant devices where participant devices in the network can take turns in collecting and sharing data with the rest of the participant devices in the network. The one or more participant devices can share the obtained data through Bluetooth® low energy (BTLE) or other low consumption channel, so that the ensemble of participant devices could have better battery life, higher availability, and/or better accuracy, compared to each device having to individually obtain the data.
Abstract:
Techniques of determining a path using anonymous application usage data are described. A path determination system and method can determine a location and geometrical shape of a path based on anonymous application usage data received from one or more devices. The anonymous application usage data can include an identifier or a category of the application program executed by a device, and multiple locations of the device observed while the application program executes on the device. Based on the locations, the system and method can determine a path for associating with the application program. The system and method can use metadata of the application program for identifying the path in response to a query or a request. The system and method can provide the path to a device for display in an information layer on a virtual map.
Abstract:
Measurements can be obtained from sensors to determine a state of a device. The state can be used to determine whether to provide an alert. For example, after a first alert is provided, it can be determined that the device is not accessible to the user based on the determined state, and a second alert can be suppressed at a specified time after providing the first alert. The sensor measurements can be monitored after suppressing the second alert, and a state engine can detect a change in a state based on subsequent sensor measurements. If the state change indicates that the device is accessible to the user the second alert can be provided to the user. Alerts can be dismissed based on a change in state. A first device can coordinate alerts sent to or to be provided by a second device by suppressing or dismissing such alerts.
Abstract:
Methods, program products, and systems of location estimation using a probability density function are disclosed. In general, in one aspect, a server can estimate an effective altitude of a wireless access gateway using harvested data. The server can harvest location data from multiple mobile devices. The harvested data can include a location of each mobile device and an identifier of a wireless access gateway that is located within a communication range of the mobile device. The server can calculate an effective altitude of the wireless access gateway using a probability density function of the harvested data. The probability density function can be a sufficient statistic of the received set of location coordinates for calculating an effective altitude of the wireless access gateway. The server can send the effective altitude of the wireless access gateway to other mobile devices for estimating altitudes of the other mobile devices.
Abstract:
An application can specify a location service authorization type to be enforced by a mobile device. After the user authorizes the location service through an authorization dialog, the application can receive location service according to the authorization type. A first authorization type allows the application to receive continuous location updates and location events from a location service on the mobile device only when the application is in use. A second authorization type allows the application to always receive continuous location updates and location events when the application is running in a foreground or background. The text of the authorization dialog can be customized by the application to provide more detail on how the location data will be used by the application.
Abstract:
Mobile devices can provide app recommendations that are relevant to a location of interest. A localized app recommendation can be triggered (e.g., by a mobile device coming within a threshold distance of an application hotspot or some other user action). A location of interest can be determined. The location of interest can be the current location of the mobile device or another location (e.g., the destination in a mapping app). Using the location of interest, a localized application ranking database with app hotspot data can be queried with location data representing the location of interest. App recommendations can be received and displayed on the mobile device. Icons for apps that are relevant to the location of interest can be visually distinguished from other apps.
Abstract:
Methods, program products, and systems for managing a location database are described. A server computer can receive location information from location-aware mobile devices (e.g., GPS-enabled devices) located within a communication range of access points of a wireless communications network. The server computer can calculate average geographic locations using the received locations for each access point. Based on the average geographic locations, the server computer can assign the access points to cells of a geographic grid. The server computer can filter the access points in each cell based on popularity, stability, longevity, and freshness of the access point and the received data. When a second mobile device connects to an access point in a cell, the server computer can transmit locations of the access points in the cell and in neighboring cells to the second mobile device such that a location of the second mobile device can be estimated.
Abstract:
Techniques of range free proximity determination are described. A mobile device can determine an entry into or exit from a proximity fence upon determining that the mobile device is sufficiently close to a signal source. The proximity fence can be a virtual fence defined by the signal source and associated with a service. The mobile device can detect signals from multiple signal sources. The mobile device can determine that, among the signal sources, one or more signal sources are located closest to the mobile device based on a ranking of the signal sources using signal strength. The mobile device can determine a probability indicating a confident level of the ranking. The mobile device can determine that the mobile device entered or exited a proximity fence associated with a highest ranked signal source satisfying a confidence threshold.