如何处理android活动中的延迟

如何处理android活动中的延迟,android,performance,android-activity,android-context,Android,Performance,Android Activity,Android Context,我陷入困境,希望有人能给我一个解决方案。我正在使用 new Handler().postDelayed(new Runnable() { @Override public void run() { }}); 方法延迟某些任务,使其工作正常。但是在延迟完成之前,如果我回击了它的崩溃,因为任务需要完成,它需要的是已经关闭的活动的上下文。有人能帮我解决这个问题吗 谢谢您必须

我陷入困境,希望有人能给我一个解决方案。我正在使用

new Handler().postDelayed(new Runnable() {
                                @Override
                                public void run() {
}});
方法延迟某些任务,使其工作正常。但是在延迟完成之前,如果我回击了它的崩溃,因为任务需要完成,它需要的是已经关闭的活动的上下文。有人能帮我解决这个问题吗


谢谢

您必须添加back-pressed事件,此时您已停止所有进程,所以崩溃问题消失了


如果您仍然感到困惑,请添加代码,以便我可以帮助您。

保存对Runnable的引用并使用HandlerremoveCallbacks。。。在您的生命周期方法之一中,可能是onPause。如果任务需要超过活动的寿命,请将其移动到服务。

在返回之前,可以通过以下代码从处理程序中删除回调:

myHandler.removeCallbacks(yourRunnableInstance); // it will remove particular this Runnable

myHandler.removeCallbacksAndMessages(null); // it will remove all Runnable from the handler
您可以在onPause方法中执行此代码