Abstract:
Computer-implemented methods, computer-readable media, and computer systems for managing power consumption in mobile devices are described. A mobile computer system executes a first computer application configured to receive data from a server system over a network, and a second computer application configured to periodically search for a connection to the network at a first time interval. In response to executing the second computer application, the mobile computer system determines that a strength of the connection is below a threshold strength. In response to determining that the strength of the connection is below the threshold strength, the computer system executes the first computer application to delay requesting data from the server system until the connection to the network is detected.
Abstract:
Methods, apparatuses and computer readable media are described that adjust radio resource control connection states between a mobile wireless device and a wireless network following determination that a set of inactivity trigger conditions is met. Time periods between successive data messages and/or signaling messages transmitted to and/or received from a wireless access network are measured. When a prolonged period of data inactivity and/or signaling activity is determined, the mobile wireless device re-establishes an existing radio resource control connection to the wireless access network or releases the radio resource control connection to the wireless access network and transitions to an idle state.
Abstract:
Systems and methods are described for communicating between VoIP applications installed on a mobile computing device and their corresponding servers using a cloud-based notification infrastructure. In one aspect, a method is performed by a notification handler executing on a mobile computing device and includes the actions of maintaining a persistent network connection between the notification handler and a notification server associated with the notification handler; receiving, over the persistent network connection, an incoming call notification for a VoIP application installed on the mobile computing device, the received incoming call notification being relayed by the notification server from a VoIP server to which the VoIP application is associated; determining, in response to the receiving of the incoming call notification, that the VoIP application is in an inactive state; and activating the VoIP application on the mobile computing device to provide information relating to the received incoming call notification.
Abstract:
Systems and methods are described for communicating between VoIP applications installed on a mobile computing device and their corresponding servers using a cloud-based notification infrastructure. In one aspect, a method is performed by a notification handler executing on a mobile computing device and includes the actions of maintaining a persistent network connection between the notification handler and a notification server associated with the notification handler; receiving, over the persistent network connection, an incoming call notification for a VoIP application installed on the mobile computing device, the received incoming call notification being relayed by the notification server from a VoIP server to which the VoIP application is associated; determining, in response to the receiving of the incoming call notification, that the VoIP application is in an inactive state; and activating the VoIP application on the mobile computing device to provide information relating to the received incoming call notification.
Abstract:
In order to facilitate reduced power consumption of an electronic device (such as a smartphone) when communicating with another electronic device (such as an access point) in a wireless network, the electronic device may change a wake policy based on the applications executing on the electronic device. In particular, the electronic device may monitor a subset of the applications currently executed by a processor in the electronic device, where the subset can include zero or more of the applications. Based on the subset, the wake policy of an interface circuit in the electronic device may be changed. This wake policy may specify a frequency of wake ups to receive information from the other electronic device and/or monitoring of unicast or multicast bits in a Traffic Indication Map element. In this way, the time that the electronic device is in the active mode can be reduced, thereby reducing power consumption.
Abstract:
In some implementations, a network daemon can manage access to a mobile device's network interface. The network daemon (e.g., network connection managing process) can monitor the condition of the mobile device's network connection on one or more interfaces. The network daemon can monitor many conditions on the mobile device. The network daemon can receive background networking requests from network clients (e.g., processes, applications) that specify criteria for initiating a network connection. The network daemon can then smartly manage network connections taking into account network conditions, mobile device conditions and/or client criteria received in the client request. This can help reduce battery life impact, memory usage, likelihood of call drops, data usage cost, and load on network operators.
Abstract:
In some embodiments, an electronic device displays one or more representations of power usage of the electronic device, including across various periods of time and subperiods of time within those periods. In some embodiments, the displayed information reflects power usage both for periods of the display being on and periods of the display being off. In some embodiments, the displayed information includes power usage attributed to various mobile applications running on the electronic device. In some embodiments, the electronic device displays recommendations to reduce the usage of power by the electronic device, which a user has the option of applying. In some embodiments, the electronic device displays prose insight into power usage, indicating causes of the power usage.
Abstract:
Embodiments of the present disclosure present devices, methods, and computer readable medium for techniques for measuring operational performance metrics, and presenting these metrics through an application programming interface (API) for developers to access for optimizing their applications. Exemplary metrics can include central processing unit or graphics processing unit time, foreground/background time, networking bytes (per application), location activity, display average picture luminance, cellular networking condition, peak memory, number of logical writes, launch and resume time, frame rates, and hang time. Regional markers can also be used to measure specific metrics for in application tasks. The techniques provide multiple user interfaces to help developers recognize the important metrics to optimize the performance of their applications. The data can be normalized over various different devices having different battery size, screen size, and processing requirements. The user interfaces can provide an intelligent method for visualizing performance changes for significant changes in application versions.
Abstract:
Circuits, methods, and apparatus that may estimate the power being consumed by an OLED display screen of an electronic device, may provide further information about that power usage, may modify or change functions performed by the electronic device based on that power usage, and may inform an application's developer about the amount of power being used by the electronic device while the electronic device is running the application. One example may estimate the power being used by an OLED display screen of an electronic device by determining the content of images being displayed during a duration. The estimated power may then be presented to a user. The estimated power may be used in decisions to modify or change parameters of the screen or other device components.
Abstract:
Embodiments of the present disclosure include methods and systems for generating and processing energy consumption reports received from a plurality of devices. The reports may include a plurality of call stacks captured and stored by remote device as a result of an energy consumption of the corresponding device. For each energy consumption report, the plurality of call stacks may be analyzed to determine a representative call stack of the energy consumption report. The energy consumption reports may be assigned to one or more of a plurality of energy consumption categories based on distances between the representative call stacks of the energy consumption reports and corresponding representative call stacks of the energy consumption categories. A request may be received for energy consumption reports for a particular energy consumption category. Upon receiving the request, providing a representative set of energy consumption reports assigned to the particular energy consumption category.