throbber
(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2012/0272230 A1
`LEE
`(43) Pub. Date:
`Oct. 25, 2012
`
`US 2012027223 OA1
`
`(54) POWER SAVINGAPPLICATION UPDATE INA
`PORTABLE ELECTRONIC DEVICE
`
`(52) U.S. Cl. ......................................... 717/173; 717/171
`
`(75) Inventor:
`
`t HAN LEE, SAN JOSE, CA
`
`(73) Assignee:
`
`(21) Appl. No.:
`(22) Filed:
`
`APPLE INC., CUPERTINO, CA
`(US)
`13/090,007
`Apr. 19, 2011
`
`Publication Classification
`
`(51) Int. Cl.
`G06F 9/44
`
`(2006.01)
`
`ABSTRACT
`(57)
`A power savings mode for data updates is provided. The
`power savings mode prevents data updates to occur while a
`screen of a portable electronic device is turned off and the
`device is in a sleep state. The power savings mode waits until
`the screen is turned on and the portable electronic device is in
`a wake state before allowing applications and widgets to
`update data from network repositories. By preventing appli
`cations and widgets from updating data while the portable
`electronic device is in a sleep state, the power savings mode
`conserves battery life and network bandwidth by limiting
`possibly unnecessary data transmissions.
`
`21 N
`
`
`
`DATABASE
`UPDATE MODULE
`22
`
`DATA UPDATE
`DETERMINATION
`MODULE
`25
`
`SLEEP
`DETERMINATION
`MODULE
`26
`
`DATA UPDATE
`TRIGGER MODULE
`27
`
`ACTIVE
`APPLICATIONS
`AND
`WIDGETS
`24
`
`DATA UPDATE
`DATABASE
`23
`
`Page 1 of 18
`
`GOOGLE EXHIBIT 1009
`
`

`

`Patent Application Publication
`
`Oct. 25, 2012 Sheet 1 of 11
`
`US 2012/0272230 A1
`
`
`
`SSA (3)
`
`N
`
`O
`
`FIG. 1A
`
`Page 2 of 18
`
`

`

`Patent Application Publication
`
`Oct. 25, 2012 Sheet 2 of 11
`
`US 2012/0272230 A1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 3 of 18
`
`

`

`Patent Application Publication
`
`Oct. 25, 2012 Sheet 3 of 11
`
`US 2012/0272230 A1
`
`
`
`FIG. 2
`
`Page 4 of 18
`
`

`

`Patent Application Publication
`
`Oct. 25, 2012 Sheet 4 of 11
`
`US 2012/0272230 A1
`
`
`
`c:35, Breezy Thunderstorms Likely Rain
`Wind
`9mph
`Humidity
`84%
`Direction:
`NNE
`Precipitation: 0.24
`DeW Point 68
`Chance:
`99%
`
`FIG. 3A
`
`Page 5 of 18
`
`

`

`Patent Application Publication
`
`Oct. 25, 2012 Sheet 5 of 11
`
`US 2012/0272230 A1
`
`
`
`\
`N
`
`12
`
`SETTINGS
`DAYS HOURS MIN.
`
`Time Period Betw
`
`o
`ICE een
`Enable Power Saving Mode
`
`LOCation
`
`Cupertino, California
`
`Units
`
`Fahrenheit
`
`FIG. 3B
`
`Page 6 of 18
`
`

`

`Patent Application Publication
`
`Oct. 25, 2012 Sheet 6 of 11
`
`US 2012/0272230 A1
`
`
`
`A PORTABLE ELECTRONIC DEVICE IS RUNNING
`AN APPLICATION/WIDGET INA POWER SAVING
`MODE
`14
`
`IST TIME TO UPDATE
`DATA OF APPLICATIONS/WIDGETS?
`16
`
`IS THE PORTABLE ELECTRONIC
`DEVICE IN A SLEEP MODE
`18
`
`UPDATE APPLICATION/WIDGET DATA
`20
`
`FIG. 4
`
`Page 7 of 18
`
`

`

`Patent Application Publication
`
`Oct. 25, 2012 Sheet 7 of 11
`
`US 2012/0272230 A1
`
`
`
`12:00 PM
`
`Sunday, 22 February
`
`44
`
`26
`c: Breezy Thunderstorms Likely Rain
`Wind
`9 mph
`Humidity
`84%
`Direction:
`NNE
`Precipitation: 0.24
`DeWPoint: 68
`Chance,
`99%
`
`FIG. 5A
`
`Page 8 of 18
`
`

`

`Patent Application Publication
`
`Oct. 25, 2012 Sheet 8 of 11
`
`US 2012/0272230 A1
`
`
`
`FIG. 5B
`
`Page 9 of 18
`
`

`

`Patent Application Publication
`
`Oct. 25, 2012 Sheet 9 of 11
`
`US 2012/0272230 A1
`
`
`
`4.
`
`ck, Breezy Thunderstorms Likely Rain
`Wind
`9mph
`Humidity
`84%
`Direction
`NNE
`Precipitation: 0.24
`DeW Point: 68
`Chance:
`99%
`
`FIG. 5C
`
`Page 10 of 18
`
`

`

`Patent Application Publication
`
`Oct. 25, 2012 Sheet 10 of 11
`
`US 2012/0272230 A1
`
`
`
`4:00 PM
`
`Sunday, 22 February
`
`Y 2.É.
`
`citi, Breezy Thunderstorms Likely Rain
`Wind
`11 mph Humidity
`84%
`Direction:
`NNE
`Precipitation: 0.24
`DeW Point: 68
`Chance.
`99%
`
`FIG. 5D
`
`Page 11 of 18
`
`

`

`Patent Application Publication
`
`Oct. 25, 2012 Sheet 11 of 11
`
`US 2012/0272230 A1
`
`21
`
`
`
`DATABASE
`UPDATE MODULE
`22
`
`DATA UPDATE
`DETERMINATION
`MODULE
`25
`
`SLEEP
`DETERMINATION
`MODULE
`26
`
`DATA UPDATE
`TRIGGER MODULE
`27
`
`ACTIVE
`APPLICATIONS
`AND
`WIDGETS
`24
`
`DATA UPDATE
`DATABASE
`23
`
`FIG. 6
`
`Page 12 of 18
`
`

`

`US 2012/0272230 A1
`
`Oct. 25, 2012
`
`POWER SAVINGAPPLICATION UPDATE INA
`PORTABLE ELECTRONIC DEVICE
`
`BACKGROUND
`0001. An embodiment of the invention generally relates to
`a power saving system and method for updating data in an
`application or widget running on a portable electronic device.
`Other embodiments are also described.
`0002 Portable electronic devices receive and display
`numerous pieces of information to users. The information
`may be received through the Internet or any type of data
`network. Conventionally, users have retrieved and viewed
`information from data networks through websites formatted
`for web browsers. However, websites are often difficult to
`view on Smaller screens typically used on portable electronic
`devices. Accordingly, special purpose applications have been
`developed for portable electronic devices that properly for
`mat information typically viewed on a website for use on a
`portable electronic device's Small screen. In some cases, these
`special purpose applications may fully encompass the view
`ing area of the screen Such that a user can only view the
`contents of one active application. However, in other cases
`special purpose applications may be sized to encompass only
`a small area of a screen Such that multiple applications may be
`viewed simultaneously. These Smaller footprint applications
`are sometimes referred to as “widgets.”
`0003. Whether using a web-browser to view information
`or a special purpose application, these applications receive
`information through a network interface using either a push or
`pull protocol. For example, a portable electronic device with
`Internet connectivity may retrieve weather information for a
`user's hometown from a weather broadcast service. Such as
`The Weather Channel (www.weather.com). The National
`Weather Service (www.weather.gov). AccuWeather (www.
`accuweather.com), or a similar service. Upon receipt, the
`information is shown to a user on a screen of the portable
`electronic device through a visible user interface provided by
`a weather application.
`0004. In many cases, the constant changing of information
`results in the need to periodically update the data that is
`shown by the application. For example, a weather application
`may be configured to automatically retrieve and update its
`displayed data every hour. These updates take place even
`while the screen of the portable electronic device is shut off
`such that the weather application is not viewable to a user. In
`Some instances, data displayed in the application may be
`refreshed several times before the screen of the portable elec
`tronic device is turned on and viewed by a user. Each
`unviewed data update thus consumes battery power and net
`work bandwidth, without providing a benefit to the user since
`the results were never viewed.
`
`SUMMARY
`0005. Many portable electronic devices include various
`applications and widgets that rely on periodically obtaining
`data from remote network repositories. After The updated
`data is typically shown to a user on a screen of the portable
`electronic device only when the screen has been turned on and
`the device has exited a sleep state. There is a need for a power
`saving mode that efficiently controls the update of Such data.
`0006 An embodiment of the invention provides a power
`savings mode for data updates. The power savings mode
`prevents data updates from taking place, while a screen of the
`
`portable electronic device is turned off and the device is in a
`sleep state. In one embodiment, the power savings mode
`waits until the screen is turned on and the portable electronic
`device is in a wake state, before allowing a given application
`orwidget to update data from network repositories. In another
`embodiment, the power savings mode prevents a given appli
`cation or widget from updating its data while the device is in
`its sleep state, until a predetermined user command is
`detected or received, e.g. a physical home button being
`pressed, an audible pattern being recognized (using a micro
`phone), or a movement pattern being recognized (using a
`position, orientation or movement sensor). By preventing the
`application or widget from updating data while the portable
`electronic device is in a sleep state, the power savings mode
`may conserve battery energy and network bandwidth by lim
`iting possibly unnecessary network data transmissions.
`0007. The above summary does not include an exhaustive
`list of all aspects of the present invention. It is contemplated
`that the invention includes all systems and methods that can
`be practiced from all suitable combinations of the various
`aspects Summarized above, as well as those disclosed in the
`Detailed Description below and particularly pointed out in the
`claims filed with the application. Such combinations have
`particular advantages not specifically recited in the above
`Summary.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`0008. The embodiments of the invention are illustrated by
`way of example and not by way of limitation in the figures of
`the accompanying drawings in which like references indicate
`similar elements. It should be noted that references to “an or
`“one' embodiment of the invention in this disclosure are not
`necessarily to the same embodiment, and they mean at least
`OC.
`0009 FIG. 1a shows a portable electronic device running
`an operating system and one or more applications or widgets,
`in accordance with an embodiment of the invention.
`0010 FIG. 1b shows a portable electronic device con
`nected to a wireless data network and a wireless telephone
`network, in accordance with an embodiment of the invention.
`0011
`FIG. 2 shows a lock screen application running on
`the portable electronic device while the portable electronic
`device 1 is in a wake state.
`0012 FIG. 3a shows the portable electronic device run
`ning a lock screen application and a weather widget in a wake
`State.
`0013 FIG. 3b shows a configuration panel for a weather
`widget, in accordance with an embodiment of the invention.
`0014 FIG. 4 shows a method for updating data on the
`portable electronic device using a power saving mode, in
`accordance with an embodiment of the invention.
`(0015 FIGS. 5a-5d show screen displays of the portable
`electronic device while the method of FIG. 4 is being per
`formed.
`0016 FIG. 6 shows a power saving data update system, in
`accordance with an embodiment of the invention.
`
`DETAILED DESCRIPTION
`0017 Several embodiments of the invention with refer
`ence to the appended drawings are now explained. While
`numerous details are set forth, it is understood that some
`embodiments of the invention may be practiced without these
`details. In other instances, well-known circuits, structures,
`
`Page 13 of 18
`
`

`

`US 2012/0272230 A1
`
`Oct. 25, 2012
`
`and techniques have not been shown in detail so as not to
`obscure the understanding of this description.
`0018 FIG. 1a shows a portable electronic device 1 that is
`running an operating system and one or more applications or
`widgets. The portable electronic device 1 may be a personal
`digital assistant, a Smartphone, a portable audio device, or
`any similar apparatus. For example, the portable electronic
`device 1 may be an iPhoneTM device, an iPadTM device oran
`iPodTM device by Apple Inc. of Cupertino, Calif. The portable
`electronic device 1 includes a display screen 2, a home menu
`button 4, and a power on/off button 6. In one embodiment, the
`display Screen 2 may be a touch screen, which can detect the
`presence and location of a touch within the display Screen 2,
`which may be used for essentially all user input. In other
`embodiments, a physical QWERTY keypad is provided for
`the user input. The device 1 may also include audio volume
`buttons and a call ringer on/off button. An example home
`menu of a graphical user interface is shown in FIG. 1, with
`graphic icons representing various applications stored in the
`device 1 and that can be executed therein.
`0019. The display screen 2 displays graphics and text out
`put by applications, widgets, and the operating system run
`ning on the portable electronic device 1. The term “applica
`tion' is used generically here to encompass both full-featured
`applications and apps, which typically take up the entire
`display Screen of a Smart phone device when opened, and
`widgets which are miniature programs that have much more
`limited functionality and can “reside a lock screen of the
`device while displaying data that is being periodically
`updated. A widget can also be an interactive portal to its
`parent app. Examples include a clock widget, a calendar
`widget, a stock ticker widget, and a weather widget. Multiple
`applications may be viewable on the display screen 2 at a
`single time, or a single application may be expanded to the
`entire viewing area of the display screen 2.
`0020. The device 1 includes the necessary hardware and
`Software to manage turning on and off the display Screen 2
`and the sleep and wake modes of the device, to enable effi
`cient use of the device's battery (not shown). The display
`screen 2 is turned off when the portable electronic device 1
`enters the sleep state while the display screen 2 is turned on
`when the portable electronic device 1 exits the sleep state and
`enters awake state. The home button 4 may be used to turn the
`display screen 2 on (i.e. transition the device 1 from a sleep
`state to a wake state). The power button 6 may be used to
`toggle the display Screen 2 on and off (i.e. transition the
`device 1 between wake and sleep states) and to toggle the
`entire device 1 on and off (i.e. force a power on reset and
`completely power down the device 1). For example, when the
`display screen2 is on (e.g. lit and in awake state), pressing the
`power button 6 for a short duration (e.g. holding it for no more
`than 1 Second) may toggle the display Screen 2 off (e.g. unlit
`and in a sleep state) but not completely power down the device
`1. In one embodiment, when the display screen 2 is off, all
`touch sensitive controls on the display Screen 2 are disabled.
`While the portable electronic device 1 can still receive data,
`phone calls and play music/audio when the display screen 2 is
`off and the device 1 is in a sleep state, user input via the
`display Screen 2 is disabled. Additionally, pressing the power
`button 6 for a short duration while the display screen 2 is
`turned off turns the display Screen 2 on and the touch sensi
`tivity of the display screen 2 is reactivated.
`0021. As noted above, the powerbutton 6 may also be used
`to toggle power to the entire device 1. For example, when
`
`powered on in either a sleep or wake state, holding the power
`button 6 down for a relatively long duration, e.g. more than 1
`second, powers down the device 1 completely. When powered
`down, the device 1 cannot transmit or receive data, initiate or
`answer phone calls, process any data, etc. When the device 1
`is powered off, holding the power button 6 down for a rela
`tively long duration causes a power-on-reset for the entire
`device 1.
`0022. Similar to the power button 6, the home button 4
`may be configured to toggle the device 1 from sleep state to
`wake State, when pressed for essentially any duration.
`0023 The portable electronic device 1 includes an oper
`ating system that manages hardware resources and provides
`common services to various applications running on the oper
`ating system. For example, the operating system installed on
`the portable electronic device 1 may manage memory alloca
`tion, network interfaces, audio circuitry, and external inter
`faces. Example operating systems include iOS by Apple Inc.
`and Symbian by Nokia.
`0024. With the assistance of the installed operating sys
`tem, the device 1 Supports a variety of applications, such as a
`telephone application for receiving/placing phone calls, a
`lock screen application, a weather widget, a stock quote wid
`get, a blogging widget, a web browser application, etc. An
`application running on the portable electronic device 1 may
`access a network interface through a system call to the
`installed operating system. The network interface provides
`the applications with access to networks and external sources
`of data using a variety of communications standards, proto
`cols, and technologies as introduced above. For example, as
`shown in FIG. 1b, the portable electronic device 1 may
`include network interfaces that allow the device 1 to connect
`to both wireless data networks and wireless telephone net
`works to access weather report and stock quote services.
`0025 FIG. 2 shows an “unlock screen” of a lock screen
`application running on the portable electronic device 1 in a
`wake State. The display Screen 2 is turned on, and the user is
`being prompted to unlock or enable the user interface of the
`device 1. The lock screen application may be a standalone
`application that runs on top of the operating system, or the
`lock screen application may be a service that is integrated as
`part of the operating system.
`0026. The lock screen application prevents unauthorized
`access or inadvertent use of the portable electronic device 1.
`As shown in FIG. 2, with the assistance of the lock screen
`application, the user interface of the portable electronic
`device 1 is maintained in a locked State until the user “manu
`ally” commands the application to unlock the device 1. In the
`locked State, the unlock screen contains a graphic that
`prompts the user to slidea finger over a predetermined path on
`the display screen 2 to unlock the device 1. In other embodi
`ments, the user may be directed to enteran alphanumeric code
`or other pattern (e.g. a movement pattern) to unlock the device
`1. Note that there may be a password prompt after a physical
`button has been pressed but before the device 1 is “unlocked’,
`requiring the user to enter a secret password before the user
`interface of the device 1 can be normally used in its wake
`State.
`0027. In the locked state, the lock screen may display
`various pieces of data to the user. For instance, in FIG. 2, time
`of day, date, data rate, and battery status are shown. The
`information may instead or in addition include the number of
`missed calls, the number of unread SMS and/or MMS mes
`sages, the number of unheard Voicemail messages, etc. In one
`
`Page 14 of 18
`
`

