使用GCM修改Android通知格式

时间:2013-08-07 00:19:44

标签: android push-notification google-cloud-messaging

我正在使用Rails后端使用GCM向我的Android应用用户发送推送通知。我把它弄得很好但是现在我想知道如何更好地格式化消息。我之前看过其他应用程序的推送通知,有额外的图像和不同的字体颜色。有谁知道如何用GCM实现这个目标?

此外,我在通知中的应用图标非常小。反正有没有让它更大?

感谢。

1 个答案:

答案 0 :(得分:1)

您的问题与GCM无关。 GCM仅用于传递您将在通知中显示的数据。通知的外观仅与Android通知相关。

如果要控制通知的布局,可以使用以下几种方法:

  • 自定义通知 - 对于较旧的Android版本,您可以通过这种方式定位应用。

    您可以通过定义布局资源,使用该布局创建视图并将视图连接到通知来实现。例如:

    Notification notification = new Notification(R.drawable.notification_image, title, System.currentTimeMillis());
    notification.flags |= Notification.FLAG_AUTO_CANCEL;
    RemoteViews contentView = new RemoteViews(getPackageName(), R.layout.custom_notification);
    contentView.setImageViewResource(R.id.image, R.drawable.notification_image);
    contentView.setTextViewText(R.id.title, title);
    contentView.setTextViewText(R.id.text, message);
    notification.contentView = contentView;
    

    请注意,此方法不会更改屏幕上通知占用的总面积,因此,例如,如果您使用大字体,则无法容纳多个字符。

  • 较新的Android版本(API级别16)有Notification.BigTextStyle用于生成包含大量文本的大格式通知,Notification.BigPictureStyle用于生成包含大型图片附件的大幅面通知

  • 另一种选择是使用NotificationCompat类,使您能够在较低的API级别中使用某些较新的通知功能。