parse.com - 从 android 的状态栏中删除特定通知
parse.com - Delete specific notification from status bar on android
我想使用以下函数从 android 状态栏删除特定通知:cancel()。
为此我需要通知 ID。
如何从 parse.com 通知中获取此 ID?
好的,这需要进行一些实验。基本上你需要一个 BroadCaster Parse 的自定义 class。因此,您需要对其进行扩展并自定义 class,您可以在其中处理自定义事件,例如使用 notification builder
发出通知
编辑:替换了整个代码。这是有效的。
public class MyCustomReceiver extends ParsePushBroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
super.onReceive(context, intent);
String payload=intent.getExtras().toString();
Log.d("PARSEPUSH", payload);
Intent notificationIntent = new Intent(context, MainActivity.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent piIntent=PendingIntent.getActivity(context,0,
notificationIntent,0);
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(context)
.setContentTitle("My Notification").setSmallIcon(android.R.drawable.star_on)
.setContentText("Message Body").setAutoCancel(true);
mBuilder.setContentIntent(piIntent);
Notification pnNotif = mBuilder.build();
Integer notificationId=0;
NotificationManager mNotificationManager = (NotificationManager)
context.getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(notificationId, pnNotif); // Set notification ID
}
@Override
protected void onPushReceive(Context context, Intent intent) {
super.onPushReceive(context, intent);
}
public MyCustomReceiver() {
super();
}
@Override
protected Notification getNotification(Context context, Intent intent) {
return null;
}
}
确保更新清单并将 ParsePushBroadcastReveiver 替换为 MyCustomReceiver。
我想使用以下函数从 android 状态栏删除特定通知:cancel()。
为此我需要通知 ID。
如何从 parse.com 通知中获取此 ID?
好的,这需要进行一些实验。基本上你需要一个 BroadCaster Parse 的自定义 class。因此,您需要对其进行扩展并自定义 class,您可以在其中处理自定义事件,例如使用 notification builder
发出通知编辑:替换了整个代码。这是有效的。
public class MyCustomReceiver extends ParsePushBroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
super.onReceive(context, intent);
String payload=intent.getExtras().toString();
Log.d("PARSEPUSH", payload);
Intent notificationIntent = new Intent(context, MainActivity.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent piIntent=PendingIntent.getActivity(context,0,
notificationIntent,0);
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(context)
.setContentTitle("My Notification").setSmallIcon(android.R.drawable.star_on)
.setContentText("Message Body").setAutoCancel(true);
mBuilder.setContentIntent(piIntent);
Notification pnNotif = mBuilder.build();
Integer notificationId=0;
NotificationManager mNotificationManager = (NotificationManager)
context.getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(notificationId, pnNotif); // Set notification ID
}
@Override
protected void onPushReceive(Context context, Intent intent) {
super.onPushReceive(context, intent);
}
public MyCustomReceiver() {
super();
}
@Override
protected Notification getNotification(Context context, Intent intent) {
return null;
}
}
确保更新清单并将 ParsePushBroadcastReveiver 替换为 MyCustomReceiver。