Firebase Storage «извлекает долгоживущий URL-адрес для загрузки», используя getDownloadUrl (), теперь не рекомендуется - PullRequest
0 голосов
/ 03 мая 2018

Этот getDownloadUrl() метод показал, что устарел после обновления до

com.google.firebase: firebase-хранения: 15.0.2 '

На официальном сайте нет ничего, что могло бы помочь вам получить URL-адрес, так есть ли способ получить URL-адрес без устали?

/** @deprecated */
@Deprecated
@Nullable
public Uri getDownloadUrl() {
    StorageMetadata var1;
    return (var1 = this.getMetadata()) != null ? var1.getDownloadUrl() : null;
    }
}

Ответы [ 2 ]

0 голосов
/ 27 июля 2018
  final StorageReference filePath = mImageStore.child("profile_images").child("full_image").child(userId + ".jpg");
                filePath.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
                    @Override
                    public void onSuccess(Uri uri) {
                        //Bitmap hochladen
                        uploadBitMap(uri.toString());
                    }
                });strong text

Или

final UploadTask uploadTask = thumb_file.putBytes(thumb_bite);
        uploadTask.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
            @Override
            public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {

                //Url laden
                taskSnapshot.getStorage().getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
                    @Override
                    public void onSuccess(Uri uri) {
                        Map imageUrls = new HashMap();
                        imageUrls.put("image", fullImageUrl);
                        imageUrls.put("thumb_image", uri.toString());
                        //In database
                        mAlarmsDatabaseReference.updateChildren(imageUrls).addOnCompleteListener(new OnCompleteListener<Void>() {
                            @Override
                            public void onComplete(@NonNull Task<Void> task) {
                                //Progressbar beende + Bild wieder anzeigen
                                progressBar.setVisibility(View.GONE);
                                circleProfilePicture.setVisibility(View.VISIBLE);

                                if(task.isSuccessful()){
                                    Toast.makeText(SettingsActivity.this, getResources().getString(R.string.ProfilbildUpdate), Toast.LENGTH_SHORT).show();
                                }else{
                                    Toast.makeText(SettingsActivity.this, "FAILED", Toast.LENGTH_SHORT).show();
                                }
                            }
                        });
                    }
                });
            }
        });
0 голосов
/ 03 мая 2018

В документах сказано:

Методы getDownloadUrl() и getDownloadUrls() класса StorageMetadata устарели. Вместо этого используйте getDownloadUrl() из StorageReference.

Так что вам нужно использовать getDownloadUrl(), который находится внутри StorageReference

public Task<Uri> getDownloadUrl ()

Асинхронно извлекает долгоживущий URL-адрес загрузки с отзывным токеном. Это может быть использовано, чтобы поделиться файлом с другими, но может быть отозвано разработчиком в консоли Firebase, если это необходимо.

больше информации здесь:

https://firebase.google.com/docs/reference/android/com/google/firebase/storage/StorageReference#getDownloadUrl()

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