如何制作状态栏通知,什么也不做,无处可去?

时间:2013-03-31 19:11:59

标签: android notifications

我已经有Android的工作状态栏通知,但要创建它,我必须设置一个Activity才能打开它。我不希望任何活动打开;但是,这个小项目根本不需要接口。

mNotificationManager = (NotificationManager) aContext
        .getApplicationContext().getSystemService(
                Context.NOTIFICATION_SERVICE);

// Create the pending intent, which is basically NOW.
PendingIntent contentIntent = PendingIntent
        .getActivity(aContext, 1, new Intent(aContext, BlankActivity.class),
                PendingIntent.FLAG_CANCEL_CURRENT);

// Create notification
notificationBuilder = new NotificationCompat.Builder(aContext)
        .setContentIntent(contentIntent)
        .setSmallIcon(R.drawable.ic_launcher) // required for launch
        .setTicker("Downloading video...") // required for launch
        .setWhen(System.currentTimeMillis()) // should be set for now.
        .setContent(remoteView);

BlankActivity听起来像是一个没有内容的活动,在被打开时关闭。但它仍然显示在最近打开的窗口列表中。我无法将其设置为null。

有没有办法可以避免设置状态通知的意图?

2 个答案:

答案 0 :(得分:5)

在这种情况下,您不需要PendingIntent。只需在null中设置setContentIntent()即可。

另一种方式可以是

PendingIntent contentIntent = PendingIntent.getActivity(aContext(),0,new Intent(),PendingIntent.FLAG_CANCEL_CURRENT);

试试这个。

答案 1 :(得分:1)

将它设置为null对于像SDK 2.3这样需要设置意图的早期版本不起作用,否则android会在接收者的阻止下阻塞异常:java.lang.RuntimeException: Unable to start receiver com.movistar.android.mimovistar.widgets.WidgetIntentReceiver: java.lang.IllegalArgumentException: contentIntent required see this post