java - 无法从 Android 中的 Firebase 存储获取下载网址

标签 java android firebase firebase-storage

无法从 Android 中的 Firebase Storge 获取下载网址。我得到:

com.google.android.gms.tasks.zzn@

而不是 url 下载链接。我的代码:

storageReference.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
            public void onSuccess(Uri uri) {
                uri1=uri;
                downloadURL =uri.toString();
                            // Got the download URL for 'users/me/profile.png'
            }
            }).addOnFailureListener(new OnFailureListener() {
                @Override
                             public void onFailure(@NonNull Exception exception) {
                                 // Handle any errors
                             }
             });

 if(uri1==null&&downloadURL==null){
                 Toast.makeText(MainActivity.this, "error", Toast.LENGTH_SHORT).show();
             }else if(uri1==null){
                Toast.makeText(MainActivity.this, ""+downloadURL, Toast.LENGTH_SHORT).show();
             }else if(downloadURL==null) {
                            Toast.makeText(MainActivity.this, "" + uri1, Toast.LENGTH_SHORT).show();
             }

谢谢你

最佳答案

为了获取 url,您需要附加一个监听器。因此,要解决这个问题,请使用以下代码:

ref.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
    @Override
    public void onSuccess(Uri uri) {
        String uri = uri.toString();
        Log.d("TAG", uri);
}).addOnFailureListener(new OnFailureListener() {
    @Override
    public void onFailure(@NonNull Exception exception) {
        // Handle Errors
    }
});

关于java - 无法从 Android 中的 Firebase 存储获取下载网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50795091/

相关文章:

android - 我应该使用什么版本的 firebase 和谷歌地图?

firebase - 如果旧数据在 2019 年 10 月之后不可用,那么链接到 Google Analytics 中的 Firebase 项目有什么优势?

Java - 事件中的事件?

java - Maven 子模块不存在

android - 源集 Android Studio

java - 在sqlite中移动一行(位置列)

firebase - Nuxt 2.5.0 + Firebase - 未找到依赖项

java - ClassCastException $Proxy 无法转换为使用 aop

Java 8 可选 : reference self in "orElse" function

android - Intent.ACTION_VIEW - 多个文件