WO2020189979A1 - Method and system for performing context-based application disablement on electronic device - Google Patents

Method and system for performing context-based application disablement on electronic device Download PDF

Info

Publication number
WO2020189979A1
WO2020189979A1 PCT/KR2020/003544 KR2020003544W WO2020189979A1 WO 2020189979 A1 WO2020189979 A1 WO 2020189979A1 KR 2020003544 W KR2020003544 W KR 2020003544W WO 2020189979 A1 WO2020189979 A1 WO 2020189979A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
applications
electronic device
disablement
user
Prior art date
Application number
PCT/KR2020/003544
Other languages
French (fr)
Inventor
Ganji Manoj KUMAR
Priydarshi PRIYDARSHI
Jaitirth Anthony Jacob
Syama SUDHEESH
Hongjung SON
Jieun SONG
Renju Chirakarotu NAIR
Vaisakh Punnekkattu Chirayil S B
Original Assignee
Samsung Electronics Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co., Ltd. filed Critical Samsung Electronics Co., Ltd.
Publication of WO2020189979A1 publication Critical patent/WO2020189979A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4893Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present subject matter relates generally to application disablement on an electronic device. More particularly, but not exclusively discloses a method and a system for performing context-based application disablement on the electronic device.
  • an electronic device e.g., smartphones
  • applications may be installed and executed in electronic devices.
  • user usage of the electronic devices such as a smartphone
  • the applications may be dynamic and influenced by internal and external factors.
  • the dynamic nature of the electronic device may need to be learned.
  • a plurality of applications (apps) installed within the electronic device only a few may be used in a time frame (in order of days, or weeks).
  • While other apps may be active in the background or maybe in idle state and may use resources of the electronic device, that may cause a power drain in a longer period. Further, few apps may have explicit and implicit dependencies on other applications. The word applications and apps are used interchangeable throughout the disclosure.
  • a conventional method may disclose aspects related to disabling usage of selected applications based on determining that a user is in a reserved location. For example, if a meeting is scheduled on the electronic device, then one or more applications are determined to be disabled for the user associated with the identification information based on the duration of the meeting.
  • Another conventional method may disclose aspects related to monitoring and/or managing the electronic device concerning a rule or set of rules and/or altering the functionality of the device in response. The conventional method includes applying at least one consequence (such as a reward or a punishment) to the electronic device when the rule is followed or violated.
  • the aspects related to disabling the applications which have not been used for the specific days/period are disclosed.
  • the conventional methods may not predict set of apps which are not been used by user, either directly or one or more apps used by other apps (i.e. implicit invocation).
  • the conventional methods may not predict one or more applications that may be least likely to be used before disabling.
  • Disclosed herein is a method of performing context-based application disablement on an electronic device.
  • the method comprises monitoring, by an application disabling system, configured in an electronic device, factors like data pertaining to a device context, a user context, user interactions with the electronic device and behaviour of one or more applications installed in the electronic device. Further, the method comprises detecting an occurrence of one or more pre-set events in the electronic device based on the monitored data. Upon detecting an occurrence of one or more pre-set events, the method comprises determining an output probability score for each of the one or more applications installed in the electronic device based on the monitored data and pre-analysed application usage pattern on the electronic device.
  • the method comprises determining the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled, from a plurality of predefined disablement policies, based on the output probability score of each of the one or more applications. Finally, the method comprises disabling each of the determined one or more applications by applying the corresponding predefined disablement policy.
  • the present disclosure includes an application disabling system for performing context-based application disablement on an electronic device.
  • the application disabling system comprises a processor and a memory communicatively coupled to the processor.
  • the memory stores the processor-executable instructions, which, on execution, causes the processor to monitor data pertaining to a device context, a user context, user interactions with the electronic device and behaviour of one or more applications installed in the electronic device.
  • the processor detects an occurrence of one or more pre-set events in the electronic device based on the monitored data.
  • the processor determines an output probability score for each of the one or more applications installed in the electronic device based on the monitored data and pre-analysed application usage pattern on the electronic device.
  • the processor determines the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled, from a plurality of predefined disablement policies, based on the output probability score of each of the one or more applications. Finally, the processor disables each of the determined one or more applications by applying the corresponding predefined disablement policy.
  • the present disclosure includes a method of performing application status-based power management for an electronic device.
  • the method includes monitoring, by an application disabling system configured in an electronic device, data pertaining to a device context, a user context and user interactions with the electronic device. Further, the method comprises detecting a launch of one or more applications and one or more meta events associated with the launch of each of the one or more applications. Furthermore, the method comprises detecting exit of each of the one or more launched applications by the user. Subsequently, the method comprises determining a likelihood of relaunch of each of the one or more launched applications exit by the user, by correlating a launch pattern and an exit pattern of each of the one or more launched applications. Finally, the method comprises disabling each of the determined one or more applications based on the determination.
  • the present disclosure includes an application disabling system for performing application status-based power management for an electronic device.
  • the application disabling system comprises a processor and a memory communicatively coupled to the processor.
  • the memory stores the processor-executable instructions, which, on execution, causes the processor to monitor data pertaining to a device context, a user context and user interactions with the electronic device.
  • the processor detects a launch of one or more applications and one or more meta events associated with the launch of each of the one or more applications.
  • the processor detects exit of each of the one or more launched applications by the user.
  • the processor determines a likelihood of relaunch of each of the one or more launched applications exit by the user, by correlating a launch pattern and an exit pattern of each of the one or more launched applications. Finally, the processor disables each of the determined one or more applications based on the determination.
  • the present invention can improve the user's intuitive use by performing a context-based application disablement on an electronic device.
  • FIG.1 illustrates an exemplary architecture for performing context-based application disablement on an electronic device in accordance with some embodiments of the present disclosure
  • FIG. 2A illustrates a detailed block diagram of an application disabling system for performing context-based application disablement on an electronic device in accordance with some embodiments of the present disclosure
  • FIG. 2B-2D illustrates an exemplary use case scenario of performing context-based application disablement on an electronic device in accordance with some embodiments of the present disclosure
  • FIG. 3A is a flowchart depicting a method of performing context-based application disablement on an electronic device in accordance with some embodiments of the present disclosure
  • FIG. 3B is a flowchart depicting a method of performing application status-based power management for an electronic device in accordance with some embodiments of the present disclosure.
  • FIG.4 is a block diagram of an exemplary computer system for implementing embodiments consistent with the present disclosure.
  • An application disabling system associated with the electronic device may monitor data pertaining to a device context, a user context, user interactions with the electronic device and behaviour of one or more applications installed in the electronic device. Based on the monitored data, the application disabling system may detect an occurrence of one or more pre-set events in the electronic device. Upon detecting an occurrence of one or more pre-set events, the application disabling system may determine an output probability score for each of the one or more applications installed in the electronic device based on the monitored data and pre-analysed application usage pattern on the electronic device.
  • the application disabling system may determine the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled.
  • the predefined disablement policy for each of the one or more applications is selected from a plurality of predefined disablement policies.
  • the application disabling system may disable each of the determined one or more applications by applying the corresponding predefined disablement policy.
  • the present disclosure discloses a method and a system for performing application status-based power management for an electronic device.
  • An application disabling system associated with the electronic device may monitor data pertaining to the device context, the user context and the user interactions with the electronic device. Thereafter, the application disabling system associated with the electronic device may detect a launch of one or more applications and one or more meta events associated with the launch of each of the one or more applications. Subsequently, application disabling system associated with the electronic device may detect exit of each of the one or more launched applications by the user.
  • the application disabling system associated with the electronic device may determine a likelihood of relaunch of each of the one or more launched applications exit by the user, by correlating a launch pattern and an exit pattern of each of the one or more launched applications. Thereafter, the application disabling system associated with the electronic device may disable each of the determined one or more applications based on the determination.
  • FIG.1 illustrates an exemplary architecture for performing context-based application disablement on an electronic device in accordance with some embodiments of the present disclosure.
  • the architecture 100 includes a user 102, an electronic device 104 and an application disabling system 106.
  • the electronic device 104 may be operated by the user 102.
  • the electronic device 104 may be associated with the application disabling system 106.
  • the application disabling system 106 may be configured within the electronic device 104.
  • the electronic device 104 may include, but not limited to, a mobile phone, a laptop, a tablet, a desktop, a smartwatch, Augmented Reality (AR) devices, Mixed Reality (MR) devices, Virtual Reality (VR) devices, Extended Reality (XR) devices, ROBOTs, speakers, Internet of Things (IoT) device, a server, and the like.
  • AR Augmented Reality
  • MR Mixed Reality
  • VR Virtual Reality
  • XR Extended Reality
  • ROBOTs Internet of Things
  • the electronic device 104 may have a display screen. In some other embodiments, the electronic device 104 may be an audio-based device such as a speaker, voice assistants such as Alexa TM , Google Home TM , and the like.
  • the application disabling system 106 may be associated with the electronic device 104 via a communication network. The communication network may be at least one of a wired communication network and a wireless communication network. In some embodiments, the application disabling system 106 may be a virtual assistant, a chatbot and the like, which interacts with the user 102. In some other embodiments, the application disabling system 106 may be associated with the virtual assistant or the chatbot which interacts with the user 102.
  • the application disabling system 106 may include a processor 108, an I/O interface 110 and a memory 112.
  • the I/O interface 110 may be configured to detect interactions and occurrence of pre-set events, from the user 102 using the electronic device 104.
  • the processor 108 may monitor data comprising a device context, a user context and a user interactions with the electronic device and behaviour of one or more applications installed in the electronic device, based on the detected interaction and the pre-set events.
  • the processor 108 may monitor data based on, but not limited to, device context, a user context, user interactions with the electronic device, behaviour of one or more applications installed in the electronic device, and a nudge received from the user 102, through the electronic device 104.
  • a nudge may be a gesture made by the user 102 such as a tap, a wave, a double-tap, a pattern and the like, which may trigger the application disabling system 106.
  • the data may include, but not limited to, a location of the user 102, user activity, date and time of the user interactions with the electronic device 104, application usage data, application data, application launch data, notification actions by the user, device usage data, status of the electronic device 104, data stored in the electronic device 104 with respect to the one or more applications, and data stored in devices communicatively connected to the electronic device 104.
  • the data stored in the electronic device 104 with respect to the one or more applications may include information necessary for executing the application in the electronic device 104, such as information on a task that is performed at a specific time, and so on.
  • the task information may include information for executing the data of the application, which is in progress (i.e., currently executing) at a specific time, in the electronic device 104, one or more activities of the one or more application, information indicating whether the application is executed in the background or idle state, and so on.
  • the processor 108 may determine a state of the electronic device 104 that satisfies a condition for disablement/termination of the application.
  • the state of the electronic device in relation to the disablement of the application may include the state of the remaining amount of a battery (for example, 5% or less of the total battery capacity), the temperature of the electronic device (for example, the surface temperature of a communication unit or a battery is more than 50° C.), and the applications in progress may be forced to disable depending on the various states of the electronic device 104.
  • the state of the remaining amount of a battery for example, 5% or less of the total battery capacity
  • the temperature of the electronic device for example, the surface temperature of a communication unit or a battery is more than 50° C.
  • the processor 108 may determine explicit usage or implicit usage of the installed application in the electronic device 104.
  • the explicit usage of the application includes usage of the application directly by user 102 and the implicit usage of the application includes usage of one application by another application of the electronic device 104.
  • the implicit usage of the application may include the usage of the application of the electronic device 104 by the devices communicatively connected to the electronic device 104.
  • the processor 108 may analyse an application usage pattern by the user 102 of the electronic device 104. The application usage pattern by the user 102 may be analysed by monitoring user interactions with the electronic device 104.
  • the user interactions with the electronic device 104 may include a temporal input features and contextual input features based on application launch and transition between the applications by the user 102 in the electronic device 104.
  • the temporal features include, but not limited to, sine of day of month, cosine of day of month, sine of day of week, cosine of day of week, and so on.
  • the contextual input features include, but not limited to, airplane mode state of the electronic device 104, presence of widgets in the electronic device 104, reason for application launch such as user launched applications, launch of application by another application, interested notification/ notification preview, active widgets in the electronic device 104.
  • the data pertaining to the analysed application usage pattern by the user 102 of the electronic device 104 may be stored in the memory 112 associated with the electronic device 104.
  • the processor 108 may detect change in the device context or the user context and determine an output probability score for each of the one or more applications installed in the electronic device based on the pre-analysed application usage pattern on the electronic device 104.
  • the processor 108 may detect “change of date” in the electronic device 104 and determining likeliness of at least one of least usage or no usage of the one or more applications by the user 102 or the electronic device 104, based on the output probability score of each of the one or more applications.
  • the processor 108 may disable each of the determined one or more applications by applying the corresponding predefined disablement policy.
  • the processor 108 may revise the disablement policy applied to one or more application in case the output probability score indicates likeliness of usage of the one or more applications by the electronic device 104 or the user 102.
  • the processor 108 may receive a feedback from the user via the I/O interface 110 based on the displayed disablement information on the electronic device 104.
  • the processor 108 may modify the data pertaining to pre-analysed application usage pattern of the user or the processor 108 may be further trained to determine the one or more applications to be disabled.
  • the current usage pattern of the user 102 includes current temporal and contextual input features obtained in subsequent usage of the electronic device 104 by the user 102.
  • the data pertaining to the current usage pattern may be saved in the memory 112 with current data with the current device context.
  • the current device context can be, but not limited to, idle state, battery charging status, threshold on the battery level of the electronic device 104.
  • FIG. 2A illustrates a detailed block diagram of the application disabling system 106 for performing context-based application disablement on the electronic device 104 in accordance with some embodiments of the present disclosure.
  • the application disabling system 106 may include data 204 and modules 206.
  • the data 204 is stored in the memory 112 configured in the application disabling system 106 as shown in the FIG. 2A.
  • the data 204 may include monitored data 208, contextual data 210, pre-set event data 212, output probability score 214, application usage pattern data 216, disablement policy data 218, and other data 220.
  • modules 206 are described herein in detail.
  • the data 204 may be stored in the memory 112 in the form of various data structures. Additionally, the data 204 can be organized using data models, such as relational or hierarchical data models.
  • the other data 220 may store data, including temporary data and temporary files, generated by the modules 206 for performing the various functions of the application disabling system 106.
  • the data 204 stored in the memory 112 may be processed by the modules 206 of the application disabling system 106.
  • the modules 206 may be stored within the memory 112.
  • the modules 206 communicatively coupled to the processor 108 configured in the application disabling system 106 may also be present outside the memory 112 as shown in FIG.2A and implemented as hardware.
  • the term modules refer to an application-specific integrated circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and memory that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable components that provide the described functionality.
  • ASIC application-specific integrated circuit
  • the modules 206 may include, for example, a data monitoring module 222, a pre-set events detection module 224, an output probability score determination module 226, an application disablement determination module 228, an application disabling module 230, and other modules 232.
  • the other modules 232 may be used to perform various miscellaneous functionalities of the application disabling system 106. It will be appreciated that such aforementioned modules 206 may be represented as a single module or a combination of different modules.
  • the data monitoring module 222 may monitor data pertaining to a device context, a user context, user interactions with the electronic device 104 and behaviour of one or more applications installed in the electronic device 104.
  • the electronic device 104 may include, but not limited to, a mobile phone, a laptop, a tablet, a desktop, a smartwatch, Augmented Reality (AR) devices, Mixed Reality (MR) devices, Virtual Reality (VR) devices, Extended Reality (XR) devices, ROBOTs , servers, speakers, and the like.
  • the electronic device 104 may be a voice assistant such as Alexa TM .
  • the monitored data 208 includes the data monitored pertaining to the device context, the user context, user interactions with the electronic device 104 and behaviour of one or more applications installed in the electronic device 104.
  • the contextual data 210 includes data pertaining to the device context and the user context.
  • the device context includes hardware parameters in the electronic device 104 such as the status condition of, for example, Central Processing Unit (CPU), Graphics Processing Unit (GPU), memory 112, battery level, connectivity status, connectivity strength, and so on.
  • the user context includes the location of the user 102 (it also means location of the electronic device 104), electronic device time, user activity such as walking, sitting, and so on.
  • the user interactions with the electronic device 104 includes launching application in the electronic device 104, actions by the user 102 to the notification received in the electronic device 104, touch/nudge operations on the display screen of the electronic device 104.
  • the behaviour of one or more applications installed in the electronic device 104 includes meta-information, intended operation associated with the electronic device 104, and so on.
  • the pre-set events detection module 224 may detect an occurrence of one or more pre-set events in the electronic device 104.
  • the pre-set events or the pre-set event data 212 includes, but not limited to, a date, a battery charging status, application launch and exit, and so on.
  • the output probability score 214 determination module 226 may determine the output probability score 214 for each of the one or more applications installed in the electronic device 104 based on the monitored data and pre-analysed application usage pattern on the electronic device 104.
  • the output probability score can be for explicit usage of the application or implicit usage of the application against each application as depicted in FIG. 2B.
  • the electronic device 104 may display slice of application along with the search results.
  • the slice of application as depicted in FIG. 2B can be upcoming trip of the user 102 in Seattle which was implicitly used from an email application as depicted in FIG. 2B.
  • the explicit usage of the application includes manually launching the application in the electronic device 104 by the user 102.
  • the implicit usage of the application includes application launch dependencies between and within the applications and dependent entities such as widgets, notification, as depicted in FIG. 2C metadata of the electronic device 104, and so on.
  • FIG. 2C depicts widget handling and notification handling by the application disabling system 106.
  • the applications with notification is being pushed and applications with active widgets are excluded from disabling.
  • the application disabling system 106 may determine that the user 102 is interest in particular application.
  • the application usage pattern data 216 includes the pre-analysisd application usage pattern.
  • the output probability score may indicate likeliness of at least one of least usage or no usage of the one or more applications by the electronic device 104. As an example, the likeliness may be identified for applications that may not be launched in a long duration (such as days/weeks), by the user 102 or by other applications.
  • the application disablement determination module 228 may determine the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled, from a plurality of predefined disablement policies.
  • the disablement policy data 218 comprises plurality of predefined disablement policies.
  • the one or more applications are determined to be disabled when the output probability score is greater than a predefined first threshold.
  • the application disabling module 230 may disable each of the determined one or more applications as depicted in FIG. 2D, by applying the corresponding predefined disablement policy. As depicted in FIG.
  • the application disabling system 106 may determine that app#5 and app#6 are not used for long time. Further, the application disabling system 106 may provide notification on the display screen of the electronic device 104 that the app#5 and app#6 will be disabled. Then the application disabling system 106 may disable app#5 and app#6. As an example, different levels of disablement of the application may be applied, such as freeze the application or disable the application or uninstall the application, based on identified likeliness of no usage of the one or more application to gain power benefits of the electronic device 104. Each of the plurality of predefined disablement policies indicates a level of disablement.
  • the levels of disablement may relate to the presence of a memory footprint of an application in storage, presence of the application in an installed state in the electronic device 104, and presence of the application in a memory 112. Further, the disabled one or more applications are enabled when the output probability score of the corresponding disabled one or more applications is determined to be less than a predefined first threshold.
  • the other module 232 may compare the output probability score of each of the one or more applications with a plurality of predefined range of thresholds to identify a match.
  • Each of the plurality of predefined range of thresholds may be associated with a predefined disablement policy among the plurality of predefined disablement policies. Further, each of the plurality of the predefined range of thresholds is greater than a predefined first threshold. Further, if the likeliness of no usage of the one or more application decreases, then the one or more application may be unfrozen or enabled or re-installed and brought back to normal state (i.e.
  • the other module 232 may display disablement information, to the user 102, in a predefined user understandable format.
  • the disablement information is data inferred from the output probability score of each of the one or more applications.
  • the other module 232 may receive feedback from the user 102 based on the displayed disablement information.
  • the other data 220 includes the disablement information.
  • the other module 232 may modify the pre-analysed application usage pattern of the user based on at least one of the feedbacks of the user and a current usage pattern of the user.
  • the application disabling system 106 may perform application status-based power management for the electronic device 104.
  • the data monitoring module 222 may monitor data pertaining to a device context, user context and user interactions with the electronic device 104.
  • the pre-set events detection module 224 may detect a launch of one or more applications and one or more meta information associated with the launch of each of the one or more applications.
  • Meta information of a usage event can be type of usage (slice, widget, app-to-app transition) etc.
  • the pre-set events detection module 224 may detect exit of each of the one or more launched applications by the user 102.
  • the output probability score determination module 226 may determine a likelihood of relaunch of each of the one or more launched applications exit by the user 102, by correlating a launch pattern and an exit pattern of each of the one or more launched applications. Furthermore, the application disabling module 230 may disable each of the determined one or more applications based on the determination.
  • the application disabling system 106 is a machine learning-based system that may be trained. Therefore, the application disabling system 106 selects the one or more first features, second features, third features and assign corresponding labels to each of the one or more first, second and third features based on the training. Further, based on the response of the user 102, feedback of the user 102 and the preferences of the user 102, the application disabling system 106 is continuously trained or continuously performs self-learning.
  • the features or data 204 may be processed such as application launch, contextual and system state, time features, application launch reason and stored in the memory 112 or a database (not shown in FIG. 2A). The features or data 204 is saved in the memory 112 once the application is launched.
  • the application disabling system 106 may be trained and the stored features or data 204 may be updated.
  • the trained application disabling system 106 may include a model that is trained with the updated features or data 204.
  • the training of the application disabling system 106 may be invoked when a threshold number of unique application launches is performed by the user 102 or the electronic device 104.
  • the application disabling system 106 or the model may be trained using a Multi Stochastic Gradient Descent (MSGDR) method.
  • MSGDR Multi Stochastic Gradient Descent
  • the application disabling system 106 may perform context-based application disablement on the electronic device 104.
  • the application disabling system 106 for performing context-based application disablement may be updated when there is an occurrence of pre-set events such as date change event or battery status, and so on.
  • Application launch Identity Feature to train com.Socialmedia.katana 000000,1,0.81697,-0.57668,-0.263103,-0.964768,0,1,1,0 com.ab.abcd 000000,3,-0.942261,-0.33488,-0.507666,0.861554,1,0,1,1
  • the application disabling system 106 may disable the one or more application and receive user feedback or the user 102 may enable/re-install the disabled application, then this may be considered as faults of the application disabling system 106. Based on the fault data, the application disabling system 106 may retrain itself.
  • com. messengergerapplication is a frequently used application, hence low output probability score may be provided for disabling the application.
  • ‘com.sec.os.- app.health’ may be the least used application, hence high output probability score may be provided for disabling the application.
  • ‘com.abcdet.astrodaily’ is an application used in a pattern (i.e. monthly usage), learned behaviour can be observed in output probability score for disabling the application.
  • the package name may be mapped with a unique Identity (ID) number as shown in the below Table 2.
  • ID unique Identity
  • Package Name Package ID com.socialmedia.katana 1 com.e-commerce.avod.thirdpartyclient 2 com.ab.abcd 3 com.efghreads 4 com.facebook.orca 5 com.1234.os 6 com.brandname.os.123connect 7 com.sec.os.app.popupcalculator 8
  • the package ID is provided to the application disablement determination module 228 of the application disabling system 106 for taking the application disabling decision as shown in the below Table 3.
  • the application disabled state is managed by the application disabling module 230 of the application disabling system 106 when to disable or enable the one or more applications.
  • the data monitoring module 222 may check for temporal input features, contextual input features, and device context and provide the features to the data monitoring module 222. Further, the data monitoring module 222 may be trained for determining the user context and performing positive training for increasing the output probability score of the machine learning model (i.e. the application disabling system 106) corresponding to each application in terms of disablement. The trained model or updated weight of the trained model is saved in the memory 112 of the application disabling system 106.
  • the data monitoring module 222 may determine if one or more applications are used today. If not, performing negative training for decreasing output probability score of machine learning model (i.e. the application disabling system 106) corresponding to each application in terms of disablement.
  • the trained model or updated weight of the trained model is saved in the memory 112 of the application disabling system 106. Weights of this machine learning model are updated based on implicit and explicit usage of apps in a device.
  • the pre-set event detection module 224 may check for temporal input features, contextual input features, and device context and provide the features to the data monitoring module 222. Further, the application disablement determination module 228 may determine the one or more applications to be disabled based on the output probability score. The application disabling module 230 may disable the one or more determined applications and manage the disabled one or more applications by enabling the one or more applications when the output probability score is determined to be more.
  • the application disabling system 106 may determine that the user 102 is interested or not interested in a particular application or widget or notification or slice, as depicted in below Table 4. As predicted in Table 4, if the user 102 launches application or launches the application through widget, notification, slice, then the user 102 is interested in particular application. If the user 102 does not launch the application, not interacting with the widget, or disable/clear particular notification or application is not launched through slice, then the user 102 is not interested in particular application.
  • Application type User interested User not interested Application User 102 launches application, Based on metadata determine general tendency in application.
  • User 102 has not launched one or more application Widget User 102 interacts with widget (e.g. refresh the widget)User 102 launches the application from the widget User 102 is not refreshing the widget.
  • User 102 is not interacting with the widget Notification User 102 discarding the notification from the list of notifications (i.e. single notification)User 102 expanding single notification (i.e. click and open the application associated with the application)
  • User 102 input to clear all notification (i.e. No interest in all notification)User 102 disable notification manually
  • Slice Application 'B' uses a slice of application 'A'. User 102 may or may not directly use the application 'A'. App 'B' uses a slice of application 'A', but the user 102 is not using application 'B'
  • the application which the user is interested in i.e. direct launch by the user 102 at least once in a day
  • the default output probability score could be ‘1’.
  • the application which the user is not interested in i.e. used by other applications once in a day
  • the default output probability score could be ‘0’.
  • the trained model is saved in the memory 112 and the output probability score determination module 226 of the application disabling system 106 may output probability score for each of one or more applications. As an example, consider various scenarios of using one or more applications by the user 102 as depicted in Table 5, for training the application disabling system 106.
  • Application Widget Notification Slice Meta-data from Big data Interest points Launch Presence on the home screen of the electronic device 104 Opening/expanding notificationSingle discard Slice of Application A is used by Application BThe user is interested in B or A.
  • the positive training of the application disabling system 106 may have an output probability score of ‘1’ and negative training of the application disabling system 106 may have an output probability score of ‘0’. Both the output probability scores are inputted in the below equation 1, for training the application disabling system 106.
  • the trained application disabling system 106 (i.e. model) may be used to determine the output probability score of one or more applications to perform disabling of one or more applications as in the below equation 2.
  • the output probability score of one or more applications is determined as in below exemplary Table 6.
  • levels of disablement by the application disabling system 106 is dependent on the output probability score.
  • the application can be allocated into different disablement levels. For example, consider ‘level 0’ to ‘level 2’, wherein ‘level 0’ is application being fully active, and ‘level 2’ the application being fully disabled by the application disabling system 106.
  • the levels of disablement of the one or more applications is depicted in the below Table 7.
  • Level 2 Disable (deactivate application)
  • Level 1 Freeze (pause the application)
  • Level 0 Running (normal running of the application)
  • disabling the application comprises deactivating the application to remove the data related to the application in the memory 112 or the storage footprint.
  • the application may not be uninstalled but the application may be in a state of completely disabled.
  • the application disabling system 106 may disable one or more applications for saving the power of the electronic device 104.
  • a power-saving analysis may be performed on the application disabling system 106 and the results are depicted in the below Table 8-9.
  • FIG. 3A is a flowchart depicting a method 300a of performing context-based application disablement on an electronic device 104, in accordance with some embodiments of the present disclosure.
  • the method 300a includes one or more blocks illustrating a method of performing context-based application disablement on an electronic device 104.
  • the method 300a may be described in the general context of computer-executable instructions.
  • computer-executable instructions can include routines, programs, objects, components, data structures, procedures, modules, and functions, which perform functions or implement abstract data types.
  • method 300a is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 300a. Additionally, individual blocks may be deleted from the methods without departing from the spirit and scope of the subject matter described herein. Furthermore, the method 300a can be implemented in any suitable hardware, software, firmware, or combination thereof.
  • the method 300a may include monitoring, by a processor 108 configured in an application disabling system 106, data pertaining to a device context, a user context, user interactions with the electronic device 104 and behaviour of one or more applications installed in the electronic device. 104
  • the method 300a may include detecting, by the processor 108, an occurrence of one or more pre-set events in the electronic device based on the monitored data.
  • the method 300a may include determining, by the processor 108, an output probability score for each of the one or more applications installed in the electronic device based on the monitored data and pre-analysed application usage pattern on the electronic device, when the occurrence of the one or more pre-set events is detected.
  • the method 300a may include determining, by the processor 108, the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled, from a plurality of predefined disablement policies, based on the output probability score of each of the one or more applications.
  • the method 300a may include disabling, by the processor 108 each of the determined one or more applications by applying the corresponding predefined disablement policy.
  • FIG. 3B is a flowchart depicting a method 300b of performing application status-based power management for an electronic device 104 in accordance with some embodiments of the present disclosure.
  • the method 300b includes one or more blocks illustrating a method of performing application status-based power management for an electronic device.
  • the method 300b may be described in the general context of computer-executable instructions.
  • computer-executable instructions can include routines, programs, objects, components, data structures, procedures, modules, and functions, which perform functions or implement abstract data types.
  • method 300b is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 300b. Additionally, individual blocks may be deleted from the methods without departing from the spirit and scope of the subject matter described herein. Furthermore, the method 300b can be implemented in any suitable hardware, software, firmware, or combination thereof.
  • the method 300b may include monitoring, by a processor 108 configured in an application disabling system 106, data pertaining to a device context, a user context and user interactions with the electronic device 104.
  • the method 300b may include detecting, by the processor 108, a launch of one or more applications and one or more meta events associated with the launch of each of the one or more applications.
  • the method 300b may include detecting, by the processor 108, exit of each of the one or more launched applications by the user.
  • the method 300b may include determining, by the processor 108, a likelihood of relaunch of each of the one or more launched applications exit by the user, by correlating a launch pattern and an exit pattern of each of the one or more launched applications.
  • the method 300b may include disabling, by the processor 108, each of the determined one or more applications based on the determination.
  • Embodiments herein enable the application disabling system to have complete access to the applications, stored data and dynamically generated data in the electronic device, which forms the trained model for disabling one or more applications.
  • Embodiments herein eliminate unnecessary power usage in the electronic device and reduces the load on the processor resulting in sustained performance of the electronic device.
  • Embodiments herein predict applications to be disabled within a few days of learning and enable the application back ahead of use of the application.
  • Meta data-based application behaviour learning may provide a general tendency of usage of application.
  • Embodiments herein provide the ability to learn indirect usage of the app as a widget (for example, Weather), Notification and ability to learn by user feedback.
  • a widget for example, Weather
  • FIG.4 is a block diagram of an exemplary computer system 400 for implementing embodiments consistent with the present disclosure.
  • FIG.4 illustrates a block diagram of an exemplary computer system 400 for implementing embodiments consistent with the present invention.
  • the computer system 400 can be an application disabling system 106 that is used for performing context-based application disablement on an electronic device.
  • the computer system 400 may include a central processing unit (“CPU” or “processor”) 402.
  • the processor 402 may include at least one data processor for executing program components for executing user or system-generated business processes.
  • a user may include a person, a person using a device such as those included in this invention, or such a device itself.
  • the processor 402 may include specialized processing units such as integrated system (bus) controllers, memory management control units, floating-point units, graphics processing units, digital signal processing units, etc.
  • the processor 402 may be disposed in communication with input devices 411 and output devices 412 via I/O interface 401.
  • the I/O interface 401 may employ communication protocols/methods such as, without limitation, audio, analog, digital, stereo, IEEE-1394, serial bus, Universal Serial Bus (USB), infrared, PS/2, BNC, coaxial, component, composite, Digital Visual Interface (DVI), high-definition multimedia interface (HDMI), Radio Frequency (RF) antennas, S-Video, Video Graphics Array (VGA), IEEE 802.n /b/g/n/x, Bluetooth, cellular (e.g., Code-Division Multiple Access (CDMA), High-Speed Packet Access (HSPA+), Global System For Mobile Communications (GSM), Long-Term Evolution (LTE), WiMax, or the like), etc.
  • CDMA Code-Division Multiple Access
  • HSPA+ High-Speed Packet Access
  • GSM Global System For Mobile Communications
  • LTE Long-Term Evolution
  • WiMax wireless wide area network
  • computer system 400 may communicate with input devices 411 and output devices 412.
  • the processor 402 may be disposed in communication with a communication network 409 via a network interface 403.
  • the network interface 403 may communicate with the communication network 409.
  • the network interface 403 may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10/100/1000 Base T), Transmission Control Protocol/Internet Protocol (TCP/IP), token ring, IEEE 802.11a/b/g/n/x, etc.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • IEEE 802.11a/b/g/n/x IEEE 802.11a/b/g/n/x
  • the electronic device 104 may include, but not limited to, a mobile phone, a laptop, a tablet, a desktop, a smartwatch, Augmented Reality (AR) devices, Mixed Reality (MR) devices, Virtual Reality (VR) devices, Extended Reality (XR) devices, ROBOTs, speakers, server, a voice assistant such as Alexa and the like.
  • the communication network 409 can be implemented as one of the different types of networks, such as intranet or Local Area Network (LAN) and such within the organization.
  • the communication network 409 may either be a dedicated network or a shared network, which represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), etc., to communicate with each other. Further, the communication network 409 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, etc. In some embodiments, the processor 402 may be disposed in communication with a memory 405 (e.g., RAM, ROM, etc. not shown in FIG.4) via a storage interface 404.
  • a memory 405 e.g., RAM, ROM, etc. not shown in FIG.
  • the storage interface 404 may connect to memory 405 including, without limitation, memory drives, removable disc drives, etc., employing connection protocols such as Serial Advanced Technology Attachment (SATA), Integrated Drive Electronics (IDE), IEEE-1394, Universal Serial Bus (USB), fiber channel, Small Computer Systems Interface (SCSI), etc.
  • the memory drives may further include a drum, magnetic disc drive, magneto-optical drive, optical drive, Redundant Array of Independent Discs (RAID), solid-state memory devices, solid-state drives, etc.
  • the memory 405 may store a collection of program or database components, including, without limitation, a user interface 406, an operating system 407, a web browser 408, etc.
  • the computer system 400 may store user/application data, such as the data, variables, records, etc. as described in this invention.
  • databases may be implemented as fault-tolerant, relational, scalable, secure databases such as Oracle or Sybase.
  • Operating system 407 may facilitate resource management and operation of the computer system 400.
  • operating systems include, without limitation, APPLE ® MACINTOSH ® OS X ® , UNIX ® , UNIX-like system distributions (E.G., BERKELEY SOFTWARE DISTRIBUTION ® (BSD), FREEBSD ® , NETBSD ® , OPENBSD, etc.), LINUX ® DISTRIBUTIONS (E.G., RED HAT ® , UBUNTU ® , KUBUNTU ® , etc.), IBM®OS/2 ® , MICROSOFT ® WINDOWS ® (XP ® , VISTA ® /7/8, 10 etc.), APPLE ® IOS ® , GOOGLETM ANDROIDTM, BLACKBERRY ® OS, or the like.
  • User interface 406 may facilitate display, execution, interaction, manipulation, or operation of program components through textual or graphical facilities.
  • user interfaces may provide computer interaction interface elements on a display system operatively connected to computer system 400, such as cursors, icons, checkboxes, menus, scrollers, windows, widgets, etc.
  • Graphical User Interfaces may be employed, including, without limitation, Apple ® Macintosh ® operating systems’ Aqua ® , IBM ® OS/2 ® , Microsoft ® Windows ® (e.g., Aero, Metro, etc.), web interface libraries (e.g., ActiveX ® , Java ® , Javascript®, AJAX, HTML, Adobe ® Flash ® , etc.), or the like.
  • Computer system 400 may implement a web browser 408 stored-program components.
  • Web browser 408 may be a hypertext viewing application, such as MICROSOFT ® INTERNET EXPLORER ® , GOOGLETM CHROMETM, MOZILLA ® FIREFOX ® , APPLE ® SAFARI ® , etc. Secure web browsing may be provided using Secure Hypertext Transport Protocol (HTTPS), Secure Sockets Layer (SSL), Transport Layer Security (TLS), etc.
  • Web browsers 408 may utilize facilities such as AJAX, DHTML, ADOBE ® FLASH ® , JAVASCRIPT ® , JAVA ® , Application Programming Interfaces (APIs), etc.
  • Computer system 400 may implement a mail server stored program component.
  • the mail server may be an Internet mail server such as Microsoft Exchange, or the like.
  • the mail server may utilize facilities such as ASP, ACTIVEX ® , ANSI ® C++/C#, MICROSOFT ® ,. NET, CGI SCRIPTS, JAVA ® , JAVASCRIPT ® , PERL ® , PHP, PYTHON ® , WEBOBJECTS ® , etc.
  • the mail server may utilize communication protocols such as Internet Message Access Protocol (IMAP), Messaging Application Programming Interface (MAPI), MICROSOFT® exchange, Post Office Protocol (POP), Simple Mail Transfer Protocol (SMTP), or the like.
  • IMAP Internet Message Access Protocol
  • MAPI Messaging Application Programming Interface
  • PMP Post Office Protocol
  • SMTP Simple Mail Transfer Protocol
  • the computer system 400 may implement a mail client stored program component.
  • the mail client may be a mail viewing application, such as APPLE ® MAIL, MICROSOFT ® ENTOURAGE ® , MICROSOFT ® OUTLOOK ® , MOZILLA ® THUNDERBIRD ® , etc.
  • a computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored.
  • a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein.
  • the term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., non-transitory. Examples include Random Access Memory (RAM), Read-Only Memory (ROM), volatile memory, non-volatile memory, hard drives, Compact Disc (CD) ROMs, Digital Video Disc (DVDs), flash drives, disks, and any other known physical storage media.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

