在Android中,从Firebase存储中下载的文件在哪里存储



我从项目控制台上将文件上传到firebase存储。现在,我使用方法'下载到本地文件'从应用程序下载了该文件,但是我无法在手机上找到下载的文件。p>有人可以告诉我该文件在哪里下载到?

    FirebaseStorage firebaseStorage = FirebaseStorage.getInstance();
    final StorageReference storageReference = firebaseStorage.getReferenceFromUrl("gs://ldq-app-d2e6b.appspot.com");
    button_down.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String fileName = new String(editText_file.getText().toString());
            StorageReference childReference = storageReference.child("Quizzes");
            StorageReference fileReference = storageReference.child("Quizzes/" + fileName + ".pdf");
            File localFile = null;
            try {
                localFile = File.createTempFile(fileName, "pdf");
            }
            catch (IOException ioe){
                Toast.makeText(getContext(), "File creation failed", Toast.LENGTH_SHORT).show();
            }
            fileReference.getFile(localFile).addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() {
                @Override
                public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) {
                    Toast.makeText(getContext(),"File downloaded",LENGTH_SHORT).show();
                }
            }).addOnFailureListener(new OnFailureListener() {
                @Override
                public void onFailure(@NonNull Exception e) {
                    Toast.makeText(getContext(),"Download failed. Try again!", LENGTH_SHORT).show();
                }
            });
            //Toast.makeText(getContext(),"Button working",LENGTH_SHORT).show();
        }
    });

根据firebase文档,他们正在创建一个临时文件,用于从URL保存图像。链接

File localFile = File.createTempFile("images", "jpg");

如果要将其存储在电话的内存或外部内存中,则只需使用存储路径创建一个文件,然后将其传递到 filedownloadtask

File storagePath = new File(Environment.getExternalStorageDirectory(), "directory_name");
// Create direcorty if not exists
if(!storagePath.exists()) {
    storagePath.mkdirs();
}
final File myFile = new File(storagePath,"file_name");
yourStorageRef.getFile(myFile).addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() {
@Override
public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) {
    // Local temp file has been created
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
    // Handle any errors
}
});

相关内容

  • 没有找到相关文章

最新更新