`

`US 2012/0272230 A1
`
`Oct. 25, 2012
`
`embodiment, one or more widgets may be “placed on the lock
`screen’. Such as a weather widget or a stock ticker widget.
`These may display data that is periodically updated (also
`referred to as dynamic content) from external sources. In one
`embodiment, these external sources are accessed through a
`network interface of the portable electronic device.
`0028 FIG.3a shows the portable electronic device 1 run
`ning a lock screen application in a wake state. The lock or
`unlock screen being displayed in this example includes a
`weather widget 10 that is positioned at a center portion of the
`lock screen. Although a weather widget 10 is shown and
`described, any other similar type of widget (e.g. a stock wid
`get that displays up to date stock price data or news relating to
`a particular stock, a sports widget that displays up to date
`score data or professional sports news, a blog widget that
`displays the latest posts made to aparticular blog, etc.) may be
`used. The use of the weather widget 10 is merely for purposes
`of explanation.
`0029. The weather widget 10 shows the current weather
`for a location designated by the user. For example, the
`weather widget 10 may show the current temperature, wind
`direction, wind speed, barometric pressure, humidity, and
`other similar pieces of data for a designated city or location.
`The weather widget 10 may retrieve this weather data from an
`external data source through a network interface using either
`a push or pull protocol. For example, the external source may
`be a weather broadcast service or server that is accessible over
`the Internet, such as The Weather Channel (www.weather.
`com). The National Weather Service (www.weather.gov),
`AccuWeather (www.accuweather.com), or a similar service.
`To access such a server over the Internet, the weather widget
`10 utilizes an appropriate network interface of the portable
`electronic device such as a WiFi wireless local area network
`interface, and various cellular network interfaces such as a
`GSM network interface, an EDGE network interface, a
`HSDPA network interface, a W-CDMA network interface, a
`CDMA network interface, or a TDMA network interface.
`0030 FIG. 3b shows a configuration panel 12 that is being
`displayed once the user interface of the device 1 has been
`unlocked for the weather widget 10. The configuration panel
`12 allows the user to select various settings for the weather
`widget 10. In one of the settings, the user may select a time
`period between periodic updates of weather data. A time
`period between periodic updates may be set to a desired
`number of minutes, hours, or days. Since, weather conditions
`are not rapidly changing, this level of granularity is Sufficient.
`However, other widgets may require a greater frequency of
`updates. For example, for a stock quotes widget it may be
`necessary to adjust periodic updates in terms of seconds,
`because Stock quotes/prices change extremely rapidly.
`0031
`FIG. 3b also shows a configuration setting for acti
`Vating/deactivating of a power saving mode. The power Sav
`ing mode regulates when the weather widget 10 updates data.
`In one embodiment, when activated, the power saving mode
`restricts the weather widget 10 from downloading data while
`the portable electronic device is in a sleep state (e.g. the
`display screen is off). Accordingly, any periodic updates that
`are scheduled to occur while the portable electronic device 1
`is in the sleep state are not performed until the portable
`electronic device 1 transitions from the sleep state to a wake
`State.
`0032. Although the above description refers to a widget
`appearing on a lock screen of the portable electronic device 1,
`a stand-alone full-featured application running on the por
`
`table electronic device 1, but that does not have a correspond
`ing widget appearing in the lock screen, may also be config
`ured with the power saving mode as described herein. For
`example, a stand-alone stock application may be running on
`the portable electronic device 1 in a power saving mode.
`While the portable electronic device 1 is in a sleep state, the
`stand-alone stock application is not allowed to update data
`from an external data source using the network interface. All
`such scheduled data updates wait for the portable electronic
`device 1 to enter a wake state before being performed.
`0033 FIG. 4 shows a method for updating application data
`on the portable electronic device 1 while operating in a power
`saving mode, according to one embodiment of the invention.
`An application may store the time of its next scheduled data
`update. At operation 14, the process begins when a power
`saving mode for the application has been selected. Selection
`of the power saving mode may be universal, that is for all
`applications running on the portable electronic device 1,
`using a user configurable setting provided by the operating
`system. In this embodiment, upon selection of the power
`saving mode, the operating system may create and update a
`database with the next scheduled data update of each active
`application. Alternatively, an application may be individually
`set to operate in the power saving mode, using a configurable
`setting provided by the application.
`0034. After selecting a power saving mode, the method of
`FIG. 4 determines if it is time to perform a data update at
`operation 16. In embodiments in which each individual appli
`cation controls their own power saving mode, operation 16
`may be performed asynchronously by each application. An
`application may determine if it is time to perform a data
`update by comparing the current time (maintained by the
`operating system) with its next scheduled data update time,
`which was stored earlier at operation 14.
`0035. In embodiments in which the operating system con
`trols updates for each application that is in a power saving
`mode, operation 16 is performed synchronously by the oper
`ating system for each active application. The operating sys
`tem may determine if it is time to perform a data update for a
`given active application by querying a database for Scheduled
`data updates (see operation 14) that occur at or before the
`current time. Based on this comparison, the operating system
`may create a list of applications that are scheduled to update
`data. Operation 16 repeats until at least one application or
`widget is to update its data. In one embodiment, operation 16
`repeats at a set interval (e.g. every 5 seconds).
`0036 Upon the determination that an application or wid
`get is to update its data now, operation 18 determines if the
`portable electronic device 1 is in a sleep state. As described
`above, the portable electronic device 1 is in a sleep state when
`the display screen is turned off. Conversely, when the display
`screen is turned on, the portable electronic device 1 is in a
`wake state. Operation 18 continues to operate until the por
`table electronic device 1 is determined to not be in a sleep
`state. In embodiments in which the operating system controls
`data updates for each application that is in a power saving
`mode, the method may return to operation 16 after operation
`18 determines the portable electronic device 1 is in a sleep
`state. Returning to operation 16 allows the method to add
`additional applications to the list of applications that need to
`update their data “now”.
`0037. In one embodiment, the device 1 determines that it is
`no longerina sleep state when the operating system detects or
`receives a user command to exit the sleep state. For instance,
`
`Page 15 of 18
`
`

`

