猿问

是否有针对音量变化的广播动作?

我正在编写一个小部件,只要用户更改振铃器音量或振动设置,就需要更新。

捕获android.media.VIBRATE_SETTING_CHANGED对于振动设置工作得很好,但我没有找到任何方式在铃声音量变化时得到通知,虽然我可以尝试捕捉当用户按下音量增大/音量减小物理键时,还有很多其他选项在不使用这些键的情况下更改音量。

你知道是否有任何广播行动为此定义或以任何方式创建一个或没有它解决问题?


慕妹3242003
浏览 717回答 3
3回答

天涯尽头无女友

没有广播操作,但我确实发现您可以连接内容观察者以在设置更改时获得通知,流量是其中一些设置。注册android.provider.Settings.System.CONTENT_URI以获得所有设置更改的通知:mSettingsContentObserver = new SettingsContentObserver( new Handler() ); this.getApplicationContext().getContentResolver().registerContentObserver(     android.provider.Settings.System.CONTENT_URI, true,     mSettingsContentObserver );内容观察者可能看起来像这样:public class SettingsContentObserver extends ContentObserver {   public SettingsContentObserver(Handler handler) {      super(handler);   }    @Override   public boolean deliverSelfNotifications() {      return super.deliverSelfNotifications();    }   @Override   public void onChange(boolean selfChange) {      super.onChange(selfChange);      Log.v(LOG_TAG, "Settings change detected");      updateStuff();   }}并确保在某个时候取消注册内容观察者。
随时随地看视频慕课网APP

相关分类

Android
我要回答