簡體   English   中英

如何在狀態欄中顯示通知文本?

[英]How to show Notification text in status bar?

我想在狀態欄中顯示通知文本,如下圖所示:

在此處輸入圖片說明

但相反,我得到以下信息:

在此處輸入圖片說明

因此,如您所見,我無法在狀態欄中顯示文本,只能顯示圖標。 我的代碼如下所示:

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);

我該如何糾正?

這完全取決於運行應用程序的 Android 版本。 如果是 Lollipop (5.0) 或更高版本,則不會,文本不會出現在狀態欄中。 從文檔(我的粗體):

總結此無障礙服務通知的文本。 從 L 版本開始,此文本不再顯示在屏幕上,但它對無障礙服務仍然有用(它作為通知出現的聲音公告)。

所以它仍然值得擁有,因為它會被任何在手機上使用文本到語音輔助功能服務的人讀出。 它只是不會以您在問題中期望的方式工作。

或者,如果您希望您的通知短暫顯示為提醒通知,您可以將通知的優先級設置為PRIORITY_HIGH (最高 API 26):

Notification notification = new Notification.Builder(this)
    ...
    .setPriority(Notification.PRIORITY_HIGH)
    .build();

如果這不起作用,您可能還需要使用NotificationCompat.Builder而不是Notification.Builder

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM