0

我发送了没有扩展上下文的类的构造函数

int icon = R.drawable.ic_launcher;
        long when = System.currentTimeMillis();
        myNotification = new NotificationCompat.Builder(context)
                .setSmallIcon(icon)
                .setContentTitle(context.getResources().getString(R.string.app_name))
                .setContentText(context.getResources().getString(R.string.app_name))
                .setWhen(when)
                .setTicker(context.getResources().getString(R.string.app_name))
                .setDefaults(Notification.FLAG_NO_CLEAR);

然后我通过 RemoteViews 发送一些数据,最后

Intent notificationIntent = new Intent(context, Menu_Activity.class);
PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, 0);
contentView.setOnClickPendingIntent(R.id.layoutNotification, contentIntent);
myNotification.setContent(remoteView);

myNotification.setOngoing(false);
myNotification.setAutoCancel(false);

myNotification.setPriority(Notification.PRIORITY_HIGH);
myNotification.setContentIntent(contentIntent);

myNotificationManager.notify(NOTIFICATION_ID, myNotification.build());

但我需要设置此通知,无法通过将其滑动到一侧来删除。现在每次我都可以通过滑动删除它。如何禁用它?

谢谢

4

2 回答 2

3

通知生成器有一个方法 setOngoing。将其设置为 true 以使通知成为用户无法关闭的持续通知。

设置这是否是“持续”通知。用户不能关闭正在进行的通知,因此您的应用程序或服务必须注意取消它们。它们通常用于指示用户正在积极参与的后台任务(例如,播放音乐)或以某种方式挂起并因此占用设备(例如,文件下载、同步操作、活动网络连接)。

于 2013-07-23T23:58:09.680 回答
0

您只需要使用 setOngoing(true)。删除 setAutoCancel(false) 行。

一起使用 setOngoing() 和 setAutoCancel() 方法对我不起作用(不显示通知)。

于 2013-10-06T08:52:51.977 回答