diff options
| -rw-r--r-- | core/java/android/content/AttributionSource.java | 9 | ||||
| -rw-r--r-- | core/java/android/permission/flags.aconfig | 7 |
2 files changed, 16 insertions, 0 deletions
diff --git a/core/java/android/content/AttributionSource.java b/core/java/android/content/AttributionSource.java index ffed5366d31b..ebf522b66c4e 100644 --- a/core/java/android/content/AttributionSource.java +++ b/core/java/android/content/AttributionSource.java @@ -34,6 +34,7 @@ import android.os.UserHandle; import android.permission.PermissionManager; import android.permission.flags.Flags; import android.util.ArraySet; +import android.util.Log; import com.android.internal.annotations.Immutable; @@ -90,6 +91,7 @@ import java.util.Set; */ @Immutable public final class AttributionSource implements Parcelable { + private static final String TAG = "AttributionSource"; private static final String DESCRIPTOR = "android.content.AttributionSource"; private static final Binder sDefaultToken = new Binder(DESCRIPTOR); @@ -273,6 +275,13 @@ public final class AttributionSource implements Parcelable { final AttributionSource globalSource = ActivityThread.currentAttributionSource(); if (globalSource != null) { + if (Flags.enforceDefaultDeviceIdInMyAttributionSource() + && globalSource.getDeviceId() != Context.DEVICE_ID_DEFAULT) { + Log.w(TAG, + "Avoid using myAttributionSource() to fetch an attributionSource with a " + + "non-default device Id"); + return globalSource.withDeviceId(Context.DEVICE_ID_DEFAULT); + } return globalSource; } diff --git a/core/java/android/permission/flags.aconfig b/core/java/android/permission/flags.aconfig index daa5584462ba..d469a2f985fa 100644 --- a/core/java/android/permission/flags.aconfig +++ b/core/java/android/permission/flags.aconfig @@ -507,3 +507,10 @@ flag { description: "Use IoThread handler for AppOpsService background/IO work." bug: "394380603" } + +flag { + name: "enforce_default_device_id_in_my_attribution_source" + namespace: "permissions" + description: "Force AttributionSource.myAttributionSource() to return a default device id" + bug: "343121936" +} |