我使用以下代码创建一些临时文件,并将tem包装为inputteam以发送到客户端.
据我所知,当磁盘空间不足时,android系统可以自动删除临时文件.
但我希望当我退出应用程序时,我可以自己删除临时文件,我该怎么办?谢谢!
码
File outputDir = context.getCacheDir(); // context being the Activity pointer
File outputFile = File.createTempFile("prefix", "extension", outputDir);
Run Code Online (Sandbox Code Playgroud)
打电话给deleteOnExit()方法!
要么
delete()在onStop()你的活动中调用方法.
编辑:
如果你叫这可能是更好delete()的onDestroy(),以确保您的代码的工作,即使应用程序是由系统破坏.
删除文件onDestroy,如果isChangingConfigurations()是false或者isFinishing是true.例:
@Override protected void onDestroy() {
super.onDestroy();
if(!isChangingConfigurations()) {
deleteTempFiles(getCacheDir());
}
}
private boolean deleteTempFiles(File file) {
if (file.isDirectory()) {
File[] files = file.listFiles();
if (files != null) {
for (File f : files) {
if (f.isDirectory()) {
deleteTempFiles(f);
} else {
f.delete();
}
}
}
}
return file.delete();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8784 次 |
| 最近记录: |