Abstract:
Systems, methods, and program products for providing services to a user by a mobile device based on the user's daily routine of movement. The mobile device determines whether a location cluster indicates a significant location for the user based on one or more hints that indicate an interest of the user in locations in the cluster. The mobile device can perform adaptive clustering to determine a size of area of the significant location based on how multiple locations converge in the location cluster. The mobile device can provide location-based services for calendar items, including predicting a time of arrival at an estimated location of a calendar item. The mobile device can provide various services related to a location of the mobile device or a significant location of the user through an application programming interface (API).
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:
Systems, methods, and computer program products for determining the location and direction of travel of a mobile device using map vector constraints is disclosed.
Abstract:
Methods, program products, and systems for proximity-based notifications are described. A proximity-based notification system can receive a request to be notified when a contact's mobile device is in proximity to a user's mobile device, obtain permission to receive information associated with the contact, receive the information associated with the contact, detect that the contact's mobile device is in proximity to the user's mobile device based on the information associated with the contact, and notify the user that the contact's mobile device is in proximity to the user's mobile device.
Abstract:
Methods, program products, and systems for multi-tier detection of a geofence are disclosed. In general, in one aspect, a mobile device can be configured to perform a task when the mobile device enters a geographic region. The mobile device can monitor a current location using a multi-tiered approach. A baseband subsystem can monitor a coarse location of the mobile device using a CDMA system identifier, a CDMA network identifier, a CDMA zone identifier, or a CDMA base station identifier, in that order, as the mobile device moves closer to the geographic region. The baseband subsystem can notify an application subsystem when the mobile device is in a cell that intersects the geographic region. The application subsystem can perform the task upon notification.
Abstract:
Techniques of determining a point of interest (POI) location using anonymous application usage data are described. A POI location determination system can determine geographic coordinates of a POI based on anonymous application usage data received from multiple mobile devices. The system can associate an application program with a POI. The anonymous application usage data can include an identifier or a category of the application program launched by the mobile devices, and a device location of each mobile device at time of launching the application program. Based on the device locations, the system can determine that launching of the application program is concentrated in a geographic area. The system can designate a centroid of the geographic area as a location of the POI.
Abstract:
Reduced resolution location determination for improved anonymity of a user location is disclosed. In some implementations, a first location of a computing device operating in a geographic area is determined. A population density of the geographic area is estimated. A grid overlay is generated, including a number of cells based on the estimated population density. Using the grid overlay, a second location is generated for the computing device that is less precise than the first location. The less precise second location can be used in a local search or other application to improve the anonymity of the user location.
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:
Anonymous application usage data (and optionally motion activity classification) are collected on mobile devices and transmitted to a server computer. The anonymous application usage data, which are associated with an application running on the mobile devices, are processed by one or more server computers to determine one or more activity paths. Frequency of usage of the activity paths can also be determined from anonymous application usage data.
Abstract:
Survey data for an environment is used to predict the accuracy of a position estimate in the environment and whether or not more survey data may improve that accuracy. In some implementations, a user performs a site survey of an environment by observing the strengths of radio frequency signals at various survey points in the environment. An expected positioning accuracy of the surveyed environment can be determined using the new survey data collected and optionally historical survey data for the environment. The user can be informed about the usefulness of collecting additional survey data and/or the expected positioning accuracy in the environment.