3

我正在创建一个使用 Google GCM 服务的应用程序。

所以我定义了这个函数:

@Override
protected void onMessage(Context context, Intent intent)

onMessage 调用一个函数,这是代码的一部分:

 Intent notificationIntent = new Intent(context,ShowMess.class);
    notificationIntent.putExtra("id",current_id);
    notificationIntent.putExtra("cat", cat);
    notificationIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  //  notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
    PendingIntent intent = PendingIntent.getActivity(context, id, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_ONE_SHOT);
    notification.setLatestEventInfo(context, title, message, intent);
    notification.flags |= Notification.FLAG_AUTO_CANCEL;
    notification.defaults |= Notification.DEFAULT_SOUND;
    notificationManager.notify(id, notification);

如果我向自己发送消息(使用 AsyncTask)但快速关闭应用程序(后退按钮)下一条消息将不会启动活动(ShowMEss.class)您认为为什么?

再见

谢谢

4

1 回答 1

0

您的上述代码尚未注册通知。您是否缺少代码中的以下部分?

    NotificationManager notificationManager = 
  (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

notificationManager.notify(0, notification); 
于 2013-05-15T18:46:38.870 回答