Notification.Builder和FLAG_INSISTENT

时间:2012-06-14 12:49:06

标签: android

我喜欢Notification.Builder的易用性,但它似乎不支持坚持的通知模式。

有没有办法从FLAG_INSISTENT设置标记Notification.Builder

2 个答案:

答案 0 :(得分:12)

不直接。 setFlag()上有一个私有Notification.Builder方法 - 我不知道他们为什么不公开它。

但是,您可以通过Notification配置Builder的其余部分,然后调整已完成的Notification对象上的标记。

或者,抓取Notification.Builder的代码并修改它以创建自己的代码,公开setFlag(),或添加setInsistent()等。

答案 1 :(得分:3)

也许我的回答对其他人有用

您可以使用:

NotificationCompat.Builder builder = new NotificationCompat.Builder(getContext());

builder.setContentTitle("Title")
       .setContentText("Hello world")
       .setSmallIcon(R.mipmap.ic_launcher);

Notification notification = builder.build();
notification.flags = Notification.FLAG_INSISTENT;
final NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(ID, notification)