Android 通知未显示为消息

Android notification is not showing as a message

它自己的通知工作正常,但不是我想要的。它会振动并显示已定义但未作为 Watsapp 通知的图标,在 setCategory 我放了 CATEGORY_MESSAGE 但仍然没有!

在我的应用程序上 class 我输入:

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.O){
        NotificationChannel channel = new NotificationChannel(CHANNEL_ID,CHANNEL_NAME,NotificationManager.IMPORTANCE_HIGH);
        channel.setDescription(CHANNEL_DESC);
        channel.setLockscreenVisibility(Notification.VISIBILITY_PUBLIC);
        NotificationManager manager = getSystemService(NotificationManager.class);
        assert manager != null;
        manager.createNotificationChannel(channel);
    }

片段:

private void T(String message){
    NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(getApplicationContext(),CHANNEL_ID)
            .setContentText(message)
            .setContentTitle("Test")
            .setColor(0xff123456)
            .setSmallIcon(R.drawable.com_facebook_button_icon)
            .setCategory(CATEGORY_MESSAGE)
            .setPriority(PRIORITY_HIGH);
    NotificationManagerCompat compat = NotificationManagerCompat.from(getApplicationContext());
    compat.notify(1,mBuilder.build());

}

这是我希望它通知的方式:

这是当前通知的方式

我使用的是 SDK 27

在聊天中与 OP 讨论后,这是我对可能发生的事情的最佳解释:

通知渠道只能创建一次,之后它对应用程序来说是不可变的。它只能由用户通过设置进行调整。如果有人首先按照官方文档中的示例进行操作,他们可能会使用 IMPORTANCE_DEFAULT 创建频道。在此之后,即使他们稍后更改代码,频道仍将保持在 'High: Make Sound' 级别,而不是根据需要设置为 'Urgent: Make Sound and pop on screen'。 Docs on importance level


问题中的代码完全没问题,第一次安装时应该创建一个 'Urgent' 级别的频道。在任何情况下,手动卸载应用程序然后再次安装将重新创建频道,将级别设置为最新代码中提到的任何级别。