Android 安卓在应用程序转到后台后一分钟内自动关闭第二个活动
假设我的android应用程序有两个活动A和B。活动A启动活动B A->B。当显示活动B时,用户按下主页按钮,应用程序进入后台。现在我希望活动B在后台自动关闭,因为它显示了一些秘密信息,比如说,在用户按下Home按钮后的一分钟内。实现这一点的最佳方式是什么 我试着使用活动B上的Handler和postDelayed来完成,但似乎有时候它不起作用,当应用程序从后台恢复时,活动B仍然没有完成 我的代码是:Android 安卓在应用程序转到后台后一分钟内自动关闭第二个活动,android,android-activity,Android,Android Activity,假设我的android应用程序有两个活动A和B。活动A启动活动B A->B。当显示活动B时,用户按下主页按钮,应用程序进入后台。现在我希望活动B在后台自动关闭,因为它显示了一些秘密信息,比如说,在用户按下Home按钮后的一分钟内。实现这一点的最佳方式是什么 我试着使用活动B上的Handler和postDelayed来完成,但似乎有时候它不起作用,当应用程序从后台恢复时,活动B仍然没有完成 我的代码是: @Override protected void onStop() { super.o
@Override
protected void onStop() {
super.onStop();
mLockHandler = new Handler();
mLockRunnable = new Runnable() {
@Override
public void run() {
finish();
}
};
mLockHandler.postDelayed(mLockRunnable, 60 * 1000);
}
当Android没有足够的资源时,它能够自己完成活动。 如果发生这种情况,我想处理程序也不可用。如果您非常想处理您的活动完成,您需要创建一些类,这些类将在活动生命周期中以单例形式存在。这不会让android从内存中删除它。 尽管你会有另外两个问题: 如果处于错误状态,您的单身汉将无法完成活动。 将活动置于singleton将导致内存泄漏。 总之,试图改变活动生命周期是个坏主意。也许某个服务类会在后台解决您的任务