一种应用程序冻结方法、装置及电子设备与流程

文档序号:34635281发布日期:2023-06-29 15:39阅读:78来源:国知局
一种应用程序冻结方法、装置及电子设备与流程

本技术实施例涉及电子,尤其涉及一种应用程序冻结方法、装置及电子设备。


背景技术:

1、电子设备上的应用程序间会频繁被调起和唤醒,例如,一个应用程序会在后台监听另一个三方应用程序把自己唤醒,这就会导致应用程序在后台频繁的活跃。为了防止应用程序在后台频繁的活跃。现有冻结应用程序的方法通常采用以下方式:

2、方式一,在收到广播消息时,将一部分广播消息缓存起来,累计的多了就会导致内存膨胀。另一部分未缓存的广播消息直接唤醒应用,会导致应用活跃。

3、方式二,采用原生的批处理(batch)机制,对电子设备的系统中所存在的alarm按照类型和触发时间进行统一的处理和触发。虽然,此种方式对应用的alarm进行了统一的管控,但是,仍然会存应用程序在后台被唤醒的情况,尤其是一些自身非必要活跃度比较高的应用,及与用户交互比较多的应用。

4、方式三,不加思考的对于binder消息进行过滤拦截。但是,这种拦截方式可能会导致binder消息相关的应用程序被电子设备的系统服务认定为异常状态,导致系统服务对其进行重启。另外,错误过滤binder消息,会影响用户正常的使用应用。现有是将异步消息缓存起来,导致内存膨胀,在内存空间被用完后会导致无法进行binder通信。这样,同步binder直接唤醒,导致应用活跃。

5、可见,现有的冻结应用程序的方案仍会导致后台应用程序被唤醒。


技术实现思路

1、本技术实施例提供一种应用程序冻结方法、装置及电子设备,使得应用在后台不会频繁活跃,保障功耗的同时,也能极大的减少隐形内存交换量。

2、为达到上述目的,本技术实施例采用如下技术方案:

3、第一方面,本技术实施例提供了一种应用程序冻结方法,应用于电子设备,该方法可以包括:电子设备确定电子设备的第一应用处于用户不感知状态和/或不使用状态。电子设备采用预设方式阻止第一应用被唤醒,其中,预设方式包括如下三种方式中的至少一种:拦截第一应用接收到第一消息,第一消息包括指定广播。对第一应用的指定注册信息进行处理,指定注册信息包括alarm信息或广播注册信息。阻止电子设备或第二应用调用第一应用,第二应用为调用方,第一应用为被调用方。这样,电子设备采用预设方式阻止第一应用被唤醒,使得第一应用在后台不会频繁活跃,防止应用在后台滥用活跃,保障功耗的同时,也能极大的减少隐形内存交换量。

4、在一种具体可实施方式中,电子设备通过拦截第一应用接收第一消息,来阻止第一应用被唤醒,具体可以为:电子设备接收用于分发指定广播的第一通知。电子设备根据第一通知和预先存储的广播注册信息,确定将指定广播分发给第一应用。在对指定广播进行分发时,电子设备拦截指定广播分发给第一应用。这样,可以使得第一应用在后台不会因为接收指定广播而频繁活跃,保障功耗的同时,也能极大的减少隐形内存交换量。

5、在一种具体可实施方式中,指定注册信息包括广播注册信息,电子设备对第一应用的指定注册信息进行处理,来阻止第一应用被唤醒,具体可以为:电子设备接收用于分发指定广播的第一通知。电子设备根据第一通知和预先存储的广播注册信息,将第一应用的广播注册信息存放在无效列表中,来阻止第一应用被唤醒。这样,可以使得第一应用在后台不会因为接收指定广播而频繁活跃,保障功耗的同时,也能极大的减少隐形内存交换量。

6、在一种具体可实施方式中,指定注册信息包括alarm信息,电子设备对第一应用的指定注册信息进行处理,来阻止第一应用被唤醒,具体可以为:电子设备将第一应用的alarm信息进行无限延期处理;或者,电子设备根据预先存储的注册信息,将第一应用的alarm信息存放在无效列表中。这样,可以使得第一应用在后台不会被alarm唤醒。

7、在一种具体可实施方式中,电子设备通过阻止第二应用调用第一应用,来阻止第一应用被唤醒,具体可以为:在第二应用通过binder调用第一应用的过程中,电子设备将第一应用的死亡信息传给第二应用,第二应用不是前台应用或系统应用,死亡信息为用于表征第一应用处于不响应状态的信息。这样,可以使得第一应用在后台不会频繁活跃。

8、在一种具体可实施方式中,死亡信息包括调用失败信息或调用应用失败所产生的错误码。

9、在一种具体可实施方式中,电子设备通过阻止电子设备调用第一应用,来阻止第一应用被唤醒,具体可以为:在电子设备的系统调用第一应用时,电子设备阻止电子设备的系统对第一应用进行重启和超时处理。

10、在一种具体可实施方式中,电子设备确定第一应用处于用户不感知状态和/或不使用状态,具体可以为:在第一应用满足第一条件时,电子设备确定第一应用处于用户不感知状态和/或不使用状态。

