有什么方法可以使通知始终可见,直到用户与之交互?

问题描述 投票:0回答:3

Android Heads-up通知会显示几秒钟,然后从主屏幕上消失,并停留在状态栏和通知抽屉中。在用户进行交互之前,有什么方法可以显示通知在主屏幕上弹出吗?

java android notifications
3个回答
0
投票

您需要为其创建新的活动,该活动将在收到通知时打开。在收到通知后,您需要将数据中的有效负载设置为密钥对值,因为否则它将由Android OS处理。

这将帮助-Android Activity as a dialog

How to handle notification when app in background in Firebase


0
投票

[如果您不介意将通知变成小吃店,则可以显示一个直到用户与之交互后才消失的通知:

public void showSnakbarIndef(final View rootView, String message, String actionMessage) {
        Snackbar.make(rootView, message, Snackbar.LENGTH_INDEFINITE)
                .setAction(actionMessage, new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        //exit or other action according to notification
                    }
                })
                .show();
    }

0
投票

像这样使用setOngoing(true)中的setAutoCancel(true)Notification.Builder

notification = new Notification.Builder(getApplicationContext())
          .setLargeIcon(BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher))
          .setSmallIcon(R.drawable.ic_launcher)
          .setOngoing(true)
          .setAutoCancel(true)
          .setContentText(contentText)
          .setContentIntent(contentIntent)
© www.soinside.com 2019 - 2024. All rights reserved.