summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Melisa CZ <melisacz@google.com> 2024-01-19 11:03:58 +0000
committer Melisa CZ <melisacz@google.com> 2024-01-24 13:13:37 +0000
commit1cc2dba4f672684a3b1663c5b4561d56f9cb3050 (patch)
tree55cf71335cc8accae92c041d5d9df2932c92847c
parentf2eed99e75f6ea1e5aad7cc438c8d546c140d2b1 (diff)
Registering SdkSandboxVerifierReceiver via manifest.
Bug: b/300965895 Test: atest CtsPackageManagerTestCases Change-Id: I2500bc46bdac58d5f895518e7fd647b2adc28bd1
-rw-r--r--core/res/AndroidManifest.xml10
-rw-r--r--services/core/java/com/android/server/pm/VerifyingSession.java3
2 files changed, 12 insertions, 1 deletions
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index 100259ef72b9..0104a6e2b4d6 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -8373,6 +8373,16 @@
</intent-filter>
</receiver>
+ <!-- Broadcast Receiver listens to sufficient verifier broadcast from Package Manager
+ when installing new SDK. Verification of SDK code during installation time is run
+ to determine compatibility with privacy sandbox restrictions. -->
+ <receiver android:name="com.android.server.sdksandbox.SdkSandboxVerifierReceiver"
+ android:exported="false">
+ <intent-filter>
+ <action android:name="android.intent.action.PACKAGE_NEEDS_VERIFICATION"/>
+ </intent-filter>
+ </receiver>
+
<service android:name="android.hardware.location.GeofenceHardwareService"
android:permission="android.permission.LOCATION_HARDWARE"
android:exported="false" />
diff --git a/services/core/java/com/android/server/pm/VerifyingSession.java b/services/core/java/com/android/server/pm/VerifyingSession.java
index f0ff85df13d1..dd2b409c7100 100644
--- a/services/core/java/com/android/server/pm/VerifyingSession.java
+++ b/services/core/java/com/android/server/pm/VerifyingSession.java
@@ -357,7 +357,8 @@ final class VerifyingSession {
verifierUser = UserHandle.of(mPm.mUserManager.getCurrentUserId());
}
// TODO(b/300965895): Remove when inconsistencies loading classpaths from apex for
- // user > 1 are fixed.
+ // user > 1 are fixed. Tests should cover verifiers from apex classpaths run on
+ // primary user, secondary user and work profile.
if (pkgLite.isSdkLibrary) {
verifierUser = UserHandle.SYSTEM;
}