Android 从通知中获取消息并在应用程序上显示

Android 从通知中获取消息并在应用程序上显示,android,android-intent,notifications,push-notification,google-cloud-messaging,Android,Android Intent,Notifications,Push Notification,Google Cloud Messaging,我正在尝试使用GCM开发推送通知服务。我能够接收从服务器发送到设备上的通知。单击通知后,应用程序将打开。好。现在我想要的是,通知上的消息也应该显示在应用程序上。我该怎么做 Code in GCMintentservice.java: private void sendNotification(String msg) { mNotificationManager = (NotificationManager) this.getSystemServic

我正在尝试使用GCM开发推送通知服务。我能够接收从服务器发送到设备上的通知。单击通知后,应用程序将打开。好。现在我想要的是,通知上的消息也应该显示在应用程序上。我该怎么做

Code in GCMintentservice.java:
private void sendNotification(String msg) {
        mNotificationManager = (NotificationManager)
                this.getSystemService(Context.NOTIFICATION_SERVICE);

        PendingIntent contentIntent = PendingIntent.getActivity(this, 0,
                new Intent(this, MainActivity.class), PendingIntent.FLAG_UPDATE_CURRENT);

        NotificationCompat.Builder mBuilder =
                new NotificationCompat.Builder(this)
        .setSmallIcon(R.drawable.ic_action_search_)
        .setContentTitle("GCM Notification")
        .setStyle(new NotificationCompat.BigTextStyle()
        .bigText(msg))
        .setContentText(msg);

        mBuilder.setContentIntent(contentIntent);
        mNotificationManager.notify(NOTIFICATION_ID, mBuilder.build());
    }
现在我收到了通知,但单击通知后,我转到应用程序,但消息不在那里。我该怎么办。我在主应用程序中有一个文本视图。如何使用通知中的消息更新该文本视图?在主应用程序的OnCreate上可能需要做些什么?请帮忙


关于

您应该提供一个包含GCM详细信息的捆绑包到PendingEvent的包装中:

Intent intent = new Intent(this, MainActivity.class)
intent.putExtra(...);
PendingIntent contentIntent = PendingIntent.getActivity(
        this, 0,
        intent,
        PendingIntent.FLAG_UPDATE_CURRENT);

我应该如何在MainActivity类中获取值?@Saty您似乎缺少一些基础知识。我建议继续阅读,然后继续。我尝试了所有的意图,但是我认为设置的两个标志(notificationIntent.setFlags(intent.FLAG_ACTIVITY_CLEAR_TOP | intent.FLAG_ACTIVITY_SINGLE_TOP))会产生问题,而main ACTIVITY onCreate不会被调用,如果未调用onCreate,那么我将如何获取意图的值。我应该将值放在正常意图还是挂起意图上?请提出建议。您提供的标志是意图标志,应该在Intent;上设置<代码>onCreate()未被调用,因为活动已创建且仍在运行。您可以改为观察
onNewIntent()
,如下所示。