Abstract:
A method for identifying a suggested application on a mobile device is disclosed. The method includes detecting an event, determining a first location of the mobile device, identifying that the first location is within a first location region of a plurality of predetermined location regions, and then measuring one or more sensor values at one or more times. The measured sensor values may then be used to create a first- data point. In response to identifying the first location region, a plurality of clusters of data points may be retrieved. A first cluster of the plurality of clusters corresponding to the first data point may then be identified. The method may further include identifying a set of one or more applications, and then providing a message to the user based on the identified set of one or more applications.
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:
Crowd-sourced localized application usage data is collected from mobile devices at a usage location and sent to a network-based service. The network-based service analyzes the data to determine a single most relevant application correlated to the usage location. Once the most relevant application is determined, a recommendation for the application is sent to client devices operating at the usage location. In some implementations the data is processed to determine whether the usage location is a chained venue, a large venue or an event. Once the usage location has been determined, the most relevant application can be selected for recommendation.
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:
Techniques for predictive user assistance are described. A mobile device can learn movement patterns of the mobile device. The mobile device can construct a state model that is an abstraction of locations where the mobile device stayed for sufficient amount of time. The state model can include states representing the locations, and transitions representing movement of the mobile device between the locations. The mobile device can use the state model, a current location of the mobile device, and a current time to determine a predicted future location of the mobile device at a given future time. Based on the predicted location and the given future time, the mobile device can predict what assistance a user of the mobile device may request. The mobile device can then provide the assistance to the user before the given future time.
Abstract:
Methods, program products, and systems of using a mobile WAP for location and context purposes are disclosed. In general, in one aspect, a server can estimate an effective location 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. In some implementations, the server can identify a mobile wireless access gateway based on a distance comparison. Data indicating the mobility of a wireless access gateway can be used by a mobile device to initiate one or more actions, including managing power of the mobile device, modifying entrance and exit conditions of virtual fences and determining a context of the mobile device.
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 user interface enables a user to calibrate the position of a three dimensional model with a real-world environment represented by that model. Using a device's sensor suite, the device's location and orientation is determined. A video image of the device's environment is displayed on the device's display. The device overlays a representation of an object from a virtual reality model on the video image. The position of the overlaid representation is determined based on the device's location and orientation. In response to user input, the device adjusts a position of the overlaid representation relative to the video image.
Abstract:
A user interface enables a user to calibrate the position of a three dimensional model with a real-world environment represented by that model. Using a device's sensor, the device's location and orientation is determined. A video image of the device's environment is displayed on the device's display. The device overlays a representation of an object from a virtual reality model on the video image. The position of the overlaid representation is determined based on the device's location and orientation. In response to user input, the device adjusts a position of the overlaid representation relative to the video image.