diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 651368381d58e..06d35333aba17 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -4096,8 +4096,15 @@ public class PackageManagerService extends IPackageManager.Stub return false; } if (callerIsInstantApp) { - // request for a specific component; if it hasn't been explicitly exposed, filter + // request for a specific component; if it hasn't been explicitly exposed through + // property or instrumentation target, filter if (component != null) { + final PackageParser.Instrumentation instrumentation = + mInstrumentation.get(component); + if (instrumentation != null + && isCallerSameApp(instrumentation.info.targetPackage, callingUid)) { + return false; + } return !isComponentVisibleToInstantApp(component, componentType); } // request for application; if no components have been explicitly exposed, filter