2016-12-05 5 views
1

Я пытался загрузить изображения в Firebase хранения, используя следующий код:Android изображения Firebase загрузить

FirebaseStorage firebaseStorage = FirebaseStorage.getInstance(); 
    final StorageReference storageRef = firebaseStorage.getReferenceFromUrl("gs://xxx"); 

    Uri file = Uri.fromFile(new File(url)); 
    mStorageRef = storageRef.child("images/"+file.getLastPathSegment()); 
    UploadTask uploadTask = storageRef.putFile(file); 
    uploadTask.addOnFailureListener(new OnFailureListener() { 
     @Override 
     public void onFailure(@NonNull Exception exception) { 
      // Handle unsuccessful uploads 
      Log.i(TAG, exception.toString()); 
     } 
    }).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() { 
     @Override 
     public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) { 
      // taskSnapshot.getMetadata() contains file metadata such as size, content-type, and download URL. 
      Uri downloadUrl = taskSnapshot.getDownloadUrl(); 
     } 
    }); 

Однако я встречаю ошибку ниже: E/StorageException: StorageException has occurred. An unknown error occurred, please check the HTTP result code and inner exception for server response. Code: -13000 HttpResult: 400 E/StorageException: The server has terminated the upload session java.io.IOException: The server has terminated the upload session at com.google.firebase.storage.UploadTask.zzabc(Unknown Source) at com.google.firebase.storage.UploadTask.zzabb(Unknown Source) at com.google.firebase.storage.UploadTask.run(Unknown Source) at com.google.firebase.storage.StorageTask$8.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) at java.lang.Thread.run(Thread.java:818)

я нашел некоторые люди предлагают обновление Google играть на моем телефоне. У моего телефона уже установлена ​​последняя версия. Я также попытался включить анонимный вход и сделать правила общедоступными.

Есть ли другие предложения?

ответ

0

Я такой идиот ...

Должен UploadTask uploadTask = mStorageRef.putFile(file);

Вместо UploadTask uploadTask = storageRef.putFile(file);

+1

Рад слышать, что вы нашли его. Btw: Обычно я называю ссылки на папки после папки/файла (например, 'picturesReference' или' imageReference'), чтобы уменьшить вероятность этого. –

Смежные вопросы