在 android 通知中显示带滑行的 GIF
Show GIF with glide in android notification
我一直在尝试使用 Glide 库在自定义通知中显示 .gif 图像。我只能在通知面板显示静态图片
RemoteViews collapsedView = new RemoteViews(getPackageName(), R.layout.notification_collapsed);
RemoteViews expandedView = new RemoteViews(getPackageName(), R.layout.notification_expanded);
collapsedView.setTextViewText(R.id.text_view_collapsed_1,"Hello World!");
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this, CHANNEL_ID)
.setSmallIcon(R.drawable.ic_launcher_background)
.setStyle(new NotificationCompat.DecoratedCustomViewStyle())
.setCustomContentView(collapsedView)
.setCustomBigContentView(expandedView);
final Notification notification = mBuilder.build();
notificationManager.notify(NOTIFICATION_ID,notification);
notificationTarget = new NotificationTarget(
getApplicationContext(),
R.id.image_view_expanded,
expandedView,
notification,
NOTIFICATION_ID
);
Glide.with(MainActivity.this)
.asBitmap()
.load(R.drawable.giphy)
.into(notificationTarget);
可绘制对象是一个 .gif 文件。当通知弹出时,它会显示静态图像,因为我正在使用 .asBitmap()。我尝试使用
Glide.with(MainActivity.this)
.asGif()
.load(R.drawable.giphy)
.into(notificationTarget);
但我收到一个错误 "Cannot resolve method 'into(NotificationTarget)'"。
我四处寻找解决方案,但找不到。
那么如何在 android 的通知面板中显示带有滑动的 GIF 文件?可能吗?
Android 不支持通知中的 GIF 和视频,因为通知是使用 RemoteViews
和 RemoteViews
doesn't support GIF or Videos 构建的。
此外,Glide 维护者也回答了类似的问题here。我引用的是答案。
It doesn't look like RemoteViews supports setting a Drawable?
https://developer.android.com/reference/android/widget/RemoteViews.html.
If there's a way to set an animated drawable in a notification in
general, you can probably find a way to do it with a custom Target in
Glide.
确实如此。 @Somesh Kumar 回答了你的问题。
你不能像他说的那样在你的通知中添加 GIF 或视频
事实上,我必须问你:你有没有在你的 phone 上看到任何正在播放视频或 GIF 的通知?
通知不适用于播放视频或 GIF,因为这会带来一些问题,例如更高的电池消耗。通知应该简单易懂。
我一直在尝试使用 Glide 库在自定义通知中显示 .gif 图像。我只能在通知面板显示静态图片
RemoteViews collapsedView = new RemoteViews(getPackageName(), R.layout.notification_collapsed);
RemoteViews expandedView = new RemoteViews(getPackageName(), R.layout.notification_expanded);
collapsedView.setTextViewText(R.id.text_view_collapsed_1,"Hello World!");
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this, CHANNEL_ID)
.setSmallIcon(R.drawable.ic_launcher_background)
.setStyle(new NotificationCompat.DecoratedCustomViewStyle())
.setCustomContentView(collapsedView)
.setCustomBigContentView(expandedView);
final Notification notification = mBuilder.build();
notificationManager.notify(NOTIFICATION_ID,notification);
notificationTarget = new NotificationTarget(
getApplicationContext(),
R.id.image_view_expanded,
expandedView,
notification,
NOTIFICATION_ID
);
Glide.with(MainActivity.this)
.asBitmap()
.load(R.drawable.giphy)
.into(notificationTarget);
可绘制对象是一个 .gif 文件。当通知弹出时,它会显示静态图像,因为我正在使用 .asBitmap()。我尝试使用
Glide.with(MainActivity.this)
.asGif()
.load(R.drawable.giphy)
.into(notificationTarget);
但我收到一个错误 "Cannot resolve method 'into(NotificationTarget)'"。 我四处寻找解决方案,但找不到。 那么如何在 android 的通知面板中显示带有滑动的 GIF 文件?可能吗?
Android 不支持通知中的 GIF 和视频,因为通知是使用 RemoteViews
和 RemoteViews
doesn't support GIF or Videos 构建的。
此外,Glide 维护者也回答了类似的问题here。我引用的是答案。
It doesn't look like RemoteViews supports setting a Drawable? https://developer.android.com/reference/android/widget/RemoteViews.html.
If there's a way to set an animated drawable in a notification in general, you can probably find a way to do it with a custom Target in Glide.
确实如此。 @Somesh Kumar 回答了你的问题。
你不能像他说的那样在你的通知中添加 GIF 或视频
事实上,我必须问你:你有没有在你的 phone 上看到任何正在播放视频或 GIF 的通知?
通知不适用于播放视频或 GIF,因为这会带来一些问题,例如更高的电池消耗。通知应该简单易懂。