我使用GCM(谷歌云消息)进行推送通知。
当设备上的通知到达时它看起来像这样:
Received: Bundle[{message=hello, android.support.content.wakelockid=2,
collapse_key=do_not_collapse, from=243316392621}]
现在我想以通知时只显示消息的方式提取消息和wakelockId。(在这个例子中只有你好)
这里我的notificationBuider如下:
NotificationCompat.Builder mBuilder =
new NotificationCompat.Builder(this)
.setSmallIcon(com.example.example.R.drawable.icon)
.setContentTitle("Example")
.setDefaults(Notification.DEFAULT_ALL)
.setAutoCancel(true)
.setStyle(new NotificationCompat.BigTextStyle()
.bigText(msg))
.setContentText(msg);
mBuilder.setContentIntent(contentIntent);
mNotificationManager.notify(NOTIFICATION_ID, mBuilder.build());
请指导我。任何帮助将不胜感激。
答案 0 :(得分:0)
根据您收到的通知,我假设msg
的类型为Bundle
,其值为intent.getExtras()
,其中intent
为intent
GCM BroadcastReceiver。
您应该从中提取相关参数:
String text = msg.getString ("message");
NotificationCompat.Builder mBuilder =
new NotificationCompat.Builder(this)
.setSmallIcon(com.example.example.R.drawable.icon)
.setContentTitle("Example")
.setDefaults(Notification.DEFAULT_ALL)
.setAutoCancel(true)
.setStyle(new NotificationCompat.BigTextStyle()
.bigText(text))
.setContentText(text);
mBuilder.setContentIntent(contentIntent);
mNotificationManager.notify(NOTIFICATION_ID, mBuilder.build());
答案 1 :(得分:0)
Recibido:Bundle [{mensaje = hola,android.support.content.wakelockid = 2, collapse_key = do_not_collapse,desde = 243316392621}]
通过这种方式谷歌发送你在你的应用服务器中定义的数据,你必须做的就是单独读取这些数据
extras.getString(" message")
其中message是已定义服务器应用程序密钥值的数据