The present disclosure is related to application disablement, which discloses a method and a system for performing context-based application disablement on an electronic device. The application disabling system configured in the electronic device monitors data pertaining to device context, user context, user interactions with the electronic device and behaviour of applications installed in the electronic device. Further, an occurrence of one or more pre-set events in the electronic device is detected based on the monitored data, and thereafter an output probability score is determined for each of the one or more applications installed in the electronic device based on the monitored data and pre-analysed application usage pattern on the electronic device. Subsequently, the system determines applications to be disabled and a corresponding predefined disablement policy for each application, based on the output probability score of each application. Finally, the determined applications are disabled by applying the corresponding predefined disablement policy.

Description

METHOD AND SYSTEM FOR PERFORMING CONTEXT-BASED APPLICATION DISABLEMENT ON ELECTRONIC DEVICE
The present subject matter relates generally to application disablement on an electronic device. More particularly, but not exclusively discloses a method and a system for performing context-based application disablement on the electronic device.
In general, various electronic devices that use multiple functions related to applications may have recently been developed. For example, an electronic device (e.g., smartphones) may execute applications and may terminate the running applications according to a state of the electronic device. A wide range of applications (also referred to as "apps") may be installed and executed in electronic devices. Accordingly, user usage of the electronic devices (such as a smartphone) or the applications may be dynamic and influenced by internal and external factors. For personalizing the electronic device at a system level, the dynamic nature of the electronic device may need to be learned. Further, among a plurality of applications (apps) installed within the electronic device, only a few may be used in a time frame (in order of days, or weeks). While other apps may be active in the background or maybe in idle state and may use resources of the electronic device, that may cause a power drain in a longer period. Further, few apps may have explicit and implicit dependencies on other applications. The word applications and apps are used interchangeable throughout the disclosure.
A conventional method may disclose aspects related to disabling usage of selected applications based on determining that a user is in a reserved location. For example, if a meeting is scheduled on the electronic device, then one or more applications are determined to be disabled for the user associated with the identification information based on the duration of the meeting. Another conventional method may disclose aspects related to monitoring and/or managing the electronic device concerning a rule or set of rules and/or altering the functionality of the device in response. The conventional method includes applying at least one consequence (such as a reward or a punishment) to the electronic device when the rule is followed or violated. In yet another conventional method the aspects related to disabling the applications which have not been used for the specific days/period are disclosed.
However, the conventional methods may not predict set of apps which are not been used by user, either directly or one or more apps used by other apps (i.e. implicit invocation). The conventional methods may not predict one or more applications that may be least likely to be used before disabling.
The information disclosed in this background of the disclosure section is only for enhancement of understanding of the general background of the invention and should not be taken as an acknowledgment or any form of suggestion that this information forms the prior art already known to a person skilled in the art.
Disclosed herein is a method of performing context-based application disablement on an electronic device.
One or more shortcomings of the prior art may be overcome, and additional advantages may be provided through the present disclosure. Additional features and advantages may be realized through the techniques of the present disclosure. Other embodiments and aspects of the disclosure are described in detail herein and are considered a part of the claimed disclosure.
Disclosed herein is a method of performing context-based application disablement on an electronic device. The method comprises monitoring, by an application disabling system, configured in an electronic device, factors like data pertaining to a device context, a user context, user interactions with the electronic device and behaviour of one or more applications installed in the electronic device. Further, the method comprises detecting an occurrence of one or more pre-set events in the electronic device based on the monitored data. Upon detecting an occurrence of one or more pre-set events, the method comprises determining an output probability score for each of the one or more applications installed in the electronic device based on the monitored data and pre-analysed application usage pattern on the electronic device. Subsequently, the method comprises determining the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled, from a plurality of predefined disablement policies, based on the output probability score of each of the one or more applications. Finally, the method comprises disabling each of the determined one or more applications by applying the corresponding predefined disablement policy.
Further, the present disclosure includes an application disabling system for performing context-based application disablement on an electronic device. The application disabling system comprises a processor and a memory communicatively coupled to the processor. The memory stores the processor-executable instructions, which, on execution, causes the processor to monitor data pertaining to a device context, a user context, user interactions with the electronic device and behaviour of one or more applications installed in the electronic device. Further, the processor detects an occurrence of one or more pre-set events in the electronic device based on the monitored data. Upon detecting an occurrence of one or more pre-set events, the processor determines an output probability score for each of the one or more applications installed in the electronic device based on the monitored data and pre-analysed application usage pattern on the electronic device. Subsequently, the processor determines the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled, from a plurality of predefined disablement policies, based on the output probability score of each of the one or more applications. Finally, the processor disables each of the determined one or more applications by applying the corresponding predefined disablement policy.
Furthermore, the present disclosure includes a method of performing application status-based power management for an electronic device. The method includes monitoring, by an application disabling system configured in an electronic device, data pertaining to a device context, a user context and user interactions with the electronic device. Further, the method comprises detecting a launch of one or more applications and one or more meta events associated with the launch of each of the one or more applications. Furthermore, the method comprises detecting exit of each of the one or more launched applications by the user. Subsequently, the method comprises determining a likelihood of relaunch of each of the one or more launched applications exit by the user, by correlating a launch pattern and an exit pattern of each of the one or more launched applications. Finally, the method comprises disabling each of the determined one or more applications based on the determination.
Further, the present disclosure includes an application disabling system for performing application status-based power management for an electronic device. The application disabling system comprises a processor and a memory communicatively coupled to the processor. The memory stores the processor-executable instructions, which, on execution, causes the processor to monitor data pertaining to a device context, a user context and user interactions with the electronic device. Further, the processor detects a launch of one or more applications and one or more meta events associated with the launch of each of the one or more applications. Furthermore, the processor detects exit of each of the one or more launched applications by the user. Subsequently, the processor determines a likelihood of relaunch of each of the one or more launched applications exit by the user, by correlating a launch pattern and an exit pattern of each of the one or more launched applications. Finally, the processor disables each of the determined one or more applications based on the determination.
The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.
The present invention can improve the user's intuitive use by performing a context-based application disablement on an electronic device.
The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed principles. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the figures to reference like features and components. Some embodiments of system and/or methods in accordance with embodiments of the present subject matter are now described, by way of example only, and with reference to the accompanying figures, in which:
FIG.1 illustrates an exemplary architecture for performing context-based application disablement on an electronic device in accordance with some embodiments of the present disclosure;
FIG. 2A illustrates a detailed block diagram of an application disabling system for performing context-based application disablement on an electronic device in accordance with some embodiments of the present disclosure;
FIG. 2B-2D illustrates an exemplary use case scenario of performing context-based application disablement on an electronic device in accordance with some embodiments of the present disclosure;
FIG. 3A is a flowchart depicting a method of performing context-based application disablement on an electronic device in accordance with some embodiments of the present disclosure;
FIG. 3B is a flowchart depicting a method of performing application status-based power management for an electronic device in accordance with some embodiments of the present disclosure; and
FIG.4 is a block diagram of an exemplary computer system for implementing embodiments consistent with the present disclosure.
It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative systems embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and executed by a computer or processor, whether or not such computer or processor is explicitly shown.
In the present document, the word "exemplary" is used herein to mean "serving as an example, instance, or illustration." Any embodiment or implementation of the present subject matter described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments.
While the disclosure is susceptible to various modifications and alternative forms, specific embodiment thereof has been shown by way of example in the drawings and will be described in detail below. It should be understood, however that it is not intended to limit the disclosure to the forms disclosed, but on the contrary, the disclosure is to cover all modifications, equivalents, and alternative falling within the scope of the disclosure.
The terms “comprises”, “comprising”, “includes” or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a setup, device or method that includes a list of components or steps does not include only those components or steps but may include other components or steps not expressly listed or inherent to such setup or device or method. In other words, one or more elements in a system or apparatus proceeded by “comprises… a” does not, without more constraints, preclude the existence of other elements or additional elements in the system or method.
Disclosed herein are a method and a system for performing context-based application disablement on an electronic device. An application disabling system associated with the electronic device may monitor data pertaining to a device context, a user context, user interactions with the electronic device and behaviour of one or more applications installed in the electronic device. Based on the monitored data, the application disabling system may detect an occurrence of one or more pre-set events in the electronic device. Upon detecting an occurrence of one or more pre-set events, the application disabling system may determine an output probability score for each of the one or more applications installed in the electronic device based on the monitored data and pre-analysed application usage pattern on the electronic device. Subsequently, based on the output probability score of each of the one or more applications, the application disabling system may determine the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled. In some embodiments, the predefined disablement policy for each of the one or more applications is selected from a plurality of predefined disablement policies. Finally, the application disabling system may disable each of the determined one or more applications by applying the corresponding predefined disablement policy.
In another embodiment, the present disclosure discloses a method and a system for performing application status-based power management for an electronic device. An application disabling system associated with the electronic device may monitor data pertaining to the device context, the user context and the user interactions with the electronic device. Thereafter, the application disabling system associated with the electronic device may detect a launch of one or more applications and one or more meta events associated with the launch of each of the one or more applications. Subsequently, application disabling system associated with the electronic device may detect exit of each of the one or more launched applications by the user. Based on detected exit of each of the one or more launched applications, the application disabling system associated with the electronic device may determine a likelihood of relaunch of each of the one or more launched applications exit by the user, by correlating a launch pattern and an exit pattern of each of the one or more launched applications. Thereafter, the application disabling system associated with the electronic device may disable each of the determined one or more applications based on the determination.
A description of an embodiment with several components in communication with each other does not imply that all such components are required. On the contrary, a variety of optional components are described to illustrate the wide variety of possible embodiments of the invention.
In the following detailed description of the embodiments of the disclosure, reference is made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments in which the disclosure may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the disclosure, and it is to be understood that other embodiments may be utilized and that changes may be made without departing from the scope of the present disclosure. The following description is, therefore, not to be taken in a limiting sense.
FIG.1 illustrates an exemplary architecture for performing context-based application disablement on an electronic device in accordance with some embodiments of the present disclosure.
The architecture 100 includes a user 102, an electronic device 104 and an application disabling system 106. In some embodiments, the electronic device 104 may be operated by the user 102. The electronic device 104 may be associated with the application disabling system 106. In some embodiments, the application disabling system 106 may be configured within the electronic device 104. In some embodiments, the electronic device 104 may include, but not limited to, a mobile phone, a laptop, a tablet, a desktop, a smartwatch, Augmented Reality (AR) devices, Mixed Reality (MR) devices, Virtual Reality (VR) devices, Extended Reality (XR) devices, ROBOTs, speakers, Internet of Things (IoT) device, a server, and the like. In some embodiments, the electronic device 104 may have a display screen. In some other embodiments, the electronic device 104 may be an audio-based device such as a speaker, voice assistants such as AlexaTM , Google HomeTM, and the like. In some embodiments, the application disabling system 106 may be associated with the electronic device 104 via a communication network. The communication network may be at least one of a wired communication network and a wireless communication network. In some embodiments, the application disabling system 106 may be a virtual assistant, a chatbot and the like, which interacts with the user 102. In some other embodiments, the application disabling system 106 may be associated with the virtual assistant or the chatbot which interacts with the user 102.
The application disabling system 106 may include a processor 108, an I/O interface 110 and a memory 112. The I/O interface 110 may be configured to detect interactions and occurrence of pre-set events, from the user 102 using the electronic device 104. In some embodiments, the processor 108 may monitor data comprising a device context, a user context and a user interactions with the electronic device and behaviour of one or more applications installed in the electronic device, based on the detected interaction and the pre-set events. In some other embodiments, the processor 108 may monitor data based on, but not limited to, device context, a user context, user interactions with the electronic device, behaviour of one or more applications installed in the electronic device, and a nudge received from the user 102, through the electronic device 104. As an example, a nudge may be a gesture made by the user 102 such as a tap, a wave, a double-tap, a pattern and the like, which may trigger the application disabling system 106. As an example, the data may include, but not limited to, a location of the user 102, user activity, date and time of the user interactions with the electronic device 104, application usage data, application data, application launch data, notification actions by the user, device usage data, status of the electronic device 104, data stored in the electronic device 104 with respect to the one or more applications, and data stored in devices communicatively connected to the electronic device 104. The data stored in the electronic device 104 with respect to the one or more applications may include information necessary for executing the application in the electronic device 104, such as information on a task that is performed at a specific time, and so on. The task information may include information for executing the data of the application, which is in progress (i.e., currently executing) at a specific time, in the electronic device 104, one or more activities of the one or more application, information indicating whether the application is executed in the background or idle state, and so on. Further, the processor 108 may determine a state of the electronic device 104 that satisfies a condition for disablement/termination of the application. For example, the state of the electronic device in relation to the disablement of the application may include the state of the remaining amount of a battery (for example, 5% or less of the total battery capacity), the temperature of the electronic device (for example, the surface temperature of a communication unit or a battery is more than 50° C.), and the applications in progress may be forced to disable depending on the various states of the electronic device 104.
In an embodiment, the processor 108 may determine explicit usage or implicit usage of the installed application in the electronic device 104. As an example, the explicit usage of the application includes usage of the application directly by user 102 and the implicit usage of the application includes usage of one application by another application of the electronic device 104. Also, the implicit usage of the application may include the usage of the application of the electronic device 104 by the devices communicatively connected to the electronic device 104. Further, the processor 108 may analyse an application usage pattern by the user 102 of the electronic device 104. The application usage pattern by the user 102 may be analysed by monitoring user interactions with the electronic device 104. The user interactions with the electronic device 104 may include a temporal input features and contextual input features based on application launch and transition between the applications by the user 102 in the electronic device 104. The temporal features include, but not limited to, sine of day of month, cosine of day of month, sine of day of week, cosine of day of week, and so on. In one embodiment the contextual input features include, but not limited to, airplane mode state of the electronic device 104, presence of widgets in the electronic device 104, reason for application launch such as user launched applications, launch of application by another application, interested notification/ notification preview, active widgets in the electronic device 104. In an embodiment, the data pertaining to the analysed application usage pattern by the user 102 of the electronic device 104 may be stored in the memory 112 associated with the electronic device 104. Further, the processor 108 may detect change in the device context or the user context and determine an output probability score for each of the one or more applications installed in the electronic device based on the pre-analysed application usage pattern on the electronic device 104. In an exemplary embodiment, the processor 108 may detect “change of date” in the electronic device 104 and determining likeliness of at least one of least usage or no usage of the one or more applications by the user 102 or the electronic device 104, based on the output probability score of each of the one or more applications. Based on the output probability score of each of the one or more applications, the processor 108 may disable each of the determined one or more applications by applying the corresponding predefined disablement policy. In an embodiment, the processor 108 may revise the disablement policy applied to one or more application in case the output probability score indicates likeliness of usage of the one or more applications by the electronic device 104 or the user 102. In another embodiment, the processor 108 may receive a feedback from the user via the I/O interface 110 based on the displayed disablement information on the electronic device 104. Based on at least one of the feedback of the user 102 and a current usage pattern of the user 102, the processor 108 may modify the data pertaining to pre-analysed application usage pattern of the user or the processor 108 may be further trained to determine the one or more applications to be disabled. The current usage pattern of the user 102 includes current temporal and contextual input features obtained in subsequent usage of the electronic device 104 by the user 102. In an exemplary embodiment, the data pertaining to the current usage pattern may be saved in the memory 112 with current data with the current device context. For example, the current device context can be, but not limited to, idle state, battery charging status, threshold on the battery level of the electronic device 104.
FIG. 2A illustrates a detailed block diagram of the application disabling system 106 for performing context-based application disablement on the electronic device 104 in accordance with some embodiments of the present disclosure.
In some implementations, the application disabling system 106 may include data 204 and modules 206. As an example, the data 204 is stored in the memory 112 configured in the application disabling system 106 as shown in the FIG. 2A. In one embodiment, the data 204 may include monitored data 208, contextual data 210, pre-set event data 212, output probability score 214, application usage pattern data 216, disablement policy data 218, and other data 220. In the illustrated FIG.2A, modules 206 are described herein in detail.
In an embodiment, the data 204 may be stored in the memory 112 in the form of various data structures. Additionally, the data 204 can be organized using data models, such as relational or hierarchical data models. The other data 220 may store data, including temporary data and temporary files, generated by the modules 206 for performing the various functions of the application disabling system 106.
In an embodiment, the data 204 stored in the memory 112 may be processed by the modules 206 of the application disabling system 106. The modules 206 may be stored within the memory 112. In an example, the modules 206 communicatively coupled to the processor 108 configured in the application disabling system 106, may also be present outside the memory 112 as shown in FIG.2A and implemented as hardware. As used herein, the term modules refer to an application-specific integrated circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and memory that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable components that provide the described functionality.
In an embodiment, the modules 206 may include, for example, a data monitoring module 222, a pre-set events detection module 224, an output probability score determination module 226, an application disablement determination module 228, an application disabling module 230, and other modules 232. The other modules 232 may be used to perform various miscellaneous functionalities of the application disabling system 106. It will be appreciated that such aforementioned modules 206 may be represented as a single module or a combination of different modules.
In an embodiment, the data monitoring module 222 may monitor data pertaining to a device context, a user context, user interactions with the electronic device 104 and behaviour of one or more applications installed in the electronic device 104. As an example, the electronic device 104 may include, but not limited to, a mobile phone, a laptop, a tablet, a desktop, a smartwatch, Augmented Reality (AR) devices, Mixed Reality (MR) devices, Virtual Reality (VR) devices, Extended Reality (XR) devices, ROBOTs , servers, speakers, and the like. In some embodiments, the electronic device 104 may be a voice assistant such as AlexaTM. Further, the monitored data 208 includes the data monitored pertaining to the device context, the user context, user interactions with the electronic device 104 and behaviour of one or more applications installed in the electronic device 104. The contextual data 210 includes data pertaining to the device context and the user context. As an example, the device context includes hardware parameters in the electronic device 104 such as the status condition of, for example, Central Processing Unit (CPU), Graphics Processing Unit (GPU), memory 112, battery level, connectivity status, connectivity strength, and so on. Further, as an example, the user context includes the location of the user 102 (it also means location of the electronic device 104), electronic device time, user activity such as walking, sitting, and so on. The user interactions with the electronic device 104 includes launching application in the electronic device 104, actions by the user 102 to the notification received in the electronic device 104, touch/nudge operations on the display screen of the electronic device 104. The behaviour of one or more applications installed in the electronic device 104 includes meta-information, intended operation associated with the electronic device 104, and so on.
Based on the monitored data, the pre-set events detection module 224 may detect an occurrence of one or more pre-set events in the electronic device 104. In an embodiment, the pre-set events or the pre-set event data 212 includes, but not limited to, a date, a battery charging status, application launch and exit, and so on. When the occurrence of the one or more pre-set events is detected, the output probability score 214 determination module 226 may determine the output probability score 214 for each of the one or more applications installed in the electronic device 104 based on the monitored data and pre-analysed application usage pattern on the electronic device 104. As an example, the output probability score can be for explicit usage of the application or implicit usage of the application against each application as depicted in FIG. 2B. For example, as depicted in FIG. 2B, consider the user 102 performs a search “Seattle” using search engine. The electronic device 104 may display slice of application along with the search results. The slice of application as depicted in FIG. 2B, for example, can be upcoming trip of the user 102 in Seattle which was implicitly used from an email application as depicted in FIG. 2B. The explicit usage of the application includes manually launching the application in the electronic device 104 by the user 102. Further, the implicit usage of the application includes application launch dependencies between and within the applications and dependent entities such as widgets, notification, as depicted in FIG. 2C metadata of the electronic device 104, and so on. FIG. 2C depicts widget handling and notification handling by the application disabling system 106. The applications with notification is being pushed and applications with active widgets are excluded from disabling. As an example, if the user 102 expands the notification, then the application disabling system 106 may determine that the user 102 is interest in particular application. The application usage pattern data 216 includes the pre-analysed application usage pattern. The output probability score may indicate likeliness of at least one of least usage or no usage of the one or more applications by the electronic device 104. As an example, the likeliness may be identified for applications that may not be launched in a long duration (such as days/weeks), by the user 102 or by other applications. Based on the output probability score of each of the one or more applications, the application disablement determination module 228 may determine the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled, from a plurality of predefined disablement policies. The disablement policy data 218 comprises plurality of predefined disablement policies. The one or more applications are determined to be disabled when the output probability score is greater than a predefined first threshold. Subsequently, the application disabling module 230 may disable each of the determined one or more applications as depicted in FIG. 2D, by applying the corresponding predefined disablement policy. As depicted in FIG. 2D initially no applications are disabled, then the application disabling system 106 may determine that app#5 and app#6 are not used for long time. Further, the application disabling system 106 may provide notification on the display screen of the electronic device 104 that the app#5 and app#6 will be disabled. Then the application disabling system 106 may disable app#5 and app#6. As an example, different levels of disablement of the application may be applied, such as freeze the application or disable the application or uninstall the application, based on identified likeliness of no usage of the one or more application to gain power benefits of the electronic device 104. Each of the plurality of predefined disablement policies indicates a level of disablement. The levels of disablement may relate to the presence of a memory footprint of an application in storage, presence of the application in an installed state in the electronic device 104, and presence of the application in a memory 112. Further, the disabled one or more applications are enabled when the output probability score of the corresponding disabled one or more applications is determined to be less than a predefined first threshold.
Further, based on determining the one or more applications to be disabled and the corresponding disablement policy for each of the one or more applications, the other module 232 may compare the output probability score of each of the one or more applications with a plurality of predefined range of thresholds to identify a match. Each of the plurality of predefined range of thresholds may be associated with a predefined disablement policy among the plurality of predefined disablement policies. Further, each of the plurality of the predefined range of thresholds is greater than a predefined first threshold. Further, if the likeliness of no usage of the one or more application decreases, then the one or more application may be unfrozen or enabled or re-installed and brought back to normal state (i.e. reduced or no restriction), so that the user experience may not be impacted. In an embodiment, the other module 232 may display disablement information, to the user 102, in a predefined user understandable format. The disablement information is data inferred from the output probability score of each of the one or more applications. The other module 232 may receive feedback from the user 102 based on the displayed disablement information. The other data 220 includes the disablement information. Further, the other module 232 may modify the pre-analysed application usage pattern of the user based on at least one of the feedbacks of the user and a current usage pattern of the user.
In another embodiment, the application disabling system 106 may perform application status-based power management for the electronic device 104. The data monitoring module 222 may monitor data pertaining to a device context, user context and user interactions with the electronic device 104. Further, the pre-set events detection module 224 may detect a launch of one or more applications and one or more meta information associated with the launch of each of the one or more applications. In one embodiment Meta information of a usage event can be type of usage (slice, widget, app-to-app transition) etc. Also, the pre-set events detection module 224 may detect exit of each of the one or more launched applications by the user 102. Based on detecting launch and exit of the one or more applications, the output probability score determination module 226 may determine a likelihood of relaunch of each of the one or more launched applications exit by the user 102, by correlating a launch pattern and an exit pattern of each of the one or more launched applications. Furthermore, the application disabling module 230 may disable each of the determined one or more applications based on the determination.
In some embodiments, the application disabling system 106 is a machine learning-based system that may be trained. Therefore, the application disabling system 106 selects the one or more first features, second features, third features and assign corresponding labels to each of the one or more first, second and third features based on the training. Further, based on the response of the user 102, feedback of the user 102 and the preferences of the user 102, the application disabling system 106 is continuously trained or continuously performs self-learning. For example, the features or data 204 may be processed such as application launch, contextual and system state, time features, application launch reason and stored in the memory 112 or a database (not shown in FIG. 2A). The features or data 204 is saved in the memory 112 once the application is launched. The application disabling system 106 may be trained and the stored features or data 204 may be updated. The trained application disabling system 106 may include a model that is trained with the updated features or data 204. The training of the application disabling system 106 may be invoked when a threshold number of unique application launches is performed by the user 102 or the electronic device 104. The application disabling system 106 or the model may be trained using a Multi Stochastic Gradient Descent (MSGDR) method. Based on the training, the application disabling system 106 may perform context-based application disablement on the electronic device 104. The application disabling system 106 for performing context-based application disablement may be updated when there is an occurrence of pre-set events such as date change event or battery status, and so on.
The present disclosure is explained below with the help of some exemplary scenarios. However, this should not be construed as a limitation of the present disclosure as the present disclosure may be applicable to other scenarios as well.
Exemplary scenario 1
In this scenario, consider the application disabling system 106 has to be trained with features and data 204. The input features or the package name of the input features are mentioned in the below Table 1.
Application launch Identity (ID) Feature to train
com.Socialmedia.katana 000000,1,0.81697,-0.57668,-0.263103,-0.964768,0,1,1,0
com.ab.abcd 000000,3,-0.942261,-0.33488,-0.507666,0.861554,1,0,1,1
Where the feature to train in Table 1 with range of ‘0’ denotes disable state, ‘1’ denotes application used and ‘-1’ denotes no faults. For example, the application disabling system 106 may disable the one or more application and receive user feedback or the user 102 may enable/re-install the disabled application, then this may be considered as faults of the application disabling system 106. Based on the fault data, the application disabling system 106 may retrain itself. In another example, consider, com.messengerapplication’ is a frequently used application, hence low output probability score may be provided for disabling the application. Further, ‘com.sec.os.- app.health’ may be the least used application, hence high output probability score may be provided for disabling the application. In another example, ‘com.abcdet.astrodaily’ is an application used in a pattern (i.e. monthly usage), learned behaviour can be observed in output probability score for disabling the application.
Further, the package name may be mapped with a unique Identity (ID) number as shown in the below Table 2.
Package Name Package ID
com.socialmedia.katana 1
com.e-commerce.avod.thirdpartyclient 2
com.ab.abcd 3
com.efghreads 4
com.facebook.orca 5
com.1234.os 6
com.brandname.os.123connect 7
com.sec.os.app.popupcalculator 8
The package ID is provided to the application disablement determination module 228 of the application disabling system 106 for taking the application disabling decision as shown in the below Table 3.
Package ID Can be disabled?
1 True
2 True
3 False
4 True
5 False
6 False
7 False
8 True
The application disabled state is managed by the application disabling module 230 of the application disabling system 106 when to disable or enable the one or more applications.
In an exemplary scenario, consider an event of user interaction with the electronic device 104 to launch one or more applications that are detected by the pre-set events detection module 224. The data monitoring module 222 may check for temporal input features, contextual input features, and device context and provide the features to the data monitoring module 222. Further, the data monitoring module 222 may be trained for determining the user context and performing positive training for increasing the output probability score of the machine learning model (i.e. the application disabling system 106) corresponding to each application in terms of disablement. The trained model or updated weight of the trained model is saved in the memory 112 of the application disabling system 106.
In another example, consider a pre-set event of “date change” that is detected by the pre-set events detection module 224. The data monitoring module 222 may determine if one or more applications are used today. If not, performing negative training for decreasing output probability score of machine learning model (i.e. the application disabling system 106) corresponding to each application in terms of disablement. The trained model or updated weight of the trained model is saved in the memory 112 of the application disabling system 106. Weights of this machine learning model are updated based on implicit and explicit usage of apps in a device.
In another example, consider the events of device context such as Bluetooth state, airplane mode state, location, headset state, mobile data state, and the like is detected by the pre-set event detection module 224. The data monitoring module 222 may check for temporal input features, contextual input features, and device context and provide the features to the data monitoring module 222. Further, the application disablement determination module 228 may determine the one or more applications to be disabled based on the output probability score. The application disabling module 230 may disable the one or more determined applications and manage the disabled one or more applications by enabling the one or more applications when the output probability score is determined to be more.
Exemplary scenario 2
As an example, based on the training the application disabling system 106, the application disabling system 106 may determine that the user 102 is interested or not interested in a particular application or widget or notification or slice, as depicted in below Table 4. As predicted in Table 4, if the user 102 launches application or launches the application through widget, notification, slice, then the user 102 is interested in particular application. If the user 102 does not launch the application, not interacting with the widget, or disable/clear particular notification or application is not launched through slice, then the user 102 is not interested in particular application.
Application type User interested User not interested
Application User 102 launches application, Based on metadata determine general tendency in application. User 102 has not launched one or more application
Widget User 102 interacts with widget (e.g. refresh the widget)User 102 launches the application from the widget User 102 is not refreshing the widget.User 102 is not interacting with the widget
Notification User 102 discarding the notification from the list of notifications (i.e. single notification)User 102 expanding single notification (i.e. click and open the application associated with the application) User 102 input to clear all notification (i.e. No interest in all notification)User 102 disable notification manually
Slice Application 'B' uses a slice of application 'A'. User 102 may or may not directly use the application 'A'. App 'B' uses a slice of application 'A', but the user 102 is not using application 'B'
The application which the user is interested in (i.e. direct launch by the user 102 at least once in a day) is determined to be positive training and the default output probability score could be ‘1’. Further, the application which the user is not interested in (i.e. used by other applications once in a day) is determined to be negative training and the default output probability score could be ‘0’. The trained model is saved in the memory 112 and the output probability score determination module 226 of the application disabling system 106 may output probability score for each of one or more applications. As an example, consider various scenarios of using one or more applications by the user 102 as depicted in Table 5, for training the application disabling system 106.
Application Widget Notification Slice Meta-data from Big data
Interest points Launch Presence on the home screen of the electronic device 104 Opening/expanding notificationSingle discard Slice of Application A is used by Application BThe user is interested in B or A. Banking/finance applicationsSOS/Emergency applicationsRegion-based popular applicationsCategories based important applications
Not interested points Not launch/short launch Not refresh/no launch Clear All notificationsDisable notifications completely Slice of Application A is used by Application B, User is not Interested in A and B. General Applications Falling in the criteria of not interested as defined in previous categories
Point of interest Interested Not interested Interested Interested Interested Interested
Point of view Positive Training Negative Training Positive Training Positive Training Positive Training Exempt these applications
The positive training of the application disabling system 106 may have an output probability score of ‘1’ and negative training of the application disabling system 106 may have an output probability score of ‘0’. Both the output probability scores are inputted in the below equation 1, for training the application disabling system 106.
Equation (1):
wt+1 = wt + γ*ΔF(xt)
wt - weight at time 't'
ΔF(xt) - loss at time 't'
γ - learning rate
The trained application disabling system 106 (i.e. model) may be used to determine the output probability score of one or more applications to perform disabling of one or more applications as in the below equation 2.
Equation (2):
Figure PCTKR2020003544-appb-I000001
yPredicted -output probability
wi - weight corresponding to feature 'i'
xi - value of feature 'i'
If, yPredicted is greater than λ, then the output probability score of one or more applications is determined as in below exemplary Table 6.
Application ID Probability score
0 0.65
1 0.00
2 0.10
3 1.00
... ...
99 0.20
100 0.95
Exemplary scenario 3
In an exemplary scenario, consider levels of disablement by the application disabling system 106 is dependent on the output probability score. The application can be allocated into different disablement levels. For example, consider ‘level 0’ to ‘level 2’, wherein ‘level 0’ is application being fully active, and ‘level 2’ the application being fully disabled by the application disabling system 106. The levels of disablement of the one or more applications is depicted in the below Table 7.
Level 2: Disable (deactivate application)
Level 1: Freeze (pause the application)
Level 0: Running (normal running of the application)
The app restrictions can be for example, such as restricts alarms, application tasks, foreground services of the application, and so on. Further, disabling the application comprises deactivating the application to remove the data related to the application in the memory 112 or the storage footprint. However, the application may not be uninstalled but the application may be in a state of completely disabled.
Exemplary scenario 4
The application disabling system 106 may disable one or more applications for saving the power of the electronic device 104. Consider, a power-saving analysis may be performed on the application disabling system 106 and the results are depicted in the below Table 8-9.
User Percentage Saving per day after 32days
Before using the application disabling system 106 After using the application disabling system 106
User 1 22.50 24.30
User 2 19.87 24.37
User 3 15.30 18.00
Average 19.22 22.22
Average Percentage improvement of battery life in 100 days
Before using the application disabling system 106 After using the application disabling system 106
19.22*68/100 = 13.06% (22.22*68+22.72*20)/100 = 19.6%
FIG. 3A is a flowchart depicting a method 300a of performing context-based application disablement on an electronic device 104, in accordance with some embodiments of the present disclosure.
As illustrated in FIG. 3A, the method 300a includes one or more blocks illustrating a method of performing context-based application disablement on an electronic device 104. The method 300a may be described in the general context of computer-executable instructions. Generally, computer-executable instructions can include routines, programs, objects, components, data structures, procedures, modules, and functions, which perform functions or implement abstract data types.
The order in which the method 300a is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 300a. Additionally, individual blocks may be deleted from the methods without departing from the spirit and scope of the subject matter described herein. Furthermore, the method 300a can be implemented in any suitable hardware, software, firmware, or combination thereof.
At block 302, the method 300a may include monitoring, by a processor 108 configured in an application disabling system 106, data pertaining to a device context, a user context, user interactions with the electronic device 104 and behaviour of one or more applications installed in the electronic device. 104
At block 304, the method 300a may include detecting, by the processor 108, an occurrence of one or more pre-set events in the electronic device based on the monitored data.
At block 306, the method 300a may include determining, by the processor 108, an output probability score for each of the one or more applications installed in the electronic device based on the monitored data and pre-analysed application usage pattern on the electronic device, when the occurrence of the one or more pre-set events is detected.
At block 308, the method 300a may include determining, by the processor 108, the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled, from a plurality of predefined disablement policies, based on the output probability score of each of the one or more applications.
At block 310, the method 300a may include disabling, by the processor 108 each of the determined one or more applications by applying the corresponding predefined disablement policy.
FIG. 3B is a flowchart depicting a method 300b of performing application status-based power management for an electronic device 104 in accordance with some embodiments of the present disclosure.
As illustrated in FIG. 3B, the method 300b includes one or more blocks illustrating a method of performing application status-based power management for an electronic device. The method 300b may be described in the general context of computer-executable instructions. Generally, computer-executable instructions can include routines, programs, objects, components, data structures, procedures, modules, and functions, which perform functions or implement abstract data types.
The order in which the method 300b is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 300b. Additionally, individual blocks may be deleted from the methods without departing from the spirit and scope of the subject matter described herein. Furthermore, the method 300b can be implemented in any suitable hardware, software, firmware, or combination thereof.
At block 312, the method 300b may include monitoring, by a processor 108 configured in an application disabling system 106, data pertaining to a device context, a user context and user interactions with the electronic device 104.
At block 314, the method 300b may include detecting, by the processor 108, a launch of one or more applications and one or more meta events associated with the launch of each of the one or more applications.
At block 316, the method 300b may include detecting, by the processor 108, exit of each of the one or more launched applications by the user.
At block 318, the method 300b may include determining, by the processor 108, a likelihood of relaunch of each of the one or more launched applications exit by the user, by correlating a launch pattern and an exit pattern of each of the one or more launched applications.
At block 320, the method 300b may include disabling, by the processor 108, each of the determined one or more applications based on the determination.
Embodiments herein enable the application disabling system to have complete access to the applications, stored data and dynamically generated data in the electronic device, which forms the trained model for disabling one or more applications.
Embodiments herein eliminate unnecessary power usage in the electronic device and reduces the load on the processor resulting in sustained performance of the electronic device.
Embodiments herein predict applications to be disabled within a few days of learning and enable the application back ahead of use of the application. Meta data-based application behaviour learning may provide a general tendency of usage of application.
Embodiments herein provide the ability to learn indirect usage of the app as a widget (for example, Weather), Notification and ability to learn by user feedback.
FIG.4 is a block diagram of an exemplary computer system 400 for implementing embodiments consistent with the present disclosure.
In some embodiments, FIG.4 illustrates a block diagram of an exemplary computer system 400 for implementing embodiments consistent with the present invention. In some embodiments, the computer system 400 can be an application disabling system 106 that is used for performing context-based application disablement on an electronic device. The computer system 400 may include a central processing unit (“CPU” or “processor”) 402. The processor 402 may include at least one data processor for executing program components for executing user or system-generated business processes. A user may include a person, a person using a device such as those included in this invention, or such a device itself. The processor 402 may include specialized processing units such as integrated system (bus) controllers, memory management control units, floating-point units, graphics processing units, digital signal processing units, etc.
The processor 402 may be disposed in communication with input devices 411 and output devices 412 via I/O interface 401. The I/O interface 401 may employ communication protocols/methods such as, without limitation, audio, analog, digital, stereo, IEEE-1394, serial bus, Universal Serial Bus (USB), infrared, PS/2, BNC, coaxial, component, composite, Digital Visual Interface (DVI), high-definition multimedia interface (HDMI), Radio Frequency (RF) antennas, S-Video, Video Graphics Array (VGA), IEEE 802.n /b/g/n/x, Bluetooth, cellular (e.g., Code-Division Multiple Access (CDMA), High-Speed Packet Access (HSPA+), Global System For Mobile Communications (GSM), Long-Term Evolution (LTE), WiMax, or the like), etc.
Using the I/O interface 401, computer system 400 may communicate with input devices 411 and output devices 412.
In some embodiments, the processor 402 may be disposed in communication with a communication network 409 via a network interface 403. The network interface 403 may communicate with the communication network 409. The network interface 403 may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10/100/1000 Base T), Transmission Control Protocol/Internet Protocol (TCP/IP), token ring, IEEE 802.11a/b/g/n/x, etc. Using the network interface 403 and the communication network 409, the computer system 400 may communicate with an electronic device 104. The electronic device 104 may include, but not limited to, a mobile phone, a laptop, a tablet, a desktop, a smartwatch, Augmented Reality (AR) devices, Mixed Reality (MR) devices, Virtual Reality (VR) devices, Extended Reality (XR) devices, ROBOTs, speakers, server, a voice assistant such as Alexa and the like. The communication network 409 can be implemented as one of the different types of networks, such as intranet or Local Area Network (LAN) and such within the organization. The communication network 409 may either be a dedicated network or a shared network, which represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), etc., to communicate with each other. Further, the communication network 409 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, etc. In some embodiments, the processor 402 may be disposed in communication with a memory 405 (e.g., RAM, ROM, etc. not shown in FIG.4) via a storage interface 404. The storage interface 404 may connect to memory 405 including, without limitation, memory drives, removable disc drives, etc., employing connection protocols such as Serial Advanced Technology Attachment (SATA), Integrated Drive Electronics (IDE), IEEE-1394, Universal Serial Bus (USB), fiber channel, Small Computer Systems Interface (SCSI), etc. The memory drives may further include a drum, magnetic disc drive, magneto-optical drive, optical drive, Redundant Array of Independent Discs (RAID), solid-state memory devices, solid-state drives, etc.
The memory 405 may store a collection of program or database components, including, without limitation, a user interface 406, an operating system 407, a web browser 408, etc. In some embodiments, the computer system 400 may store user/application data, such as the data, variables, records, etc. as described in this invention. Such databases may be implemented as fault-tolerant, relational, scalable, secure databases such as Oracle or Sybase.
Operating system 407 may facilitate resource management and operation of the computer system 400. Examples of operating systems include, without limitation, APPLE® MACINTOSH® OS X®, UNIX®, UNIX-like system distributions (E.G., BERKELEY SOFTWARE DISTRIBUTION® (BSD), FREEBSD®, NETBSD®, OPENBSD, etc.), LINUX® DISTRIBUTIONS (E.G., RED HAT®, UBUNTU®, KUBUNTU®, etc.), IBM®OS/2®, MICROSOFT® WINDOWS® (XP®, VISTA®/7/8, 10 etc.), APPLE® IOS®, GOOGLETM ANDROIDTM, BLACKBERRY® OS, or the like. User interface 406 may facilitate display, execution, interaction, manipulation, or operation of program components through textual or graphical facilities. For example, user interfaces may provide computer interaction interface elements on a display system operatively connected to computer system 400, such as cursors, icons, checkboxes, menus, scrollers, windows, widgets, etc. Graphical User Interfaces (GUIs) may be employed, including, without limitation, Apple® Macintosh® operating systems’ Aqua®, IBM® OS/2®, Microsoft® Windows® (e.g., Aero, Metro, etc.), web interface libraries (e.g., ActiveX®, Java®, Javascript®, AJAX, HTML, Adobe® Flash®, etc.), or the like.
Computer system 400 may implement a web browser 408 stored-program components. Web browser 408 may be a hypertext viewing application, such as MICROSOFT® INTERNET EXPLORER®, GOOGLETM CHROMETM, MOZILLA® FIREFOX®, APPLE® SAFARI®, etc. Secure web browsing may be provided using Secure Hypertext Transport Protocol (HTTPS), Secure Sockets Layer (SSL), Transport Layer Security (TLS), etc. Web browsers 408 may utilize facilities such as AJAX, DHTML, ADOBE® FLASH®, JAVASCRIPT®, JAVA®, Application Programming Interfaces (APIs), etc. Computer system 400 may implement a mail server stored program component. The mail server may be an Internet mail server such as Microsoft Exchange, or the like. The mail server may utilize facilities such as ASP, ACTIVEX®, ANSI® C++/C#, MICROSOFT®,. NET, CGI SCRIPTS, JAVA®, JAVASCRIPT®, PERL®, PHP, PYTHON®, WEBOBJECTS®, etc. The mail server may utilize communication protocols such as Internet Message Access Protocol (IMAP), Messaging Application Programming Interface (MAPI), MICROSOFT® exchange, Post Office Protocol (POP), Simple Mail Transfer Protocol (SMTP), or the like. In some embodiments, the computer system 400 may implement a mail client stored program component. The mail client may be a mail viewing application, such as APPLE® MAIL, MICROSOFT® ENTOURAGE®, MICROSOFT® OUTLOOK®, MOZILLA® THUNDERBIRD®, etc.
Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present invention. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., non-transitory. Examples include Random Access Memory (RAM), Read-Only Memory (ROM), volatile memory, non-volatile memory, hard drives, Compact Disc (CD) ROMs, Digital Video Disc (DVDs), flash drives, disks, and any other known physical storage media.
A description of an embodiment with several components in communication with each other does not imply that all such components are required. On the contrary, a variety of optional components are described to illustrate the wide variety of possible embodiments of the invention. When a single device or article is described herein, it will be apparent that more than one device/article (whether or not they cooperate) may be used in place of a single device/article. Similarly, where more than one device or article is described herein (whether or not they cooperate), it will be apparent that a single device/article may be used in place of the more than one device or article or a different number of devices/articles may be used instead of the shown number of devices or programs. The functionality and/or the features of a device may be alternatively embodied by one or more other devices which are not explicitly described as having such functionality/features. Thus, other embodiments of the invention need not include the device itself.
The specification has described a method and a system for performing context-based application disablement on an electronic device. The illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments. Also, the words "comprising," "having," "containing," and "including," and other similar forms are intended to be equivalent in meaning and be open-ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms “a,” “an,” and “the” include plural references unless the context clearly dictates otherwise.
Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the invention be limited not by this detailed description, but rather by any claims that issue on an application based here on. Accordingly, the embodiments of the present invention are intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.

