Merge "Clear/restore calling app identity prior to ui launch." into udc-dev am: 89b4148cb8 am: a0d328baf9
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22144642 Change-Id: I52023ad69c358bb01f05fb1ed071ff8559a55032 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -27,6 +27,7 @@ import android.credentials.GetCredentialResponse;
|
||||
import android.credentials.IGetCredentialCallback;
|
||||
import android.credentials.ui.ProviderData;
|
||||
import android.credentials.ui.RequestInfo;
|
||||
import android.os.Binder;
|
||||
import android.os.CancellationSignal;
|
||||
import android.os.RemoteException;
|
||||
import android.service.credentials.CallingAppInfo;
|
||||
@@ -84,11 +85,12 @@ public class GetRequestSession extends RequestSession<GetCredentialRequest,
|
||||
protected void launchUiWithProviderData(ArrayList<ProviderData> providerDataList) {
|
||||
mChosenProviderFinalPhaseMetric.setUiCallStartTimeNanoseconds(System.nanoTime());
|
||||
try {
|
||||
mClientCallback.onPendingIntent(mCredentialManagerUi.createPendingIntent(
|
||||
Binder.withCleanCallingIdentity(() ->
|
||||
mClientCallback.onPendingIntent(mCredentialManagerUi.createPendingIntent(
|
||||
RequestInfo.newGetRequestInfo(
|
||||
mRequestId, mClientRequest, mClientAppInfo.getPackageName()),
|
||||
providerDataList));
|
||||
} catch (RemoteException e) {
|
||||
mRequestId, mClientRequest, mClientAppInfo.getPackageName()),
|
||||
providerDataList)));
|
||||
} catch (RuntimeException e) {
|
||||
mChosenProviderFinalPhaseMetric.setUiReturned(false);
|
||||
respondToClientWithErrorAndFinish(
|
||||
GetCredentialException.TYPE_UNKNOWN, "Unable to instantiate selector");
|
||||
|
||||
Reference in New Issue
Block a user