如何使用Glide从具有图像路径的远程存储中加载图像?

时间:2019-09-02 18:23:48

标签: android glide

我正在尝试从远程服务器使用Glide加载图像。我使用node.js做了简单的后端,从远程数据库中获取数据。在一个经过翻新的api调用中,我获得了列表json对象,其中包括每个对象的imagePath,例如:“

“ / upload / 2019 / folder1 / example.jpg”。

到目前为止,我尝试用Glide加载图像。将远程服务器的IP地址和此路径传递给加载方法。

我不确定这是否完全可能,但是如果您有任何建议,请回复。预先感谢。

val imagePathUrl = GlideUrl("http://212.200.***.***$imagePath").toStringUrl()
GlideApp.with(context)
.load(GlideUrl(imagePathUrl, auth))
.skipMemoryCache(true)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.dontAnimate()
.error(R.drawable.image_not_found)
.into(holder.thumbnail)

1 个答案:

答案 0 :(得分:0)

在应用程序build.gradle中添加

implementation 'com.github.bumptech.glide:glide:4.9.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'

然后添加一个util方法

public void setImageUrl(String imageUrl, @NonNull Drawable drawable) {
    if (imageUrl == null)
       return;
    GlideApp.with(getContext())
        .load(imageUrl)
        .placeholder(drawable)
        .error(drawable)
        .fallback(drawable)
        .into(this);
}

然后按如下使用

    binding.ivRounded.setImageUrl("imageUrl", getResources().getDrawable(R.drawable.placeholder_image));