2012-11-08 61 views
0

我想答案很简单,但我仍然没有找到它。我需要的是设置一个通知(如果用户喜欢)不可点击的(或不可扩展的或任何可以调用的),就像在图片中看到的一样。我该怎么做?我想设置布尔持续为false将是答案,但我错了..安卓无法点击的通知

notif

+1

我不知道你是否可以做到这一点,但我怀疑它。 – iTurki

+0

你认为只有系统应用可以使用这种通知吗? ..有点奇怪 – Droidman

回答

0

抱歉,但你不能这样做。每个Notification必须具有可扩展视图(即使它是空的)。这将给用户一种取消通知的方法。

关于您看到的图标(3G,手机信号塔等),我相信操作系统和操作系统只有可以设置此类型的通知。

+0

啊..你确定吗?其实我有办法取消用户可以使用的应用程序内的通知。 – Droidman

+0

如果你不提供这些方式给用户?如果您的应用没有,系统将始终为用户提供取消的方法。 – iTurki

+0

没有发现你的想法..其实我可以创建一个可点击的通知,也不提供取消它的方法。当然这将是一个糟糕的应用程序。我只是没有看到为什么API不提供创建不可点击的通知的可能性的任何原因.. – Droidman

0

你可以用前台服务来做到这一点。

final NotificationCompat.Builder noti = new NotificationCompat.Builder(context); 
noti.setTicker(""); 
noti.setContentTitle(""); 
noti.setContentText(""); 
noti.setWhen(System.currentTimeMillis()); 
noti.setOngoing(true); 
service.startForeground(11, noti.build()); 

我使用的上下文是服务本身。 “11”是在应用程序中必须是唯一的通知ID(我认为)。 Notification.Builder类来自api level 11,但支持库中的一个来自api 4.(NotificationCompat.Builder)