我有一个通知服务,其中在服务的启动方法中创建通知...意图指向actvityA ...我不清楚活动和服务绑定过程..在activityA我想要一个方法执行检查通知和成功执行该方法..通知被取消..我有红色很多帖子说通知控制是不可能的..Plz帮助一些检查通知收到..谢谢提前.. < / p>
nm =(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
Log.d("nm", "nm created");
Intent in=new Intent(UpdateService.this,ActivityA.class);
TaskStackBuilder.create(UpdateService.this);
stackBuilder.addParentStack(ActivityA.class);
stackBuilder.addNextIntent(in);
PendingIntent pi =stackBuilder.getPendingIntent( 0,PendingIntent.FLAG_UPDATE_CURRENT);
notification =new NotificationCompat.Builder(UpdateService.this)
.setSmallIcon(R.drawable.ic_launcher)
.setContentTitle("Some Update")
.setContentText("Question");
notification.setContentIntent(pi);
notification.setAutoCancel(true);
int id=100;
int numMessages = 0;
notification.setContentText("You have unread messages..")
.setNumber(++numMessages);
nm.notify(id, notification.build());
stopSelf();
.i提到..有一个对话框..出现..在按下正面按钮...通知mst得到清除...在负面...对话将被解雇..和通知将保持..
答案 0 :(得分:1)
您必须记录通知ID。然后在您的方法中,取消具有该ID的通知。
如何取消通知,这是link
在您设置通知的位置添加此代码。
SharedPreferences prefs = this.getSharedPreferences(
"com.example.app", Context.MODE_PRIVATE);
prefs.edit().putInt("ID", id).commit();
将此添加到按下YES时调用的onClick侦听器。
SharedPreferences prefs = this.getSharedPreferences(
"com.example.app", Context.MODE_PRIVATE);
int notificationId = prefs.getInt("ID");
现在使用此notificationId,通知。