我正在我的应用中运行导出图像的线程。该过程需要写入OutputStream。
当我的应用程序使用后退按钮突然关闭时,该文件将保留0字节。 有没有办法在退出应用程序时关闭OutputStream文件?
我尝试了以下代码但该文件未被删除。我的猜测是该文件正在写入,并且无法自行删除。
public void onDestroy() {
if (export){ // this boolean tells me if the thread is running
file.delete();
}
super.onDestroy();
}
答案 0 :(得分:0)
当您点击后退按钮时,Android不会调用onDestroy(),而是调用 onPause()和 onStop() 尝试将代码放在这些方法中
答案 1 :(得分:0)
使用onPause()
:
@Override
protected void onPause() {
if (export){ // this boolean tells me if the thread is running
file.delete();
}
super.onPause();
}
当活动破坏时, onDestroy
会打电话,而不是在你回去的时候!