From c1cbaaba6c509a0e31cbed843f77af1eae1cb064 Mon Sep 17 00:00:00 2001 From: Amith Yamasani Date: Tue, 21 Jul 2015 11:46:14 -0700 Subject: [PATCH] Don't kill apps that are multi-user aware... ... when looking for background user apps that hold RECORD_AUDIO permission. On switching users, we kill any apps that might potentially be recording audio. But we don't want to kill critical apps that need to stay running because of multi-user aware services. Bug: 22564430 Change-Id: I6d9a684d4e044cc3018f0f8181a44aa143a3baeb --- .../core/java/com/android/server/audio/AudioService.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java index eef3d6384377e..1223a0022ae2b 100644 --- a/services/core/java/com/android/server/audio/AudioService.java +++ b/services/core/java/com/android/server/audio/AudioService.java @@ -5126,6 +5126,11 @@ public class AudioService extends IAudioService.Stub { if (UserHandle.getAppId(pkg.applicationInfo.uid) < FIRST_APPLICATION_UID) { continue; } + // Skip packages that have permission to interact across users + if (pm.checkPermission(Manifest.permission.INTERACT_ACROSS_USERS, pkg.packageName) + == PackageManager.PERMISSION_GRANTED) { + continue; + } if (homeActivityName != null && pkg.packageName.equals(homeActivityName.getPackageName()) && pkg.applicationInfo.isSystemApp()) {