11、在一种具体可实施方式中,第一条件包括以下一项或多项:在后台运行、一段时间没使用、不占用声道、对用户不可见、未在使用gps、未下载数据。

12、在一些可实施方式中,所述方法还可以包括:在电子设备确定电子设备的第一应用处于用户感知状态和/或使用状态时,电子设备唤醒第一应用。

13、第二方面,本技术实施例提供了一种应用程序冻结装置,应用于电子设备,该装置可以包括:第一确定单元,用于确定电子设备的第一应用处于用户不感知状态和/或不使用状态。阻止单元,用于采用预设方式阻止第一应用被唤醒,其中,预设方式包括如下三种方式中的至少一种:拦截第一应用接收到第一消息,第一消息包括指定广播。对第一应用的指定注册信息进行处理,指定注册信息包括alarm信息或广播注册信息。阻止电子设备或第二应用调用第一应用,第二应用为调用方,第一应用为被调用方。这样,电子设备采用预设方式阻止第一应用被唤醒,使得第一应用在后台不会频繁活跃,防止应用在后台滥用活跃,保障功耗的同时,也能极大的减少隐形内存交换量。

14、在一种具体可实施方式中,所述阻止单元还用于:接收用于分发指定广播的第一通知。电子设备根据第一通知和预先存储的广播注册信息,确定将指定广播分发给第一应用。在对指定广播进行分发时,拦截指定广播分发给第一应用。这样,可以使得第一应用在后台不会因为接收指定广播而频繁活跃,保障功耗的同时,也能极大的减少隐形内存交换量。

15、在一种具体可实施方式中,指定注册信息包括广播注册信息,所述阻止单元还用于:接收用于分发指定广播的第一通知。根据第一通知和预先存储的广播注册信息,将第一应用的广播注册信息存放在无效列表中,来阻止第一应用被唤醒。这样,可以使得第一应用在后台不会因为接收指定广播而频繁活跃,保障功耗的同时,也能极大的减少隐形内存交换量。

16、在一种具体可实施方式中,指定注册信息包括alarm信息,所述阻止单元还用于:将第一应用的alarm信息进行无限延期处理;或者,根据预先存储的注册信息,将第一应用的alarm信息存放在无效列表中。这样,可以使得第一应用在后台不会被alarm唤醒。

17、在一种具体可实施方式中,所述阻止单元还用于:在第二应用通过binder调用第一应用的过程中,将第一应用的死亡信息传给第二应用,第二应用不是前台应用或系统应用,死亡信息为用于表征第一应用处于不响应状态的信息。这样,可以使得第一应用在后台不会频繁活跃。

18、在一种具体可实施方式中,死亡信息包括调用失败信息或调用应用失败所产生的错误码。

19、在一种具体可实施方式中,所述阻止单元还用于:在电子设备的系统调用第一应用时,阻止电子设备的系统对第一应用进行重启和超时处理。

20、在一种具体可实施方式中,所述第一确定单元还用于:在第一应用满足第一条件时,确定第一应用处于用户不感知状态和/或不使用状态。

21、在一种具体可实施方式中,第一条件包括以下一项或多项:在后台运行、一段时间没使用、不占用声道、对用户不可见、未在使用gps、未下载数据。

22、在一些可实施方式中,所述方法还可以包括:唤醒单元,用于在确定电子设备的第一应用处于用户感知状态和/或使用状态时,唤醒第一应用。

23、第三方面,本技术实施例提供了一种电子设备,其特征在于,包括:一个或多个处理器;以及存储器,所述存储器中存储有代码;当所述代码被所述一个或多个处理器执行时,使得所述电子设备执行如第一方面所述的方法。

24、第四方面,本技术实施例提供了一种芯片系统,该芯片系统应用于电子设备,该芯片系统包括一个或多个接口电路和一个或多个处理器;接口电路和处理器通过线路互联;接口电路用于从电子设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令;当处理器执行计算机指令时,执行如第一方面所述的方法。

25、第五方面,本技术实施例提供了一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如第一方面所述的方法。

26、第六方面,本技术实施例提供了一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如第一方面所述的方法。

27、其中,上述第二方面至第六方面中各个实施例的具体实施方式及对应的技术效果可以参见上述第一方面的具体实施方式及技术效果。

28、在本技术实施例中,电子设备确定电子设备的第一应用处于用户不感知状态和/或不使用状态。电子设备采用预设方式阻止第一应用被唤醒,其中,预设方式包括如下三种方式中的至少一种:拦截第一应用接收到第一消息,第一消息包括指定广播。对第一应用的指定注册信息进行处理,指定注册信息包括alarm信息或广播注册信息。阻止电子设备或第二应用调用第一应用,第二应用为调用方,第一应用为被调用方。这样,电子设备采用预设方式阻止第一应用被唤醒,使得第一应用在后台不会频繁活跃,防止应用在后台滥用活跃,保障功耗的同时,也能极大的减少隐形内存交换量。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1