我是新来的。我正在开发按FAT按钮时正在使用Google Maps的应用程序。由于目前Google Maps并未指示您何时完成导航,因此为了能够返回到我的应用程序,我正在尝试以某种方式执行此操作。 我在想,当您处于导航模式时,谷歌地图会向您显示一条通知。在导航完成之前,不会删除它。我想收到此通知,并在按下按钮时检查该通知是否处于活动状态。如果未激活,则可以返回到我的应用程序。 这就是我一直在尝试的事情:
NotificationManager notificationManager =
GetSystemService(Context.NotificationService) as NotificationManager;
StatusBarNotification[] nnn2 = notificationManager.GetActiveNotifications();
当我检查nnn2以查看哪些服务处于活动状态时,它什么也没有。我不知道是否需要在清单中添加一些权限,或者我完全错了。
答案 0 :(得分:0)
这是可能的,并且可以执行以下操作:
对于低于API 11的级别:
Notification notify = new Notification();
notify.Defaults = NotificationDefaults.Sound;
notify.Defaults = NotificationDefaults.Vibrate;
notify.Flags = NotificationFlags.NoClear;// Cruicial line of code
对于API 11及更高版本:
Notification notify = new Notification();
notify.Defaults = NotificationDefaults.Sound;
notify.Defaults = NotificationDefaults.Vibrate;
notify.Flags = NotificationFlags.NoClear;
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
.SetSmallIcon(Resource.Drawable.Icon)
.SetContentTitle(messageTitle)
.SetContentText(messageBody)
.SetOngoing(true)//Important line of code
.SetContentIntent(pendingIntent);
NotificationManagerCompat notificationManager = NotificationManagerCompat.From(this);
notificationManager.Notify(0, notificationBuilder.Build());