我想在状态栏中显示通知的文字,如下图所示:
但我得到以下内容:
因此,正如您所看到的,我无法在状态栏中显示文字,只显示图标。我的代码如下所示:
Notification notification = new Notification.Builder(this)
.setSmallIcon(R.drawable.icon)
.setContentTitle("My app")
.setTicker("Alex: hey, want to grab lunch?")
.setWhen(System.currentTimeMillis())
.setContentText("Alex: hey, want to grab lunch?")
.setPriority(Notification.PRIORITY_MAX)
.build();
NotificationManager notificationManager =
(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(0, notification);
我该如何纠正?
答案 0 :(得分:1)
这完全取决于运行该应用的Android版本。如果它是棒棒糖(5.0)或更高,那么不,文本将不会出现在状态栏中。 From the documentation(我的大胆):
总结此无障碍服务通知的文本。 从L版本开始,此文本不再显示在屏幕上,但它对于辅助功能服务仍然有用(其中它用作通知外观的声音通知)。
所以它仍然值得拥有,因为它将被读出给在手机上使用文本到语音可访问性服务的任何人。它只是不会像你期望的那样在你的问题中发挥作用。
或者,如果您希望将通知简要显示为heads-up notification,则可以将通知的优先级设置为PRIORITY_HIGH
(最高为API 26):
Notification notification = new Notification.Builder(this)
...
.setPriority(Notification.PRIORITY_HIGH)
.build();
如果这不起作用,您可能还需要使用NotificationCompat.Builder
而不是Notification.Builder
。