`US 2012/0272230 A1
`
`Oct. 25, 2012
`
`a processor interrupt may be signaled by the home menu
`button being pressed. This would be followed with other
`operations that are more formally within the definition of
`wake state, such as turning on the display Screen and enabling
`user input (e.g. alphanumeric text via a touch screen or via a
`physical keyboard) for unlocking the user interface of the
`device 1.
`0038. After determining that the portable electronic
`device 1 is not in a sleep state, operation 20 triggers the "now
`due applications in its list to update their data. In embodi
`ments in which the operating system controls data updates for
`each application that is in a power saving mode, the operating
`system sends an update message to the application to update
`its data. In response to the update message, the applications
`establish a connection with an external data source and then
`download its latest data. After updates have been completed at
`operation 20, the method may clear the list of applications
`that need to update their data now and returns to operation 16.
`The method continues to operate as long as a running appli
`cation is in a power saving mode.
`0039. An example operation of the method of FIG. 4 will
`be described, while referring to various embodiments. FIGS.
`5a-5d show a portable electronic device 1 performing the
`method of FIG. 4.
`0040 FIG. 5a shows a lock screen of the portable elec
`tronic device 1 that is in a wake state at 12:00 PM. The lock
`screen includes a weather widget with a power saving mode
`selected, and a clock widget. The weatherwidget is scheduled
`to update every three hours. In this example, the weather
`widget has just updated and is scheduled to update again at
`3:00 PM.
`004.1 FIG.5b shows the portable electronic device 1 in a
`sleep state at 12:01 PM. The device may enter the sleep state
`by pressing the power button for a short duration as explained
`above. Since the device 1 is in a sleep state, the lock screen
`and associated widget is not viewable on the display Screen 2.
`Further any updates scheduled to take place while the por
`table electronic device 1 is in a sleep state, will not take place
`until the device 1 enters a wake state.
`0042 FIG. 5c shows the portable electronic device 1 at
`4:00 PM immediately after entering a wake state for the first
`time since 12:00 PM. The portable electronic device 1 may
`enter a wake state by a user pressing either the power button
`6 or home button 4, in response to which the display screen 2
`is turned on. As seen in FIG.5c, the weather data shown in the
`weather widget is identical to the weather data from FIG.5a.
`The data is identical because as explained above no data
`updates were performed while the portable electronic device
`1 was in a sleep state. Even though an update was scheduled
`for 3:00 PM, this update was rescheduled/delayed until after
`the portable electronic device 1 entered awake state. Thus, in
`this embodiment, the display screen 2 is turned on without
`first updating any widgets that are visible in it, showing the
`original state of the widget from its previous update.
`0043. In one embodiment, the device 1 determines if the
`device is in a sleep state by accessing an application program
`ming interface (API) provided by the operating system of the
`device. The sleep and wake states of the device 1 may be
`defined using a power management array. The first element in
`the array contains the structure that describes the sleep state
`and the second element of the array contains the structure that
`describes the wake state of the device 1. For example, the
`array and the corresponding structures may be defined in
`objective C as follows:
`
`// Declare an array of two IOPMPowerState structures
`(kMyNumberOfStates = 2).
`static IOPMPowerState myPowerStateskMyNumberOfStates):
`if Zero-fill the structures.
`bzero (myPowerStates, sizeof myPowerStates));
`fi Fill in the information about the device's 1 sleep state:
`myPowerStates.Oversion = 1;
`myPowerStates.O.capabilityFlags = kIOPMPowerOff:
`myPowerStates(O).outputPowerCharacter = kIOPMPowerOff:
`myPowerStates.O.inputPowerRequirement = kIOPMPowerOff;
`myPowerStates.O.screenPower = kIOPMPowerOff:
`if Fill in the information about the device's 1 wake state:
`myPowerStates1.version = 1;
`myPowerStates1.capabilityFlags = kIOPMPowerOn;
`myPowerStates1.outputPowerCharacter = kIOPMPowerOn;
`myPowerStates1.inputPowerRequirement = kIOPMPowerOn;
`myPowerStates1.screenPower = kIOPMPowerOn;
`
`0044) The state of the device 1 may thereafter be deter
`mined by comparing the value in the power management
`array against the device's 1 current state. If the device 1 is
`determined to be in a wake mode, a data update is performed.
`An example function, which may be used by a widget or
`standalone application to update data, is shown below:
`
`void MyIOServiceDriver::powerSavingData Update (IOService *
`whatDevice )
`if (whatDevice-powerState == myPowerStates1.screenPower) {
`i. In wake state.
`performDataUpdate();
`
`// In sleep state.
`return;
`
`FIG. 5d shows the portable electronic device 1 a
`004.5
`short period of time (less than a minute and in general on the
`order of a few seconds) after the display screen 2 was turned
`on (in FIG.5c) wake state. The weather widget has performed
`its data update, which was originally scheduled for 3:00 PM
`and the data being displayed in the weather widget is now
`different from the original data shown in FIG. 5c.
`0046) Note that as an alternative, the display screen 2
`could be turned on (in response to the home menu button 4
`being pressed) but without the original state of the weather
`widget being displayed. In that case, there would be a short
`delay after the screen is turned on, while the weather widget
`updates its data, before its icon showing the updated data
`appears on the display Screen 2.
`0047 Turning now to FIG. 6, a power saving data update
`system 21 will be described. The power saving data update
`system of FIG. 6 is capable of controlling multiple applica
`tions that may be running in a portable electronic device 1. As
`will be further described below, the power saving data update
`system may be used to perform the power saving update
`method of FIG. 4.
`0048. The power saving data update system 21 operates
`when at least one application has been selected to use a power
`saving mode. The applications may individually select to use
`a power saving mode through a user configuration panel
`provided by each application and widget. Alternatively, a
`
`Page 16 of 18
`
`

`

`US 2012/0272230 A1
`
`Oct. 25, 2012
`
`global setting may be provided by the operating system,
`which requires all applications and widgets

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket