Проблема с загрузкой файла из моего приложения в Firebase - PullRequest
0 голосов
/ 21 декабря 2018

Привет, у меня проблема с загрузкой файла в Firebase из моего приложения. Я следую за помощником Firebase в Android Studio, чтобы создать его, но он не работает, и он выводит мне текст из функции сбоя.Также в Logcat напечатано это:

Произошла неизвестная ошибка, проверьте код результата HTTP и внутреннее исключение для ответа сервера.Код: -13000 HttpResult: 0 2018-12-20 23: 07: 23.680 30476-30564 / com.example.johny.test E / StorageException: / storage / emulated / 0 (является каталогом) java.io.FileNotFoundException: /storage / emulated / 0 (является каталогом)

для строки riversRef.putFile(files) снизу код

Спасибо за ваше время

upload.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View view){

                try {
                    File file=new File(Environment.getExternalStorageDirectory().getAbsolutePath(),FILE_NAME);
                    nameoffile=FILE_NAME;
                    FileOutputStream fos=new FileOutputStream (file);
                    DataOutputStream dout = new DataOutputStream(fos);
                    //dout.writeInt(SignalData.size()); // Save line count
                    for(int i=0;i<SignalData.size();i++){
                        dout.writeChars(SignalData.get(i));
                    }
                    dout.close(); // ... and close.
                    //Toast.makeText(getActivity(),"File Successful Created",Toast.LENGTH_LONG).show();
                } catch (IOException exc) {
                    exc.printStackTrace();
                    Toast.makeText(getActivity(),"File NOT Created",Toast.LENGTH_LONG).show();
                }


                Uri files = Uri.fromFile(new File(Environment.getExternalStorageDirectory().getAbsolutePath()));
                StorageReference riversRef = mStorageRef.child(nameoffile);

                riversRef.putFile(files)
                        .addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
                            @Override
                            public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
                                // Get a URL to the uploaded content
                                Toast.makeText(getActivity(),"File Upload Successfully",Toast.LENGTH_LONG).show();
                            }
                        })
                        .addOnFailureListener(new OnFailureListener() {
                            @Override
                            public void onFailure(@NonNull Exception exception) {
                                // Handle unsuccessful uploads
                                // ...
                                Toast.makeText(getActivity(),"File Didn't Upload",Toast.LENGTH_LONG).show();
                            }
                        });
                }
            }
        );
    }

1 Ответ

0 голосов
/ 21 декабря 2018

E / StorageException: / storage / emulated / 0 (является каталогом) java.io.FileNotFoundException: / storage / emulated / 0 (является каталогом)

Как говорится в сообщении об ошибке, вы ссылаетесь на каталог здесь, а не на файл

Uri files = Uri.fromFile(new File(Environment.getExternalStorageDirectory().getAbsolutePath()));

проверьте путь, откуда вы пытаетесь найти файл, и измените его.

Из документации Firebase Storage вы можете найти там примеры того, как найти ваш файл.

Вы также можете указать, где находится ваш файл

Uri file = Uri.fromFile(new File("path/to/images/rivers.jpg"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...