Claims (15)

  1. A method of performing context-based application disablement on an electronic device, the method comprising:
    monitoring, by an application disabling system configured in an electronic device, data pertaining to a device context, a user context, user interactions with the electronic device and behaviour of one or more applications installed in the electronic device;
    detecting, by the application disabling system, an occurrence of one or more pre-set events in the electronic device based on the monitored data;
    determining, by the application disabling system , an output probability score for each of the one or more applications installed in the electronic device based on the monitored data and pre-analysed application usage pattern on the electronic device, when the occurrence of the one or more pre-set events is detected;
    determining, by the application disabling system, the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled, from a plurality of predefined disablement policies, based on the output probability score of each of the one or more applications; and
    disabling, by the application disabling system, each of the determined one or more applications by applying the corresponding predefined disablement policy.
  2. The method as claimed in claim 1, wherein the output probability score indicates likeliness of at least one of least usage or no usage of the one or more applications by the electronic device.
  3. The method as claimed in claim 1, wherein the one or more applications are determined to be disabled, when the output probability score is greater than a predefined first threshold.
  4. The method as claimed in claim 1, wherein determining the one or more applications to be disabled and the corresponding disablement policy for each of the one or more applications comprises:
    comparing the output probability score of each of the one or more applications with a plurality of predefined range of thresholds to identify a match, wherein each of the plurality of predefined range of thresholds is associated with a predefined disablement policy among the plurality of predefined disablement policies, wherein each of the plurality of predefined range of thresholds is greater than a predefined first threshold.
  5. The method as claimed in claim 1, wherein each of the plurality of predefined disablement policies indicate a level of disablement, wherein the levels of disablement relate to presence of a memory footprint of an application in storage, presence of the application in an installed state in the electronic device, and presence of the application in a memory.
  6. The method as claimed in claim 1, wherein the disabled one or more applications are enabled when the output probability score of the corresponding disabled one or more applications is determined to be less than a predefined first threshold.
  7. The method as claimed in claim 1 further comprises displaying, by the application disabling system, disablement information, to the user, in a predefined user understandable format, receiving, by the application disabling system, a feedback from the user based on the displayed disablement information; and modifying, by the application disabling system, a pre-analysed application usage pattern of the user based on at least one of the feedback of the user and a current usage pattern of the user, wherein the disablement information is data inferred from the output probability score of each of the one or more applications.
  8. An application disabling system for performing context-based application disablement on an electronic device, the application disabling system comprising:
    a processor; and
    a memory communicatively coupled to the processor, wherein the memory stores the processor instructions, which, on execution, causes the processor to:
    monitor data pertaining to a device context, a user context, user interactions with the electronic device and behaviour of one or more applications installed in the electronic device;
    detect an occurrence of one or more pre-set events in the electronic device based on the monitored data;
    determine an output probability score for each of the one or more applications installed in the electronic device based on the monitored data and pre-analysed application usage pattern on the electronic device, when the occurrence of the one or more pre-set events is detected;
    determine the one or more applications to be disabled and a corresponding predefined disablement policy for each of the one or more applications determined to be disabled, from a plurality of predefined disablement policies, based on the output probability score of each of the one or more applications; and
    disable each of the determined one or more applications by applying the corresponding predefined disablement policy.
  9. The application disabling system as claimed in claim 8, wherein the output probability score indicates likeliness of at least one of least usage or no usage of the one or more applications by the electronic device.
  10. The application disabling system as claimed in claim 8, wherein the one or more applications are determined to be disabled, when the output probability score is greater than a predefined first threshold.
  11. The application disabling system as claimed in claim 8, wherein to determine the one or more applications to be disabled and the corresponding disablement policy for each of the one or more applications, the processor is configured to:
    compare the output probability score of each of the one or more applications with a plurality of predefined range of thresholds to identify a match, wherein each of the plurality of predefined range of thresholds is associated with a predefined disablement policy among the plurality of predefined disablement policies, wherein each of the plurality of predefined range of thresholds is greater than a predefined first threshold.
  12. The application disabling system as claimed in claim 8, wherein each of the plurality of predefined disablement policies indicate a level of disablement.
  13. The application disabling system as claimed in claim 12, wherein the levels of disablement relate to presence of a memory footprint of an application in storage, presence of the application in an installed state in the electronic device, and presence of the application in a memory.
  14. The application disabling system as claimed in claim 8, wherein the processor enables the disabled one or more applications when the output probability score of the corresponding disabled one or more applications is determined to be less than a predefined first threshold.
  15. The application disabling system as claimed in claim 8, wherein the processor is further configured to display disablement information, to the user, in a predefined user understandable format, receive a feedback from the user based on the displayed disablement information; and modify a pre-analysed application usage pattern of the user based on at least one of the feedbacks of the user and a current usage pattern of the user, wherein the disablement information is data inferred from the output probability score of each of the one or more applications.
