Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在设备上弹出所有异步任务主页按钮单击_Android_Progressdialog_Android Asynctask - Fatal编程技术网

Android 如何在设备上弹出所有异步任务主页按钮单击

Android 如何在设备上弹出所有异步任务主页按钮单击,android,progressdialog,android-asynctask,Android,Progressdialog,Android Asynctask,我想停止设备主页按钮上的所有异步任务,但问题是当进度对话框运行时,在主页按钮上只单击进度对话框,它会转到onKeyDown()方法,在这里我提到了终止异步任务的逻辑。因此,即使在应用程序关闭并且我的应用程序崩溃之后,异步任务也会在后台运行。是否有任何解决方案可以关闭“进度”对话框以及“主页”按钮上的所有异步任务单击在java中,我们无法停止已启动并正在运行的线程。AsyncTask 但您可以尝试调用asyncTask.cancel(),其工作原理类似于thread.interrupt()。它可能

我想停止设备主页按钮上的所有异步任务,但问题是当进度对话框运行时,在主页按钮上只单击进度对话框,它会转到onKeyDown()方法,在这里我提到了终止异步任务的逻辑。因此,即使在应用程序关闭并且我的应用程序崩溃之后,异步任务也会在后台运行。是否有任何解决方案可以关闭“进度”对话框以及“主页”按钮上的所有异步任务单击在java中,我们无法停止已启动并正在运行的
线程。
AsyncTask


但您可以尝试调用
asyncTask.cancel()
,其工作原理类似于
thread.interrupt()
。它可能抛出一个
中断异常
。如果后面有更多的代码,这些代码也会执行,所以请注意。

您不能直接截获对home按钮的调用。尽管当按下home按钮时,Pause()将被调用,因此您可以重写该方法并将逻辑放在那里


查看更多信息

事实上,问题是当进度对话框正在运行时,我按下home按钮,onKeyDown()不会捕获按键,它只是关闭进度对话框,因此是否有任何方法覆盖进度对话框。