Możesz użyć aplikacji AudioManager, aby sprawdzić, czy głośność jest wyciszona, czy też nie.
AudioManager audio = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
switch(audio.getRingerMode()){
case AudioManager.RINGER_MODE_NORMAL:
break;
case AudioManager.RINGER_MODE_SILENT:
break;
case AudioManager.RINGER_MODE_VIBRATE:
break;
}
oraz w przypadku zmiany głośności jest dostępna funkcja BroadcastReceiver.
public class VolumeKeyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
//Implement Logic
}
}
Zarejestruj BroadcastReceiver
VolumeKeyReceiver keyReceiver = new VolumeKeyReceiver();
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("android.media.VOLUME_CHANGED_ACTION");
registerReceiver(keyReceiver, intentFilter);
Dziękuję, wiem jak go rozwiązać – Davim