我的问题是,当我在应用程序中收到任何通知时,通知图标显示在顶部栏中,如下图所示。在标记的区域中,您可以看到我已收到通知图标,因此要查看应用程序的通知,我必须向下拖动屏幕,但是在许多应用程序中,我已经看到,如果用户使用的是移动设备,并且无论何时从任何应用程序收到通知,在连接到手机顶部的手机屏幕顶部会显示一个小弹出窗口。我也希望在我的应用的通知中使用同样的方法
现在,我希望每当收到通知时,默认情况下都应将其显示在屏幕顶部,而不是仅在顶部显示图标,这样我自己不必从顶部拖动屏幕即可查看新通知{ {3}}
我的生成通知代码如下
case GCM_NOTIFY_VIDEO_COMMENT: {
if (App.getInstance().getId() != 0 && Long.toString(App.getInstance().getId()).equals(accountId)) {
callNotificationBadge(context);
App.getInstance().setNotificationsCount(App.getInstance().getNotificationsCount() + 1);
message = context.getString(R.string.label_gcm_comment);
NotificationCompat.Builder mBuilder =
new NotificationCompat.Builder(context)
.setSmallIcon(R.mipmap.ic_launcher)
.setContentTitle(title)
.setContentText(message);
Intent resultIntent = new Intent(context, NotificationsActivity.class);
resultIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
showNotificationForOreo(context,title,message,resultIntent,CHANNEL_social_ID,CHANNEL_social_Name);
break;
}
TaskStackBuilder stackBuilder = TaskStackBuilder.create(context);
stackBuilder.addParentStack(NotificationsActivity.class);
stackBuilder.addNextIntent(resultIntent);
PendingIntent resultPendingIntent = stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
mBuilder.setContentIntent(resultPendingIntent);
NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
mBuilder.setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE);
mBuilder.setAutoCancel(true);
mNotificationManager.notify(0, mBuilder.build());
}
break;
}