IP Library Granted Patent US 9,392,393
Granted Patent B2
US 9,392,393 · App. 14/268,885 · Granted Jul 12, 2016

Push notification initiated background updates

Inventors: Justin Wood (Sunnyvale, CA); Amit K. Vyas (San Jose, CA); Andrew H. Vyrros (San Francisco, CA); Gaurav Kapoor (Santa Clara, CA); Phillip Stanley-Marbell (San Francisco, CA); Kit-man Wan (Cupertino, CA); Jonathan J. Andrews (San Jose, CA); Naveen Nalam (San Carlos, CA); Daniel B. Pollack (San Francisco, CA); Matthew E. Shepherd (Mountain View, CA); Brittany D. Hughes (San Jose, CA); David B. Myszewski (San Jose, CA); Lee Russell (Sunnyvale, CA); Anand Ramadurai (Los Gatos, CA); David Michael Chan (Palo Alto, CA)
Assignee: Apple Inc.
H04W4/001
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,392,393
App. No.
14/268,885
Granted
Jul 12, 2016
Kind
B2
Abstract

In some implementations, a mobile device can be configured to monitor environmental, system and user events. The occurrence of one or more events can trigger adjustments to system settings. In some implementations, the mobile device can be configured to keep frequently invoked applications up to date based on a forecast of predicted invocations by the user. In some implementations, the mobile device can receive push notifications associated with applications that indicate that new content is available for the applications to download. The mobile device can launch the applications associated with the push notifications in the background and download the new content. In some implementations, before running an application or accessing a network interface, the mobile device can be configured to check energy and data budgets and environmental conditions of the mobile device to preserve a high quality user experience.

Claims (54)

1. A method comprising:

receiving a push notification at a first process on a mobile device;

sending, from the first process, a request to a second process on the mobile device to determine whether it is ok to launch an application installed on the mobile device, the application associated with the push notification;

determining, by the second process, a resource budget for the mobile device based on historical mobile device resource usage data;

in response to receiving the request at the second process, automatically determining by the second process that it is not ok to launch the application based on the resource budget;

sending, from the second process to the first process, a response indicating that it is not ok to launch the application;

receiving, by the first process, a response from the second process indicating that it is not ok to launch the application; and

storing the push notification on the mobile device when it is not ok to launch the application.

2. The method of claim 1 , wherein the resource budget is a data budget, or an energy budget.

3. The method of claim 1 , further comprising:

receiving a retry signal from the second process; and

sending a second request to the second process to determine whether it is ok to launch an application associated with the stored push notification;

receiving a second response from the second process indicating that it is ok to launch the application; and

launching the application associated with the push notification when it is ok to launch the application.

4. The method of claim 3 , wherein the application is launched as a background process on the mobile device.

5. The method of claim 1 , further comprising displaying a graphical object associated with the push notification on a display of the mobile device.

6. The method of claim 1 , wherein determining whether to launch the application is based on an application launch rate limit.

7. A non-transitory computer-readable medium including one or more sequences of instructions which, when executed by one or more processors, causes:

receiving, from a push notification server device, a push notification at a first process on a mobile device;

sending, from the first process, a request to a second process on the mobile device to determine whether it is ok to launch an application installed on the mobile device, the application associated with the push notification;

determining, by the second process, a resource budget for the mobile device based on historical mobile device resource usage data;

in response to receiving the request at the second process, automatically determining by the second process that it is not ok to launch the application based on the resource budget;

sending, from the second process to the first process, a response indicating that it is not ok to launch the application;

receiving, by the first process, a response from the second process indicating that it is not ok to launch the application; and

storing the push notification on the mobile device when it is not ok to launch the application.

8. The non-transitory computer-readable medium of claim 7 , wherein the resource budget is a data budget, or an energy budget.

9. The non-transitory computer-readable medium of claim 7 , wherein the instructions cause:

receiving a retry signal from the second process; and

sending a second request to the second process to determine whether it is ok to launch an application associated with the stored push notification;

receiving a second response from the second process indicating that it is ok to launch the application; and

launching the application associated with the push notification when it is ok to launch the application.

10. The non-transitory computer-readable medium of claim 9 , wherein the application is launched as a background process on the mobile device.

11. The non-transitory computer-readable medium of claim 7 , wherein the instructions cause displaying a graphical object associated with the push notification on a display of the mobile device.

12. The non-transitory computer-readable medium of claim 7 , wherein determining whether to launch the application is based on an application launch rate limit.

13. A system comprising:

one or more processors; and

a non-transitory computer-readable medium including one or more sequences of instructions

which, when executed by the one or more processors, causes:

receiving, from a push notification server device, a push notification at a first process on the system, the push notification indicating a data update for an application on the system;

sending, from the first process, a request to a second process to determine whether it is ok to launch the application;

determining, by the second process, a resource budget for the mobile device based on historical mobile device resource usage data;

in response to receiving the request at the second process, automatically determining by the second process that it is not ok to launch the application based on the resource budget;

sending, from the second process to the first process, a response indicating that it is not ok to launch the application;

receiving, by the first process, a response from the second process indicating that it is not ok to launch the application; and

storing the push notification on the mobile device when it is not ok to launch the application.

14. The system of claim 13 , wherein the resource budget is a data budget, or an energy budget.

15. The system of claim 13 , wherein the instructions cause:

receiving a retry signal from the second process; and

sending a second request to the second process to determine whether it is ok to launch an application associated with the stored push notification;

receiving a second response from the second process indicating that it is ok to launch the application; and

launching the application associated with the push notification when it is ok to launch the application.

16. The system of claim 15 , wherein the application is launched as a background process on the mobile device.

17. The system of claim 13 , wherein the instructions cause displaying a graphical object associated with the push notification on a display of the mobile device.

18. The system of claim 13 , wherein determining whether to launch the application is based on an application launch rate limit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2014
From: WOOD, JUSTIN; VYAS, AMIT K.; VYRROS, ANDREW H.; KAPOOR, GAURAV; STANLEY-MARBELL, PHILLIP; WAN, KIT-MAN; ANDREWS, JONATHAN J.; NALAM, NAVEEN; POLLACK, DANIEL B.; SHEPHERD, MATTHEW E.; HUGHES, BRITTANY D.; MYSZEWSKI, DAVID B.; RUSSELL, LEE; RAMADURAI, ANAND; CHAN, DAVID MICHAEL
To: APPLE INC.
Reel/Frame 032823/0869 →
Continuity (2)
Provisional Application 61832938 · Jun 9, 2013
Related Publication 20140364104A1 · Dec 11, 2014