Systems and methods for tracking resources used by triggers such as alarms and timers that are used by mobile applications to schedule tasks and intelligently manipulating the timing of the triggers to optimize usage of resources such as, but not limited to: network, battery, CPU and/or memory are disclosed. In one embodiment, an intelligent alarm manipulator and resource tracker tracks triggers from multiple applications on a mobile device and corresponding use of resources resulting from the triggers on a mobile device. The intelligent alarm manipulator and resource tracker further determines correlations between the triggers and the corresponding use of the resources on the mobile device and manipulates, based on the correlations, timing or frequency of some or all of the triggers to optimize the use of the resources on the mobile device.
Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A method for managing resources on a mobile device, comprising: executing alarms set by multiple applications executing on the mobile device; acquiring a context awareness of the mobile device, wherein the context awareness includes user activity detection and a determination of whether the mobile device is charging; altering behavior of the mobile device to conserve resources based on the user activity detection of the acquired context awareness, wherein the user activity detection is based on a signal indicating user activity at the mobile device, and wherein the behavior of the mobile device is altered when the user activity detection indicates that there is no user activity at the mobile device and the mobile device is not charging, and wherein the behavior of the mobile device is altered by: delaying a timing of one or more alarms for the multiple applications, wherein the timing is delayed such that the one or more delayed alarms execute within a window of time, wherein at least a subset of the one or more delayed alarms are associated with one or more wakelocks, and wherein the subset of the one or more delayed alarms associated with one or more wakelocks are delayed such that all the alarms associated with a wakelock execute in alignment within the window of time; preventing an application from accessing device-side resources of the mobile device based on application settings, wherein the application settings include a user-selectable application selector that allows a user of the mobile device to enable the application to access device-side resources of the mobile device before an alarm set by the application is executed in response to the user of the mobile device disabling restrictions for the application via the user-selectable application selector, and wherein the user-selectable application selector of the application settings allows the user of the mobile device to prevent the application from accessing device-side resources of the mobile device before an alarm set by the application is executed in response to the user of the mobile device enabling restrictions for the application via the user-selectable application selector.
A method for managing resources on a mobile device involves executing alarms set by multiple applications while monitoring the device's context, including user activity and charging status. When no user activity is detected and the device is not charging, the method conserves resources by altering device behavior. This includes delaying the timing of alarms for applications, grouping them within a specific time window to reduce wake-ups. Alarms associated with wakelocks are aligned to execute together within this window, minimizing resource usage. Additionally, the method allows users to control application access to device resources through a user-selectable application selector. Users can enable or disable restrictions for individual applications, determining whether they can access device resources before their alarms execute. This ensures that applications only access resources when necessary, further optimizing power and performance. The approach balances efficiency and user control, adapting to the device's context to conserve energy and resources.
2. The method of claim 1 , wherein the device-side resources of the mobile device include network resources and CPU resources.
A system and method for managing device-side resources in a mobile device, particularly focusing on optimizing network and CPU resources to improve performance and efficiency. The invention addresses the challenge of efficiently allocating and utilizing limited computational and network resources in mobile devices, which often face constraints such as battery life, processing power, and bandwidth limitations. The method involves dynamically monitoring and adjusting the allocation of network and CPU resources based on real-time usage patterns, application demands, and system conditions. By intelligently distributing these resources, the system ensures that critical tasks receive sufficient processing power and network access while minimizing unnecessary resource consumption. This approach helps maintain optimal performance, reduce energy consumption, and enhance the overall user experience. The method may also include predictive algorithms to anticipate resource needs and preemptively adjust allocations, further improving efficiency. The invention is particularly useful in scenarios where multiple applications compete for limited resources, such as during high-traffic periods or when running resource-intensive applications. By dynamically balancing network and CPU resources, the system ensures smooth operation and prevents performance degradation.
3. The method of claim 1 , wherein the behavior of the mobile device is altered by delaying acquisition of the wakelocks.
A system and method for managing mobile device performance involves controlling the acquisition of wakelocks to optimize power consumption and system responsiveness. Wakelocks are mechanisms that prevent a mobile device from entering a low-power state, ensuring critical processes remain active. However, excessive or improper wakelock usage can lead to unnecessary battery drain and degraded performance. The invention addresses this by selectively delaying the acquisition of wakelocks, allowing the device to enter a low-power state when possible while ensuring essential operations remain uninterrupted. This approach reduces power consumption without compromising functionality. The method may involve monitoring system conditions, such as battery level or application requirements, to determine optimal timing for wakelock acquisition. By dynamically adjusting wakelock behavior, the system balances energy efficiency and performance, extending battery life while maintaining responsiveness. The invention is particularly useful in mobile devices where power efficiency is critical, such as smartphones and tablets. The delayed wakelock acquisition ensures that the device can conserve energy during idle periods while still supporting necessary background tasks. This method may be implemented in the operating system or application layer, providing flexibility in managing device behavior based on user preferences and system demands.
4. The method of claim 1 , wherein the window of time is a transmission window for transmitting communications for the multiple applications.
A system and method for managing communications in a networked environment where multiple applications share a common transmission window. The invention addresses the challenge of efficiently coordinating data transmissions from different applications to avoid conflicts, reduce latency, and optimize bandwidth usage. The method involves defining a transmission window during which communications from the multiple applications are transmitted. This window ensures that transmissions are synchronized and prioritized, preventing collisions and ensuring reliable data delivery. The system may include a controller or scheduler that allocates time slots within the window to different applications based on their priority, data size, or other criteria. The transmission window can be dynamically adjusted in real-time to accommodate varying network conditions or application demands. By centralizing the management of transmissions, the invention improves network efficiency, reduces overhead, and enhances overall system performance. The method is particularly useful in environments where multiple applications compete for limited bandwidth, such as in IoT networks, industrial automation, or wireless communication systems. The invention ensures that critical data is transmitted without delay while minimizing resource waste.
5. The method of claim 1 , wherein the user remains inactive during the window of time.
A system and method for monitoring user activity and triggering actions based on detected inactivity. The technology addresses the need to automatically perform tasks or notifications when a user is inactive for a specified period, such as in computing environments, security systems, or healthcare monitoring. The method involves tracking user activity within a defined time window and determining whether the user remains inactive throughout that period. If inactivity is confirmed, a predefined action is executed, such as locking a device, sending an alert, or initiating a backup process. The system may use sensors, input devices, or software-based activity logs to detect inactivity. The method ensures that actions are only triggered when the user has been consistently inactive, preventing false activations due to brief pauses. This approach improves efficiency in automated systems by reducing unnecessary interventions and enhancing security or operational reliability. The solution is applicable in various domains, including personal computing, industrial automation, and remote monitoring systems.
6. The method of claim 1 , wherein delaying a timing of one or more alarms comprising delaying a timing until a predetermined time.
A method for managing alarm timing in a system involves adjusting the activation time of one or more alarms to a predetermined time. This approach is used in systems where alarms are triggered based on certain conditions or events, but where immediate activation may not be optimal. By delaying the alarm timing, the system can ensure that alarms are activated at a more appropriate or scheduled time, improving efficiency and reducing unnecessary disruptions. The method may be applied in various domains, such as industrial automation, medical devices, or consumer electronics, where precise timing control of alarms is critical. The predetermined time can be set based on system requirements, user preferences, or external factors, ensuring that alarms are triggered at the most effective moment. This adjustment helps avoid premature or untimely activations, enhancing system performance and user experience. The method may also include additional steps, such as monitoring conditions to determine when to delay the alarm or dynamically adjusting the predetermined time based on real-time data. The overall goal is to provide a more controlled and efficient alarm management system.
7. The method of claim 1 , further comprising tracking use of mobile device resources associated with the executed and delayed alarms.
A system and method for managing alarms in a mobile device monitors and controls the execution of alarms to optimize resource usage. The system detects when a mobile device is in a low-resource state, such as low battery or high CPU usage, and delays the execution of non-critical alarms until the device returns to a normal state. Critical alarms, such as emergency alerts, are executed immediately regardless of the device's resource status. The system also tracks the use of mobile device resources, such as battery life, processing power, and memory, associated with the execution and delay of alarms. By monitoring resource consumption, the system can adjust alarm scheduling dynamically to prevent excessive resource depletion. This approach ensures that critical alarms are always prioritized while non-critical alarms are managed efficiently to conserve device resources. The tracking of resource usage allows for further optimization of alarm handling based on historical data.
8. The method of claim 1 , further comprising further altering the behavior of the mobile device when the acquired context awareness indicates that a screen of the mobile device turns on or motion of the mobile device is sensed.
A system and method for dynamically adjusting mobile device behavior based on contextual awareness. The invention addresses the problem of inefficient power consumption and user experience in mobile devices by automatically adapting device functionality in response to real-time environmental and usage conditions. The method involves acquiring context awareness data, such as screen state, motion detection, or other sensor inputs, to determine the operational state of the device. When the screen turns on or motion is detected, the device behavior is further modified to optimize performance, power efficiency, or user interaction. This may include adjusting display brightness, enabling or disabling specific features, or modifying application behavior. The system ensures that the device responds intelligently to user presence and activity, enhancing usability while conserving battery life. The invention may also incorporate additional context-aware adjustments, such as network connectivity changes or ambient light conditions, to provide a seamless and adaptive user experience. The method ensures that the device remains responsive to dynamic conditions without requiring explicit user input, improving both efficiency and convenience.
9. A mobile device, comprising: a memory; and a processor, the mobile device configured for: executing alarms set by multiple applications executing on the mobile device; acquiring a context awareness of the mobile device, wherein the context awareness includes user activity detection and a determination of whether the mobile device is charging; altering behavior of the mobile device to conserve resources based on the user activity detection of the acquired context awareness, wherein the user activity detection is based on a signal indicating user activity at the mobile device, and wherein the behavior of the mobile device is altered when the user activity detection indicates that there is no user activity at the mobile device and the mobile device is not charging, and wherein the behavior of the mobile device is altered by: delaying a timing of one or more alarms for the multiple applications, wherein the timing is delayed such that the one or more delayed alarms execute within a window of time, wherein at least a subset of the one or more delayed alarms are associated with one or more wakelocks, and wherein the subset of the one or more delayed alarms associated with one or more wakelocks are delayed such that all alarms associated with a wakelock execute in alignment within the window of time; preventing an application from accessing device-side resources of the mobile device based on application settings, wherein the application settings include a user-selectable application selector that allows a user of the mobile device to enable the application to access device-side resources of the mobile device before an alarm set by the application is executed in response to the user of the mobile device disabling restrictions for the application via the user-selectable application selector, and wherein the user-selectable application selector of the application settings allows the user of the mobile device to prevent the application from accessing device-side resources of the mobile device before an alarm set by the application is executed in response to the user of the mobile device enabling restrictions for the application via the user-selectable application selector.
A mobile device includes a processor and memory to manage alarms set by multiple applications while conserving resources. The device detects user activity and determines if it is charging. When no user activity is detected and the device is not charging, it alters its behavior to conserve resources. This includes delaying alarms for multiple applications within a time window, ensuring alarms associated with wakelocks execute together to reduce wake-up frequency. The device also prevents applications from accessing device-side resources based on user-selectable settings. Users can enable or disable restrictions for each application, controlling whether the application can access resources before its alarms execute. This approach optimizes power usage by minimizing unnecessary wake-ups and resource access when the device is idle.
10. The mobile device of claim 9 , wherein the device-side resources of the mobile device include network resources and CPU resources.
A mobile device is configured to optimize resource allocation for executing applications. The device includes a resource management system that monitors and dynamically adjusts the allocation of device-side resources, such as network resources and CPU resources, to improve performance and efficiency. The system identifies resource demands of applications and redistributes available resources based on priority, usage patterns, or other criteria. By dynamically adjusting network and CPU resources, the device ensures that critical applications receive sufficient processing power and bandwidth while minimizing unnecessary resource consumption. This approach enhances overall system performance, reduces latency, and extends battery life by preventing resource overuse. The resource management system may also predict future resource needs and pre-allocate resources to avoid performance bottlenecks. The invention addresses the challenge of efficiently managing limited mobile device resources to support multiple applications running simultaneously.
11. The mobile device of claim 9 , wherein the behavior of the mobile device is altered by delaying acquisition of the wakelocks.
A mobile device includes a processor and a memory storing instructions that, when executed by the processor, cause the device to monitor system events and detect a condition indicating a potential wakelock acquisition. The device then predicts whether the wakelock acquisition will be beneficial or detrimental to system performance. If the acquisition is predicted to be detrimental, the device alters its behavior by delaying the acquisition of the wakelock. This delay prevents unnecessary wakelocks from being acquired, reducing power consumption and improving system efficiency. The prediction may be based on historical data, current system state, or other relevant factors. By dynamically adjusting wakelock acquisition, the device optimizes performance and battery life without requiring manual intervention. The system may also include additional features such as logging wakelock events, analyzing patterns, and adjusting thresholds for wakelock acquisition based on learned behavior. This approach ensures that wakelocks are only acquired when truly necessary, minimizing their impact on system resources.
12. The mobile device of claim 9 , wherein the window of time is a transmission window for transmitting communications for the multiple applications.
A mobile device includes a processor and a memory storing instructions that, when executed, cause the device to manage communication for multiple applications. The device determines a transmission window, which is a specific period during which communications for the applications are transmitted. This window is dynamically adjusted based on factors such as network conditions, application priorities, or power consumption constraints. The device schedules transmissions for the applications within this window to optimize efficiency, reduce latency, or conserve battery life. The transmission window may be fixed or variable, and the device can prioritize certain applications or data types within the window. The system ensures that critical communications are prioritized while non-essential transmissions are deferred or delayed. The device may also monitor network conditions to dynamically adjust the window duration or timing to adapt to changing network environments. This approach improves communication efficiency, reduces power consumption, and enhances user experience by ensuring timely delivery of important data.
13. The mobile device of claim 9 , wherein the user remains inactive during the window of time.
A mobile device is configured to monitor user activity and automatically adjust its operational state based on detected inactivity. The device includes a sensor system to detect user interactions, such as touch inputs or motion, and a processor that analyzes these inputs to determine periods of inactivity. When the sensor system detects no user interaction for a predefined window of time, the processor transitions the device into a low-power or standby mode to conserve energy. The device may also include a timer to measure the duration of inactivity and a display that dims or turns off during this period. The system may further include a wake-up mechanism, such as a motion sensor or button press, to restore full functionality when user activity resumes. This approach reduces unnecessary power consumption while maintaining responsiveness to user needs. The invention is particularly useful for portable devices where battery life is a critical concern.
14. The mobile device of claim 9 , wherein delaying a timing of one or more alarms comprising delaying a timing until a predetermined time.
A mobile device includes a processor and a memory storing instructions that, when executed, cause the device to manage alarms. The device receives an alarm request specifying an alarm time and a predetermined delay time. The processor calculates a delayed alarm time by adding the predetermined delay time to the alarm time. The device then sets an alarm to trigger at the delayed alarm time. The alarm may be a notification, such as a reminder, alert, or scheduled event. The predetermined delay time can be a fixed duration or a dynamic value based on user preferences, device conditions, or external factors. The device may also adjust the alarm timing based on user activity, such as sleep patterns or calendar events, to ensure the alarm is triggered at an optimal time. This system improves user convenience by allowing flexible scheduling of alarms while ensuring timely notifications. The invention addresses the problem of rigid alarm scheduling in mobile devices, providing a more adaptable solution for users who need alarms to be triggered at specific delayed intervals.
15. The mobile device of claim 9 , wherein the processor is further configured for tracking use of mobile device resources associated with the executed and delayed alarms.
A mobile device includes a processor configured to manage alarm execution by delaying alarms based on user activity and device resource conditions. The processor monitors user interactions with the device, such as touch inputs or screen activity, to determine whether the user is actively engaged. If the user is inactive, the processor delays the execution of scheduled alarms to avoid unnecessary interruptions. Additionally, the processor assesses device resource conditions, such as battery level, processing load, or network connectivity, to further determine whether to delay alarms. The processor tracks the use of mobile device resources associated with both executed and delayed alarms, including CPU usage, memory consumption, and power consumption, to optimize performance and efficiency. This tracking allows the device to adapt alarm scheduling dynamically based on real-time conditions, improving user experience by reducing disruptions while maintaining system efficiency. The system ensures alarms are executed only when appropriate, balancing user convenience with device resource management.
16. The mobile device of claim 9 , wherein the processor is further configured for further altering the behavior of the mobile device when the acquired context awareness indicates that a screen of the mobile device turns on or motion of the mobile device is sensed.
This invention relates to mobile devices with context-aware functionality, specifically addressing the need for devices to dynamically adjust their behavior based on real-time environmental and usage conditions. The mobile device includes a processor, sensors, and a display, where the processor is configured to acquire context awareness data from the sensors, such as motion, screen state, or other environmental inputs. The processor then alters the device's behavior in response to this data. For example, when the screen turns on or motion is detected, the processor triggers specific actions, such as activating or deactivating certain features, adjusting power settings, or modifying user interface elements. The sensors may include accelerometers, gyroscopes, or ambient light sensors to detect changes in the device's state or surroundings. The processor's ability to respond to these contextual triggers ensures that the mobile device operates more efficiently and intuitively, adapting to the user's needs without manual intervention. This dynamic adjustment helps conserve battery life, enhance security, and improve user experience by automating responses to common scenarios.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
December 21, 2018
March 29, 2022
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.