Как получить URL Thumbnail после завершения изменения размера изображений в Firebase - PullRequest
2 голосов
/ 05 октября 2019

Недавно появившееся расширение Firebase 'Image resize' создает миниатюру после загрузки изображения в корзину хранения.

Как получить URL-адрес загрузки изображения этой миниатюры после завершения расширения?

final StorageReference storageRef =
        FirebaseStorage.instance.ref().child(fileName);

    final StorageUploadTask uploadTask = storageRef.putFile(
      File(path),
    );

    final StorageTaskSnapshot downloadUrl = (await uploadTask.onComplete);

    final String url = (await downloadUrl.ref.getDownloadURL()); //This will give me the download url of file before resize

// ??How do I the download url of resized image that gets stored in fileName/thumbnails folder

1 Ответ

0 голосов
/ 05 октября 2019

Когда вы загружаете файл изображения в указанный Cloud Storage bucket, это расширение:

  1. Создает изображение с измененным размером с указанными вами размерами.
  2. Сохраняет изображение с измененным размером в том же самомОбласть хранения как исходное загруженное изображение.
  3. Называет изображение с измененным размером, используя то же имя, что и исходное загруженное изображение, но с добавлением указанных вами ширины и высоты.

Например, еслиВы указываете здесь путь больших пальцев и загружаете изображение в / images / original.jpg , затем измененное изображение сохраняется в / images / thumbs / original_200x200.jpg

Так что URL вашего файла будет -

 String name = url.substring(url.lastIndexOf("/")+1,url.indexOf("."));
 String urlStr = "thumbnails/"+name+"_"+width+"x"+height+url.substring(url.indexOf("."),url.length());
 storageRef.child(url.replace(name,urlStr)).getDownloadUrl()
     .addOnSuccessListener(new OnSuccessListener<Uri>() {
        @Override
        public void onSuccess(Uri uri) {
           // Got the download URL for 'users/me/profile.png'
     }})  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...