我试图让我的通知在用户按下“全部清除”时不被取消。到目前为止,我的意图是在除此以外的所有内容上正常工作:

        Intent intent = new Intent(getBaseContext(), MainActivity.class);
    intent.addFlags(Notification.FLAG_ONGOING_EVENT);
    intent.addFlags(Notification.FLAG_NO_CLEAR);
    PendingIntent contentIntent = PendingIntent.getActivity(
            getBaseContext(), 0, intent, 0);


我现在的问题是:我的标志正确吗?

最佳答案

是的,您的标志看起来非常正确,尽管我不知道您是否甚至需要FLAG_NO_CLEAR。我目前有一个可创建正在进行的(不可取消)通知的应用-我仅使用FLAG_ONGOING_EVENT,对我来说效果很好。我几乎只是从教程中复制了它,然后添加了正在进行的事件标志。
这是一些示例代码:

String text = "notification";
Notification notification = new Notification(R.drawable.icon, text,
        System.currentTimeMillis());

//launch the activity if the user selects this notification
PendingIntent contentIntent = PendingIntent.getActivity(this, 0,
        new Intent().setComponent(ComponentName.unflattenFromString("com.example/com.example.MyActivity")), 0);

// set the label and text...
notification.setLatestEventInfo(this, getText(R.string.notification_label),
               text, contentIntent);
notification.flags = Notification.FLAG_ONGOING_EVENT;

// Send the notification.
// We use a string id because it is a unique number.  We use it later to cancel.
NotificationManager mNM;
mNM.notify(R.string.notification_label, notification);

关于android - Android中的标记问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11563698/

10-09 06:12