Невозможно сохранить образ хранилища Firebase в папке - PullRequest
0 голосов
/ 10 июня 2018

Мой код:

  String path= Environment.getExternalStorageDirectory()+File.separator+"Cloud_data"+File.separator+"Images";
                file= new File(path);
                if(!file.isDirectory())
                {


                    file.mkdirs();
                }

 storageReference2.getFile(file)
                        .addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() {
                            @Override
                            public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) {
                                Toast.makeText(DownloadFiles.this, "path"+file, Toast.LENGTH_LONG).show();
                                text1.setText(String.valueOf(file)+"."+taskSnapshot.getStorage());
                                Toast.makeText(DownloadFiles.this, "File Downloaded Successfully", Toast.LENGTH_SHORT).show();
                            }
                        })

.addOnProgressListener(new OnProgressListener<FileDownloadTask.TaskSnapshot>() {
                    @Override
                    public void onProgress(FileDownloadTask.TaskSnapshot taskSnapshot) {
                        double progress=(100.0*taskSnapshot.getBytesTransferred()/taskSnapshot.getTotalByteCount());
                        Toast.makeText(DownloadFiles.this, "Progress: "+(int)progress+"%", Toast.LENGTH_SHORT).show();

                    }
                });

Я создал папку Cloud_data / image, но изображение не сохраняется в этой папке.Как я могу решить мою проблему?

Ответы [ 2 ]

0 голосов
/ 10 июня 2018

File file - это каталог, поэтому вы не можете использовать его в .getFile(file), так как тогда file должен указывать на файл.

Лучше попробовать .getFile(new File(file, "myfile.jpg"));.

0 голосов
/ 10 июня 2018

Путь к изображению, который вы использовали, можно использовать так, как вы написали бы ниже.

FireabaseStorage firebaseStorage     = FirebaseStorage.getInstance();
StorageReference storageReference    = firebaseStorage.getReference();
storageReference.child("Cloud_data/"+
            RandomImageName);
    storageReference  .putFile(filePath)
            .addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
                @Override
                public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) 
                {
                  Toast.makeText(DownloadFiles.this, "path"+file, Toast.LENGTH_LONG).show();
                            text1.setText(String.valueOf(file)+"."+taskSnapshot.getStorage());
                  Toast.makeText(DownloadFiles.this, "File Downloaded Successfully", Toast.LENGTH_SHORT).show()  

                }

            })
            .addOnFailureListener(new OnFailureListener() {
                @Override
                public void onFailure(@NonNull Exception e) {
                    Toast.makeText(DownloadFiles.this, "Error", Toast.LENGTH_SHORT).show();
                }
            })
            .addOnProgressListener(new OnProgressListener<UploadTask.TaskSnapshot>() {
                @Override
                public void onProgress(UploadTask.TaskSnapshot taskSnapshot) 
                {
                double progress=(100.0*taskSnapshot.getBytesTransferred()/taskSnapshot.getTotalByteCount());
                Toast.makeText(DownloadFiles.this, "Progress: "+(int)progress+"%", Toast.LENGTH_SHORT).show();
                }
            });   

Надеюсь, я помог.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...