监听android程序被管理器干掉,应用程序从android中的最新应用程序中被杀死时的回调侦听器...

让我直截了当地谈谈我的问题.

在完全销毁应用程序之前,我必须将一些数据保存到本地数据库.

我有以下服务的onTaskRemoved()方法的问题:

每次从最近的应用程序屏幕停止应用程序(以及服务)时,都不会触发onTaskRemoved()方法.

>即使每次调用onTaskRemoved(),该方法也不会完全执行.我的意思是如果方法中有20个语句,则只执行5或10个语句,之后方法会中断.就像我有20个System.out.println()语句,而不仅仅是5或10或12(任意随机数)语句打印和方法中断之后.

所以我可以依靠onTaskRemoved()方法来清理应用程序获取的资源.

这是我的应用程序发布的阻塞问题.我尝试了每一招.就像在堆栈中至少有一个活动(我称之为GhostActivity)一样,如果应用程序从最近的应用程序屏幕中被杀死,我们可以在onDestroyed()方法中清理活动.调用了onDestroyed(),但它与onTaskRemoved()方法完全相同.

我几周以来一直坚持这个问题而且非常讨厌.如果有人有任何解决方案,请告诉我.

解决方法:

我终于自己弄明白了.我使用了服务和报警管理器的组合.每次我想处理强制关闭场景时,我都会启动一个运行无限循环的服务.这个循环每隔15秒就会迭代一次.在循环中,我设置了一个距离当前时间20秒的警报.现在,如果循环的下一次迭代发生,则更新警报并在新的当前时间之后重置为20秒.这样,只有当用户没有通过调用stopService()方法销毁服务时,才会触发警报.

public class MyIntentService extends IntentService {

public MyIntentService() {

super("My IntentService");

}

private boolean stopped =

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值