1

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

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

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

4

1 回答 1

1

是的,您的标志看起来非常正确,尽管我不知道您是否甚至需要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);
于 2012-07-19T18:45:07.703 回答