2012-01-12 120 views
0

Im有困难清除状态栏通知。清除状态通知Android

public void NotificationStatus(){ 

    Intent intent = new Intent(this, Stimulation.class); 
    NotificationManager notificationManager 
     = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); 
    Notification notification = new Notification(
     david.flanagan.android.VenAssist.Activities.R.drawable.notification_icon, 
     "VenAssist Stimulation ON", System.currentTimeMillis()); 
    PendingIntent activity = PendingIntent.getActivity(this, 0, intent, 0); 
    notification.flags |= Notification.FLAG_ONGOING_EVENT; 
    notification.flags |= Notification.DEFAULT_VIBRATE; 
    notification.defaults |= Notification.DEFAULT_SOUND; 
    notification.setLatestEventInfo(this, "VenAssist", 
     "Stimulation Started", activity); 
    notificationManager.notify(0, notification);  
} 

我再试图通过调用

notification.cancel(0); 

我创建了通知的情况下,其即时通讯不能肯定是正确的清除在我服务的onDestroy()功能的通知状态。

private NotificationManager notification; 

当我尝试取消服务,因此清除状态栏,应用程序崩溃。

+1

我建议你贴堆栈跟踪 – 2012-01-12 19:30:28

回答

2

您的通知对象可能为空,这会导致NullPointerException

,我认为你应该使用一个NotificationManager对象取消的通知,使用相同的ID(在你的情况下,0),并传递到NoticationManager.cancel(Int)

NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); 
notificationManager.cancel(0); 

NotificationManager docs

+0

谢谢,像一个魅力工作 – 2012-01-12 20:01:37