getCurrentInterruptionFilter BroadcastReceiver可以在快速设置中工作,而不能在设置中工作的原因是因为它们所监听的是不同的系统广播事件。
快速设置是指Android系统中的快速设置面板,用户可以通过下拉通知栏来快速开启或关闭一些常用的系统功能,比如调节音量、开启飞行模式等。当用户在快速设置面板中改变了中断过滤器的设置时,系统会发送一个名为"android.media.AudioManager.ACTION_INTERRUPTION_FILTER_CHANGED"的广播事件。getCurrentInterruptionFilter BroadcastReceiver可以监听到这个广播事件,并根据用户的设置进行相应的处理。
而设置界面是指Android系统中的系统设置界面,用户可以在这里对系统的各种设置进行详细的配置。当用户在设置界面中改变了中断过滤器的设置时,系统会发送一个名为"android.app.NotificationManager.ACTION_INTERRUPTION_FILTER_CHANGED"的广播事件。但是getCurrentInterruptionFilter BroadcastReceiver无法监听到这个广播事件,因此不能在设置界面中工作。
需要注意的是,getCurrentInterruptionFilter BroadcastReceiver只能在Android 5.0及以上的版本中使用,因为中断过滤器的设置是在Android 5.0中引入的新功能。
推荐的腾讯云相关产品:腾讯云移动推送(https://cloud.tencent.com/product/umeng_push)可以帮助开发者实现消息推送功能,适用于各类应用场景,包括但不限于社交、电商、游戏等。
领取专属 10元无门槛券
手把手带您无忧上云