【发布时间】:2019-05-12 14:34:11
【问题描述】:
我正在尝试制作一个应用程序,该应用程序将使用 AlarmManager 自动将铃声模式设置为静音。它正在运行,但没有按预期工作。
@Override
public void onReceive(Context context, Intent intent) {
AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
audioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);
}
基于 Android 文档:
RINGER_MODE_SILENT - 铃声模式将静音且不会 颤动。 (这会覆盖振动设置。)
但我发现我的手机还在振动。它只是将“请勿打扰”设置为打开并将铃声模式更改为振动。我试图将它设置为 RINGER_MODE_NORMAL 和 RINGER_MODE_VIBRATE,它可以工作,但不能与 RINGER_MODE_SILENT 一起使用。我已经授予我的应用访问“请勿打扰”的权限并使用以下权限:
<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
是否有任何错误或遗漏的步骤?
【问题讨论】:
标签: android alarmmanager android-audiomanager