diff options
| -rw-r--r-- | services/core/java/com/android/server/audio/AudioService.java | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java index f3a9a699b371..3339581bcc13 100644 --- a/services/core/java/com/android/server/audio/AudioService.java +++ b/services/core/java/com/android/server/audio/AudioService.java @@ -8767,13 +8767,21 @@ public class AudioService extends IAudioService.Stub UserInfo userInfo = UserManagerService.getInstance().getUserInfo(userId); killBackgroundUserProcessesWithRecordAudioPermission(userInfo); } - UserManagerService.getInstance().setUserRestriction( - UserManager.DISALLOW_RECORD_AUDIO, true, userId); + try { + UserManagerService.getInstance().setUserRestriction( + UserManager.DISALLOW_RECORD_AUDIO, true, userId); + } catch (IllegalArgumentException e) { + Slog.w(TAG, "Failed to apply DISALLOW_RECORD_AUDIO restriction: " + e); + } } else if (action.equals(Intent.ACTION_USER_FOREGROUND)) { // Enable audio recording for foreground user/profile int userId = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, -1); - UserManagerService.getInstance().setUserRestriction( - UserManager.DISALLOW_RECORD_AUDIO, false, userId); + try { + UserManagerService.getInstance().setUserRestriction( + UserManager.DISALLOW_RECORD_AUDIO, false, userId); + } catch (IllegalArgumentException e) { + Slog.w(TAG, "Failed to apply DISALLOW_RECORD_AUDIO restriction: " + e); + } } else if (action.equals(BluetoothAdapter.ACTION_STATE_CHANGED)) { state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, -1); if (state == BluetoothAdapter.STATE_OFF || |