Push-based location update
First Claim
1. A computer-implemented method, comprising:
- receiving a location-information-request from a first client device for location information of a second client device, the first client device and the second device being location-sharing friend devices of each other;
responding to the location-information-request by sending a stored location of the second client device to the first client device;
determining whether the stored location of the second client device is above a predetermined threshold age;
if the stored location is above the predetermined threshold age, sending a location-update-request for a location update to the second client device through a push-notification service;
receiving the location update from the second client device;
updating the stored location of the second client device according to the received location update; and
sending the updated stored location to the first client device through a push notification service without waiting for a second location-information-request from the first client device for the location information of the second client device.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, systems, and computer-readable media for a location information server to gather location updates by sending location-update-requests through a push notification service to a mobile device are disclosed. The mobile device provides location updates in response to the push-based location-update-requests received through the push notification service. The mobile device can switch from a self-initiated location update mode to a push-based location update mode depending on the current state of the mobile device. The mobile device can also choose an appropriate positioning system for self-locating based on the information embedded in the location-update-request received through the push notification service. The information embedded in the pushed location-update-request can be a precision requirement or context information that can be used to determine a precision requirement for the location update.
23 Citations
21 Claims
-
1. A computer-implemented method, comprising:
-
receiving a location-information-request from a first client device for location information of a second client device, the first client device and the second device being location-sharing friend devices of each other; responding to the location-information-request by sending a stored location of the second client device to the first client device; determining whether the stored location of the second client device is above a predetermined threshold age; if the stored location is above the predetermined threshold age, sending a location-update-request for a location update to the second client device through a push-notification service; receiving the location update from the second client device; updating the stored location of the second client device according to the received location update; and sending the updated stored location to the first client device through a push notification service without waiting for a second location-information-request from the first client device for the location information of the second client device. - View Dependent Claims (2, 3)
-
-
4. A computer-implemented method for submitting location update by a location-aware mobile device, comprising:
-
entering a sleep mode; while in the sleep mode, receiving a location-update-request for a location update from a location information server through a push notification service, wherein the location-update-request was sent in response to a location-information-request for location information made by a friend device of the location-aware mobile device, the location-update-request includes context information related to the location-information-request, and the one or more predetermined criteria specify a location precision preference for the positioning system to be selected based on the context information; upon receiving the location-update-request, activating a positioning system to self-locate; sending a location update to the location information server, the location update comprising a current location determined by the positioning system; and
returning to the sleep mode after sending the location update. - View Dependent Claims (5, 6)
-
-
7. A computer-implemented method for submitting location updates by a location-aware mobile device, comprising:
-
entering a first state; submitting location information to a location information server periodically while the device is in the first state; entering a second state; ceasing to submit location information to the location-information server when the device enters the second state; while in the second state, receiving a location-update-request for a location update from the location-information server through a push notification service, wherein the location-update-request was sent in response to a location-information-request for location information made by a friend device of the location-aware mobile device, the location-update-request includes context information related to the location-information-request, and the one or more predetermined criteria specify a location precision preference for the positioning system to be selected based on the context information; in response to the location-update-request, activating a positioning system to self-locate; submitting a location update to the location information server, the location update comprising a current location determined by the positioning system; and returning to the second state after the location update is sent.
-
-
8. A non-transitory computer-readable medium having instructions stored thereon, which, when executed by one or more processors, cause the one or more processors to perform operations comprising:
-
receiving a location-information-request from a first client device for location information of a second client device, the first client device and the second device being location-sharing friend devices of each other; responding to the location-information-request by sending a stored location of the second client device to the first client device; determining whether the stored location of the second client device is above a predetermined threshold age; if the stored location is above the predetermined threshold age, sending a location-update-request for a location update to the second client device through a push-notification service; receiving the location update from the second client device; updating the stored location of the second client device according to the received location update; and sending the updated stored location to the first client device through a push notification service without waiting for a second location-information-request from the first client device for the location information of the second client device. - View Dependent Claims (14, 15)
-
-
9. A system comprising:
-
one or more processors; memory coupled to the one or more processors and operable for storing instructions, which, when executed by the one or more processors, cause the one or more processors to perform operations, comprising; receiving a location-information-request from a first client device for location information of a second client device, the first client device and the second device being location-sharing friend devices of each other; responding to the location-information-request by sending a stored location of the second client device to the first client device; determining whether the stored location of the second client device is above a predetermined threshold age; if the stored location is above the predetermined threshold age, sending a location-update-request for a location update to the second client device through a push-notification service; receiving the location update from the second client device; updating the stored location of the second client device according to the received location update; and sending the updated stored location to the first client device through a push notification service without waiting for a second location-information-request from the first client device for the location information of the second client device. - View Dependent Claims (16, 17)
-
-
10. A non-transitory computer-readable medium having instructions stored thereon, which, when executed by one or more processors, cause the one or more processors to perform operations comprising:
-
entering a sleep mode; while in the sleep mode, receiving a location-update-request for a location update from a location information server through a push notification service, wherein the location-update-request was sent in response to a location-information-request for location information made by a friend device of the location-aware mobile device, the location-update-request includes context information related to the location-information-request, and the one or more predetermined criteria specify a location precision preference for the positioning system to be selected based on the context information; upon receiving the location-update-request, activating a positioning system to self-locate; sending a location update to the location information server, the location update comprising a current location determined by the positioning system; and returning to the sleep mode after sending the location update. - View Dependent Claims (18, 19)
-
-
11. A system comprising:
-
one or more processors; memory coupled to the one or more processors and operable for storing instructions, which, when executed by the one or more processors, cause the one or more processors to perform operations, comprising; entering a sleep mode; while in the sleep mode, receiving a location-update-request for a location update from a location information server through a push notification service, wherein the location-update-request was sent in response to a location-information-request for location information made by a friend device of the location-aware mobile device, the location-update-request includes context information related to the location-information-request, and the one or more predetermined criteria specify a location precision preference for the positioning system to be selected based on the context information; upon receiving the location-update-request, activating a positioning system to self-locate; sending a location update to the location information server, the location update comprising a current location determined by the positioning system; and returning to the sleep mode after sending the location update. - View Dependent Claims (20, 21)
-
-
12. A non-transitory computer-readable medium having instructions stored thereon, which, when executed by one or more processors, cause the one or more processors to perform operations comprising:
-
entering a first state; submitting location information to a location information server periodically while the device is in the first state; entering a second state; ceasing to submit location information to the location-information server when the device enters the second state; while in the second state, receiving a location-update-request for a location update from the location-information server through a push notification service, wherein the location-update-request was sent in response to a location-information-request for location information made by a friend device of the location-aware mobile device, the location-update-request includes context information related to the location-information-request, and the one or more predetermined criteria specify a location precision preference for the positioning system to be selected based on the context information; in response to the location-update-request, activating a positioning system to self-locate; submitting a location update to the location information server, the location update comprising a current location determined by the positioning system; and returning to the second state after the location update is sent.
-
-
13. A system comprising:
-
one or more processors; memory coupled to the one or more processors and operable for storing instructions, which, when executed by the one or more processors, cause the one or more processors to perform operations, comprising; entering a first state; submitting location information to a location information server periodically while the device is in the first state; entering a second state; ceasing to submit location information to the location-information server when the device enters the second state; while in the second state, receiving a location-update-request for a location update from the location-information server through a push notification service, wherein the location-update-request was sent in response to a location-information-request for location information made by a friend device of the location-aware mobile device, the location-update-request includes context information related to the location-information-request, and the one or more predetermined criteria specify a location precision preference for the positioning system to be selected based on the context information; in response to the location-update-request, activating a positioning system to self-locate; submitting a location update to the location information server, the location update comprising a current location determined by the positioning system; and returning to the second state after the location update is sent.
-
Specification