Use AttributionSource Builder
Attribution source constructor are hidden api Add a Builder option to take a AttributionSource as parameter Test: atest BluetoothInstrumentationTests Bug: 195144968 Tag: #refactor Ignore-AOSP-First: No such thing on aosp Change-Id: I901c8afff6a40bd8484fd8e10baf290aa483c280
This commit is contained in:
@@ -9975,6 +9975,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);
|
||||
|
||||
@@ -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) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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.
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user