Android: Sto tentando di annullare una notifica dalla barra di notifica dopo l'installazione di un pacchetto. Quello che sto facendo è la seguente:NotificationManager.cancel (id) non funziona all'interno di un destinatario di broadcast
public class MyBroadcastReceiver extends BroadcastReceiver {
private static final String TAG = "MyBroadcastReceiver";
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (Intent.ACTION_PACKAGE_ADDED.equals(action)) {
Uri data = intent.getData();
//some code goes here
//get the id of the notification to cancel in some way
notificationhelper._completeNotificationManager.cancel(id);
}
}
}
dove
public class notificationhelper {
public static NotificationManager _completeNotificationManager = null;
public void complete() {
if (_completeNotificationManager == null)
_completeNotificationManager = (NotificationManager) _context.getSystemService(Context.NOTIFICATION_SERVICE);
Notification notification = new Notification(
R.drawable.notification,
_context.getString(R.string.notification),
System.currentTimeMillis());
notification.flags |= Notification.FLAG_AUTO_CANCEL;
notification.flags |= Notification.FLAG_NO_CLEAR;
_completeNotificationManager.notify(TEXT, id, notification);
}
}
Ma la notificationhelper._completeNotificationManager.cancel(id)
non funziona. Ho provato a usare notificationhelper._completeNotificationManager.cancelAll();
e funziona. Cosa sto facendo di sbagliato?
Mi stavo grattando la testa per lo stesso problema. stackoverflow.com/questions/38880330 Salvato la mia giornata. – mauron85
puoi caricare il codice completo ho lo stesso problema? –
sto generando un numero casuale di 7 cifre un avviso di notifica non funziona:/ –