如何使用Fresco下载和显示Firebase存储映像

山姆

这是我可以从Firebase存储下载图像或任何文件的方法

// Create a storage reference from our app
StorageReference storageRef = storage.getReferenceFromUrl("gs://<your-bucket-name>");

// Create a reference with an initial file path and name
StorageReference pathReference = storageRef.child("images/stars.jpg");

    File localFile = File.createTempFile("images", "jpg");

    storageRef.getFile(localFile).addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() {
        @Override
        public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) {
            // Local temp file has been created
        }
    }).addOnFailureListener(new OnFailureListener() {
        @Override
        public void onFailure(@NonNull Exception exception) {
            // Handle any errors
        }
    }); 

这就是我如何使用壁画显示任何图像的方法

GenericDraweeHierarchyBuilder builder =
                new GenericDraweeHierarchyBuilder(context.getResources());
        GenericDraweeHierarchy hierarchy = builder
                .setFadeDuration(100)
                .build();

        hierarchy.setActualImageScaleType(ScalingUtils.ScaleType.FOCUS_CROP);
        hierarchy.setActualImageFocusPoint(new PointF(0.5f,0f));

        Uri uri = Uri.parse(<imageUrl>);
        viewHolder.ivImage.setImageURI(uri);
        viewHolder.ivImage.setHierarchy(hierarchy);
        viewHolder.ivImage.setAspectRatio(1.15f);

所以我想要一个下载URL或uri,我可以将其设置为Fresco uri,名称为name。

我的问题是如何从Firebase Storage获取图像URL?

山姆

这是我们如何从Firebase存储中获取下载URL的方法。

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

现在从中创建uri并使用Fresco进行显示。

GenericDraweeHierarchyBuilder builder =
                new GenericDraweeHierarchyBuilder(context.getResources());
        GenericDraweeHierarchy hierarchy = builder
                .setFadeDuration(100)
                .build();

        hierarchy.setActualImageScaleType(ScalingUtils.ScaleType.FOCUS_CROP);
        hierarchy.setActualImageFocusPoint(new PointF(0.5f,0f));

        Uri uri = Uri.parse(<downloadUrl>);
        viewHolder.ivImage.setImageURI(uri);
        viewHolder.ivImage.setHierarchy(hierarchy);
        viewHolder.ivImage.setAspectRatio(1.15f);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用Java和Jersey存储已下载的文件?

如何不使用pull命令下载Docker映像?

在RecyclerView中显示Firebase存储映像

如何将Firebase存储映像与Google Cloud Vision API一起使用?

使用Glide&FireBase android存储和显示图像

如何使用Firebase托管来托管映像?

如何使用Firebase和RecyclerView管理多次下载

对于在下载映像期间将Firebase存储作为后端的请求,Jmeter测试失败

使用uri将映像存储到Firebase存储中

如何在发布模式下检索Firebase存储映像?

如何限制从Firebase存储下载的次数?

如何缓存Firebase存储下载的图像

如何将Firebase存储映像正确下载到RecycelrView

如何显示存储映像Laravel 5.2

如何从Firebase存储中下载图像以显示在collectionViewCell的Imageview(Swift)内部

如何从Firebase存储下载文件

使用JS在HTML中显示正确的Firebase存储映像

Firebase存储映像未显示

如何下载Firebase存储文件

Flutter从路径显示Firebase存储映像

Firebase存储映像显示问题

如何使用Windows.Web.Http下载和存储图像?

如何从新的Firebase存储下载和查看图像?

如何在 Android Studio 中使用从 IDM 下载的系统映像?

如何使用 v-bind 显示来自 firebase 存储的图像?

使用 VueJs 在 firebase 中上传和下载存储图像

IONIC - 如何显示来自 firebase 存储的图像而无需下载

firebase存储如何显示图像

如何在 firebase 存储中上传 PDF 文件并生成下载 URL 并使用 Flutter 保存 firebase?