PCT/KR2020/003544 2019-03-15 2020-03-13 Method and system for performing context-based application disablement on electronic device WO2020189979A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN201941010102 2019-03-15
IN201941010102 2020-03-10

Publications (1)

Publication Number Publication Date
WO2020189979A1 true WO2020189979A1 (en) 2020-09-24

Family

ID=72521308

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/003544 WO2020189979A1 (en) 2019-03-15 2020-03-13 Method and system for performing context-based application disablement on electronic device

Country Status (1)

Country Link
WO (1) WO2020189979A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112256354A (en) * 2020-11-25 2021-01-22 Oppo(重庆)智能科技有限公司 Application starting method and device, storage medium and electronic equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150341484A1 (en) * 2014-05-26 2015-11-26 Kaspersky Lab Zao System and method controlling access to applications on a mobile device
US20160239069A1 (en) * 2015-02-13 2016-08-18 Samsung Electronics Co., Ltd. Method and apparatus for reducing power consumption based on use pattern of user
US20160253187A1 (en) * 2015-02-27 2016-09-01 Samsung Electronics Co., Ltd. Electronic device and application control method thereof
US20160357616A1 (en) * 2013-03-29 2016-12-08 Beijing Zhigu Rui Tuo Tech Co., Ltd Application management method and application management apparatus
US20180239637A1 (en) * 2017-02-22 2018-08-23 Microsoft Technology Licensing, Llc Contextual application organizer framework for user life events

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160357616A1 (en) * 2013-03-29 2016-12-08 Beijing Zhigu Rui Tuo Tech Co., Ltd Application management method and application management apparatus
US20150341484A1 (en) * 2014-05-26 2015-11-26 Kaspersky Lab Zao System and method controlling access to applications on a mobile device
US20160239069A1 (en) * 2015-02-13 2016-08-18 Samsung Electronics Co., Ltd. Method and apparatus for reducing power consumption based on use pattern of user
US20160253187A1 (en) * 2015-02-27 2016-09-01 Samsung Electronics Co., Ltd. Electronic device and application control method thereof
US20180239637A1 (en) * 2017-02-22 2018-08-23 Microsoft Technology Licensing, Llc Contextual application organizer framework for user life events

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112256354A (en) * 2020-11-25 2021-01-22 Oppo(重庆)智能科技有限公司 Application starting method and device, storage medium and electronic equipment
CN112256354B (en) * 2020-11-25 2023-05-16 Oppo(重庆)智能科技有限公司 Application starting method and device, storage medium and electronic equipment

