问题
My problem is occurs in android lollipop os.
I want to set 'silent mode', but lollipop os applies to 'priority mode'. (I use AudioManager) Is there any way I can apply the 'silent mode' instead of 'priority mode'?
My code :
AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
mAudioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);
回答1:
Due to changes in API try using the int
value 0
instead of AudioManager.RINGER_MODE_SILENT
AudioManager mAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
mAudioManager.setRingerMode(0);
Also try checking your manifest file
<application>
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
</application>
回答2:
I had this issue on asus 5.o device , got resolved by replacing RINGER_MODE_SILENT with RINGER_MODE_VIBRATE. this might be strange but worked best for me .
AudioManager audiomanage = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
audiomanage.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);
来源:https://stackoverflow.com/questions/29158063/android-audiomanager-i-want-to-set-silent-mode-but-applied-the-priority-mode