Finally, I did not find a way to this, so I made a strategy Glide.into(new SimpleTarget<Bitmap>(){ ... });that:
int largeIconSize = Math.round(64 * context.getResources().getDisplayMetrics().density);
GlideApp.with(context)
.asBitmap()
.load(largeIconUrl)
.override(largeIconSize, largeIconSize)
.placeholder(placeHolderResource)
.into(new BaseTarget<Bitmap>() {
@Override
public void onResourceReady(Bitmap resource, Transition<? super Bitmap> transition) {
notificationBuilder.setLargeIcon(resource);
publish();
}
@Override
public void getSize(SizeReadyCallback cb) {
cb.onSizeReady(largeIconSize, largeIconSize);
}
@Override
public void onLoadFailed(@Nullable Drawable errorDrawable) {
super.onLoadFailed(errorDrawable);
notificationBuilder.setLargeIcon(((BitmapDrawable) errorDrawable).getBitmap());
publish();
}
@Override
public void onLoadStarted(@Nullable Drawable placeholder) {
super.onLoadStarted(placeholder);
notificationBuilder.setLargeIcon(((BitmapDrawable) placeholder).getBitmap());
publish();
}
});
and publish():
Notification notification = notificationBuilder.build();
notificationManager.notify(notificationID, notification);
source
share