通过下载URL显示来自Firebase Cloud Firestore的图像

时间:2019-07-06 08:13:13

标签: android firebase google-cloud-firestore firebase-storage

我正在制作一个Android应用程序,其中有一些用户帐户,并且每个帐户都有关联。数据还具有与存储在Firebase Storage中的图像相关联的下载URL。

我知道如何从Firebase Cloud Firestore检索数据,因此我将在应用程序中检索下载URL的值 按行

FirebaseFirestore db = FirebaseFirestore.getInstance();
DocumentReference user = db.collection("School").document("Accouts").collection("students").document(name);

        user.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
            @Override
            public void onComplete(@NonNull Task<DocumentSnapshot> task) {
                if (task.isSuccessful()) {
                    DocumentSnapshot doc = task.getResult();
                    String img_url = (String) doc.get("image");
                }
            }
        });

但是我不知道如何加载该图像并在ImageView中显示

我想不使用外部库就这样做

数据库是

enter image description here

3 个答案:

答案 0 :(得分:1)

我正在使用Glide。 https://github.com/bumptech/glide

ImageView imageView = findViewById(R.id.image_view);

Glide.with(getApplicationContext())
     .load(img_url)
     .into(imageView);

答案 1 :(得分:1)

您可以使用Glide加载图像。

  

Glide是适用于Android的快速有效的开源媒体管理和图像加载框架,它将媒体解码,内存和磁盘缓存以及资源池包装到一个简单易用的界面中。

使用方法:

ImageView imageView = (ImageView) findViewById(R.id.your_image_view);

Glide.with(this)
.load("your URL goes here")
.into(imageView);

答案 2 :(得分:1)

您可以使用毕加索

加载图像

向您的 app / build.gradle

添加依赖项
implementation 'com.squareup.picasso:picasso:2.71828'

然后您可以像下面那样加载图像

Picasso.get().load(yourImageUrl).into(imageView);

有关更多信息,请检查Piccasso