summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Marvin Ramin <marvinramin@google.com> 2024-10-16 12:26:02 +0200
committer Marvin Ramin <marvinramin@google.com> 2024-10-16 13:15:56 +0200
commit829da8849df35c00c110ebebdd54c1692d96f840 (patch)
tree20039647f7476ac4d720c7945829d317511b26e4
parenta28b2a713465af4a024d34240c0ca378a4783e0c (diff)
Use getLaunchedFromPackage instead of getCallingPackage
Ensure that MediaProjectionPermissionActivity is doing proper attribution and validation of permissions before showing. Bug: 373581993 Test: presubmit Flag: com.android.systemui.media_projection_request_attribution_fix Change-Id: Ibcc14090ce38a0fac21a394d861d044b9669a8a0
-rw-r--r--packages/SystemUI/aconfig/systemui.aconfig10
-rw-r--r--packages/SystemUI/src/com/android/systemui/mediaprojection/permission/MediaProjectionPermissionActivity.java7
2 files changed, 15 insertions, 2 deletions
diff --git a/packages/SystemUI/aconfig/systemui.aconfig b/packages/SystemUI/aconfig/systemui.aconfig
index c79c0441cfbb..540115de8830 100644
--- a/packages/SystemUI/aconfig/systemui.aconfig
+++ b/packages/SystemUI/aconfig/systemui.aconfig
@@ -1487,3 +1487,13 @@ flag {
description: "Enables notes role qs tile which opens default notes role app in app bubbles"
bug: "357863750"
}
+
+flag {
+ name: "media_projection_request_attribution_fix"
+ namespace: "systemui"
+ description: "Ensure MediaProjection consent requests are properly attributed"
+ bug: "373581993"
+ metadata {
+ purpose: PURPOSE_BUGFIX
+ }
+}
diff --git a/packages/SystemUI/src/com/android/systemui/mediaprojection/permission/MediaProjectionPermissionActivity.java b/packages/SystemUI/src/com/android/systemui/mediaprojection/permission/MediaProjectionPermissionActivity.java
index c3729c0dcdfd..212da9ffb9c5 100644
--- a/packages/SystemUI/src/com/android/systemui/mediaprojection/permission/MediaProjectionPermissionActivity.java
+++ b/packages/SystemUI/src/com/android/systemui/mediaprojection/permission/MediaProjectionPermissionActivity.java
@@ -122,8 +122,11 @@ public class MediaProjectionPermissionActivity extends Activity {
final Intent launchingIntent = getIntent();
mReviewGrantedConsentRequired = launchingIntent.getBooleanExtra(
EXTRA_USER_REVIEW_GRANTED_CONSENT, false);
-
- mPackageName = getCallingPackage();
+ if (com.android.systemui.Flags.mediaProjectionRequestAttributionFix()) {
+ mPackageName = getLaunchedFromPackage();
+ } else {
+ mPackageName = getCallingPackage();
+ }
// This activity is launched directly by an app, or system server. System server provides
// the package name through the intent if so.