如何在NotificationCompat.Builder.setLargeIcon()中加载Glide缓存的图像?

时间:2018-02-24 21:46:19

标签: android push-notification android-glide android-notification-bar

Like this image 我正在尝试将通知大图标设置为用户个人资料缩略图 喜欢whatsapp或其他聊天应用

我试过了

 Glide.with(context)
            .asBitmap()
            .load(messageNotification.getLargeIcon())
            .into(new SimpleTarget<Bitmap>() {
                @Override
                public void onResourceReady(Bitmap resource, Transition<? super Bitmap> transition) {
                   builder.setLargeIcon(resource);

                }
            });

但它不起作用.. 任何帮助?

1 个答案:

答案 0 :(得分:3)

如果使用滑动设置大图标,则还应通知NotificationManager onResourceReady(resource, transition)

.into(new SimpleTarget<Bitmap>() {
    @Override
    public void onResourceReady(Bitmap res, Transition<? super Bitmap> t) {
       builder.setLargeIcon(res);
       yourNotificationManager.notify(id, builder.build());

    }
});
  

这是因为glide使用后台线程来加载image..so,然后将图片加载到构建器中... 通知管理器已经通知(mainthread)没有大图像的建设者..