OSDN Git Service

Use correct user id for permission check for instant foreground service
authorSvet Ganov <svetoslavganov@google.com>
Thu, 7 Dec 2017 07:45:38 +0000 (23:45 -0800)
committerSvet Ganov <svetoslavganov@google.com>
Thu, 7 Dec 2017 07:45:42 +0000 (23:45 -0800)
Test: cts-tradefed run cts-dev -m CtsAppSecurityHostTestCases
          -t android.appsecurity.cts.EphemeralTest#testStartForegrondService

bug:68275646

Change-Id: I196522c49ae8a7e0ec07bf631f04bae51e96db5b

services/core/java/com/android/server/am/ActiveServices.java

index 90ad8a5..9d823a7 100644 (file)
@@ -1043,8 +1043,8 @@ public final class ActiveServices {
                         try {
                             if (AppGlobals.getPackageManager().checkPermission(
                                     android.Manifest.permission.INSTANT_APP_FOREGROUND_SERVICE,
-                                    r.appInfo.packageName,
-                                    r.appInfo.uid) != PackageManager.PERMISSION_GRANTED) {
+                                    r.appInfo.packageName, UserHandle.getUserId(r.appInfo.uid))
+                                            != PackageManager.PERMISSION_GRANTED) {
                                 throw new SecurityException("Instant app " + r.appInfo.packageName
                                         + " does not have permission to create foreground"
                                         + "services");