我想知道如何创建一个通知,这并不表明在状态栏的图标。
有一种方法来隐藏它?
我想知道如何创建一个通知,这并不表明在状态栏的图标。
有一种方法来隐藏它?
由于Android 4.1(API级别16),它可以指定一个通知的priority
。 如果设置标志PRIORITY_MIN
通知图标将不会在状态栏显示。
notification.priority = Notification.PRIORITY_MIN;
或者,如果你使用一个Notification.Builder
:
builder.setPriority(Notification.PRIORITY_MIN);
由于Android 8.0奥利奥(API等级26),你必须设置的importance
通知的的NotificationChannel
到IMPORTANCE_MIN
:
NotificationChannel channel =
new NotificationChannel(channelId, channelName, NotificationManager.IMPORTANCE_MIN);
notificationManager.createNotificationChannel(channel);
...
builder.setChannelId(channel.getId())
.setPriority
与参数PRIORITY_MIN
将使这一切成为可能。
NotificationCompat notification = new NotificationCompat.Builder(this)
.setContentTitle(getString(R.string.app_name))
.setContentText(getString(R.string.notification_text))
.setSmallIcon(R.mipmap.ic_launcher)
//Show the notification only in NotificationDrawer.
//Notification will not be shown on LockScreen as well as Hidden Icon on StatusBar.
.setPriority(Notification.PRIORITY_MIN)
.build();
您可以通过具有总透明图像做到这一点,并以此作为你的图标。 :)
有没有办法显示通知没有图标。
You can use transparent image. But, it take space of icon.
@CommonsWare:由于养通知的主要点是把一个图标在状态栏,通常没有必要不要把一个图标在状态栏上,除非它是互动的,比如跳转或信息通知会始终运行,你可能就拉下来想,但没有使用的图标。
检查这个答案更详细。