private void registerVolumeChangeReceiver() {

mSettingsContentObserver = new SettingsContentObserver(this, new Handler());

getApplicationContext().getContentResolver().registerContentObserver(android.provider.Settings.System.CONTENT_URI, true, mSettingsContentObserver);

}

private void unregisterVolumeChangeReceiver(){

getApplicationContext().getContentResolver().unregisterContentObserver(mSettingsContentObserver);

}

public class SettingsContentObserver extends ContentObserver {

Context context;

public SettingsContentObserver(Context c, Handler handler) {

super(handler);

context = c;

}

@Override

public boolean deliverSelfNotifications() {

return super.deliverSelfNotifications();

}

@Override

public void onChange(boolean selfChange) {

super.onChange(selfChange);

AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);

int currentVolume = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);

System.out.println("currVolume:" + currentVolume);

//TODO

}

}

--------------------------------------------------------------------------------------------------------------------------------------

小奋斗文章

--------------------------------------------------------------------------------------------------------------------------------------

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