我正在尝试从firebase
存储中下载文件。如果设备上没有足够的空间,我应该在哪里处理异常?
以下是我的代码:
if (isExternalStorageWritable()) {
File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), file.getFileName());
StorageReference ref = ((Jink) (context.getApplicationContext())).getFileStorageRef(file.getFileName());
ref.getFile(file).addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() {
@Override
public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) {
// downloaded successfully
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
// download fail
}
});
} else {
//could not write to external storage
Toast.makeText(context, context.getString(R.string.resume_download_fail), Toast.LENGTH_SHORT).show();
}
答案 0 :(得分:1)
大概写入磁盘会失败,这意味着我们会通过OnFailureListener
使用通用ERROR_UNKNOWN
(每the docs)来捕获并通过文件系统错误将其表示出来嵌入在错误消息中。