Doğ*_*mir 5 java notifications android foreground-service
语境:
我一直在使用 Google 的LocationUpdatesForegroundService示例项目来了解有关服务的更多信息。
我已经通过 Github 桌面下载了该项目并在我的手机上运行它,一切都很棒,并且该项目完成了它想要做的事情。
我的手机是 Android 8.0.0,API 26
问题:
一旦应用程序终止,前台服务通知就会显示在状态栏上,一旦发生这种情况,我就会听到通知声音(默认声音)。但是,我希望通知是静音的,就像在一些基于位置的应用程序中一样(例如:Life360)
到目前为止我尝试过的:
159尝试mChannel.setSound(null,null);296更改.setPriority(Notification.PRIORITY_HIGH)为
.setPriority(Notification.PRIORITY_LOW)158更改NotificationManager.IMPORTANCE_DEFAULT为NotificationManager.IMPORTANCE_LOW)300添加了一行setSound(null)以上都不适合我,如果有人能对这种情况有所了解,我将不胜感激。
小智 4
解决方案是使用NotificationManager.IMPORTANCE_LOW并为其创建一个新通道。一旦创建了频道,您就无法更改重要性(当然可以,但新的重要性将被忽略)。频道信息似乎由系统永久存储,并且只有在卸载应用程序时才会删除创建的任何频道。您可以删除该频道
nm.deleteNotificationChannel(nChannel.getId());
Run Code Online (Sandbox Code Playgroud)
并重新创建它
nm.createNotificationChannel(nChannel);
Run Code Online (Sandbox Code Playgroud)
通过堆栈溢出在这里回答禁用来自NotificationChannel的声音
| 归档时间: |
|
| 查看次数: |
3503 次 |
| 最近记录: |