收到GCM发来的消息后,我正在生成通知
/**
* Create and show a simple notification containing the received GCM message.
*
* @param message GCM message received.
*/
private void sendNotification(String message) {
Intent intent = new Intent(this, MyActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0 /* Request code */, intent,
PendingIntent.FLAG_ONE_SHOT);
Uri defaultSoundUri= RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_action_chat)
.setContentTitle("GCM Message")
.setContentText(message)
.setAutoCancel(true)
.setSound(defaultSoundUri)
.setContentIntent(pendingIntent);
NotificationManager notificationManager =
(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(0 /* ID of notification */, notificationBuilder.build());
}
生成通知,声音播放,但不会显示在屏幕顶部。通知显示在快速设置/通知下拉菜单中,但在我生成时,它不显示在屏幕顶部,只播放声音。
我希望在生成它时在屏幕顶部显示它。我该怎么做?
答案 0 :(得分:3)
这是一个从head lollipop开始的抬头通知,你在这里查看如何显示你可以在这里看到的通知http://developer.android.com/guide/topics/ui/notifiers/notifications.html,对于抬头你需要设置通知优先级如下
.setPriority(Notification.PRIORITY_HIGH)
编辑11月17日
在API级别26中弃用了Notification.PRIORITY_HIGH 。请改为使用 IMPORTANCE_HIGH 。
答案 1 :(得分:0)
在我的情况下,我必须做
.setSmallIcon(R.drawable.my_icon)