Java Android:如何禁用所有第三方应用程序的声音';来自代码的通知?
我需要从代码中禁用第三方应用程序通知的所有声音 类似这样的情况:当应用程序打开时,来自所有应用程序的所有通知都是静默的。当应用程序关闭时,声音设置恢复到以前的状态 如何实施?有可能这样做吗 看来这就是你要找的 您可以这样访问它(在本例中在活动内调用): 要获取当前卷(以便您可以在以后恢复),请使用 当应用程序启动时,您可以通过调用 对于SDK<23:Java Android:如何禁用所有第三方应用程序的声音';来自代码的通知?,java,android,kotlin,mobile,notifications,Java,Android,Kotlin,Mobile,Notifications,我需要从代码中禁用第三方应用程序通知的所有声音 类似这样的情况:当应用程序打开时,来自所有应用程序的所有通知都是静默的。当应用程序关闭时,声音设置恢复到以前的状态 如何实施?有可能这样做吗 看来这就是你要找的 您可以这样访问它(在本例中在活动内调用): 要获取当前卷(以便您可以在以后恢复),请使用 当应用程序启动时,您可以通过调用 对于SDK=23: audioManager.setStreamVolume(AudioManager.STREAM_NOTIFICATION, 0, 0) aud
audioManager.setStreamVolume(AudioManager.STREAM_NOTIFICATION, 0, 0)
audioManager.adjustStreamVolume(AudioManager.STREAM_NOTIFICATION, AudioManager.ADJUST_MUTE, 0)
对于SDK>=23:
audioManager.setStreamVolume(AudioManager.STREAM_NOTIFICATION, 0, 0)
audioManager.adjustStreamVolume(AudioManager.STREAM_NOTIFICATION, AudioManager.ADJUST_MUTE, 0)
注:根据官方文件:
从N开始,将切换到“请勿打扰”的音量调整为
除非已授予应用程序请勿干扰访问权限,否则不允许访问
如上所述,您需要声明
ACCESS\u NOTIFICATION\u POLICY
并主动请求访问。非常感谢您的回答,非常有用!此外,还需要添加访问通知策略请求,Karl Johan Vallner的回答有助于做到这一点。很高兴我能提供帮助。我已经更新了答案以反映这一信息。