Я немного новичок в использовании Glide
и мне нужно больше понимать предварительную загрузку. Некоторые из моих URL имеют токены доступа, которые будут периодически меняться. Я хотел бы кэшировать изображения на основе их базового URL без токенов. По этой причине я реализовал пользовательский GlideUrl
.
, взятый из https://github.com/bumptech/glide/issues/501#issuecomment -114177101
public class GlideUrlNoToken extends GlideUrl {
public GlideUrlNoToken(String url) {
super(url);
}
public GlideUrlNoToken(String url, Headers headers) {
super(url, headers);
}
public GlideUrlNoToken(URL url) {
super(url);
}
public GlideUrlNoToken(URL url, Headers headers) {
super(url, headers);
}
@Override
public String getCacheKey() {
String url = toStringUrl();
if (url.contains("?")) {
return url.substring(0, url.lastIndexOf("?"));
} else {
return url;
}
}
}
При предварительной загрузке изображений необходимо установить пользовательский ключ кеша для тех, кто? Я не смог найти примеры для этого.
Glide.with(context)
.load(yourUrl)
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
.preload();
Мне просто нужно убедиться, что предварительно загруженные изображения не попадают на диск с токенами, которые являются частью URL.