Merge "Use AttributionSource Builder" into stage-aosp-master am: d34ebacb36 am: f81f06da29 am: c786f0e5ae am: 0ad7eb2673

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15889347

Change-Id: If0f3080880fe98dbc316756e584eea20bc88dc4b
This commit is contained in:
TreeHugger Robot
2021-10-05 23:32:19 +00:00
committed by Automerger Merge Worker
3 changed files with 16 additions and 2 deletions

View File

@@ -10004,6 +10004,7 @@ package android.content {
public static final class AttributionSource.Builder {
ctor public AttributionSource.Builder(int);
ctor public AttributionSource.Builder(@NonNull android.content.AttributionSource);
method @NonNull public android.content.AttributionSource build();
method @NonNull public android.content.AttributionSource.Builder setAttributionTag(@Nullable String);
method @NonNull public android.content.AttributionSource.Builder setNext(@Nullable android.content.AttributionSource);

View File

@@ -88,8 +88,9 @@ public final class BluetoothManager {
uid = android.os.Process.SYSTEM_UID;
}
try {
res = new AttributionSource(uid,
AppGlobals.getPackageManager().getPackagesForUid(uid)[0], null);
res = new AttributionSource.Builder(uid)
.setPackageName(AppGlobals.getPackageManager().getPackagesForUid(uid)[0])
.build();
} catch (RemoteException ignored) {
}
}

View File

@@ -474,6 +474,18 @@ public final class AttributionSource implements Parcelable {
mAttributionSourceState.uid = uid;
}
public Builder(@NonNull AttributionSource current) {
if (current == null) {
throw new IllegalArgumentException("current AttributionSource can not be null");
}
mAttributionSourceState.uid = current.getUid();
mAttributionSourceState.packageName = current.getPackageName();
mAttributionSourceState.attributionTag = current.getAttributionTag();
mAttributionSourceState.token = current.getToken();
mAttributionSourceState.renouncedPermissions =
current.mAttributionSourceState.renouncedPermissions;
}
/**
* The package that is accessing the permission protected data.
*/