Similar Documents

Publication Publication Date Title
EP3753017A1 (en) A voice assistant device and method thereof
US11113144B1 (en) Method and system for predicting and mitigating failures in VDI system
WO2019235858A1 (en) A voice assistant device and method thereof
WO2017142309A1 (en) Electronic device and method for controlling application and component
US10419375B1 (en) Systems and methods for analyzing emotional responses to online interactions
US10931674B2 (en) Detecting whether to implement one or more security measures on a shared resource
WO2021054809A1 (en) Method and system for generating dynamic user interface layout for an electronic device
US10140444B2 (en) Methods and systems for dynamically managing access to devices for resolution of an incident ticket
US10536380B2 (en) Method and system for intelligent link load balancing
US12167088B2 (en) Method and apparatus for providing video stream based on machine learning
US20180278497A1 (en) Systems for monitoring application servers
WO2022216137A1 (en) Method and system for monitoring application services in a network
WO2019024646A1 (en) Application management and control method, apparatus, and electronic device
CN111796997A (en) Log information processing method and device and electronic equipment
CN107450952B (en) Application control method and device, storage medium and electronic equipment
WO2024144273A1 (en) Resource state-based automatic traffic management system and device
WO2020189979A1 (en) Method and system for performing context-based application disablement on electronic device
CN114154958A (en) Information processing method, apparatus, electronic device and storage medium
WO2020171622A1 (en) A method and system for managing operations of applications on an electronic device
CN111897672A (en) Method, device, terminal and storage medium for handling terminal exception
CN113760503A (en) Task migration method, apparatus, electronic device, and computer-readable medium
EP4580121A1 (en) Service request processing method and apparatus, and electronic device and storage medium
US20180285589A1 (en) Methods and systems for providing secured access to big data
CN112241372A (en) Terminal test method, apparatus and electronic equipment
CN115828256A (en) Unauthorized and unauthorized logic vulnerability detection method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20773153

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20773153

Country of ref document: EP

Kind code of ref document: A1