Files
rr3-apk/decompiled/sources/androidx/credentials/playservices/controllers/BeginSignIn/CredentialProviderBeginSignInController.java
Daniel Elliott f9d20bb3fc Add decompiled APK source code (JADX)
- 28,932 files
- Full Java source code
- Smali files
- Resources

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-18 14:52:23 -08:00

259 lines
15 KiB
Java

package androidx.credentials.playservices.controllers.BeginSignIn;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.CancellationSignal;
import android.os.Handler;
import android.os.Looper;
import android.os.ResultReceiver;
import android.util.Log;
import androidx.annotation.VisibleForTesting;
import androidx.credentials.Credential;
import androidx.credentials.CredentialManagerCallback;
import androidx.credentials.GetCredentialRequest;
import androidx.credentials.GetCredentialResponse;
import androidx.credentials.PasswordCredential;
import androidx.credentials.PublicKeyCredential;
import androidx.credentials.exceptions.GetCredentialCancellationException;
import androidx.credentials.exceptions.GetCredentialException;
import androidx.credentials.exceptions.GetCredentialInterruptedException;
import androidx.credentials.exceptions.GetCredentialUnknownException;
import androidx.credentials.playservices.CredentialProviderPlayServicesImpl;
import androidx.credentials.playservices.HiddenActivity;
import androidx.credentials.playservices.controllers.CreatePublicKeyCredential.PublicKeyCredentialControllerUtility;
import androidx.credentials.playservices.controllers.CredentialProviderBaseController;
import androidx.credentials.playservices.controllers.CredentialProviderController;
import com.google.android.gms.auth.api.identity.BeginSignInRequest;
import com.google.android.gms.auth.api.identity.Identity;
import com.google.android.gms.auth.api.identity.SignInCredential;
import com.google.android.gms.common.api.ApiException;
import com.google.android.libraries.identity.googleid.GoogleIdTokenCredential;
import java.util.concurrent.Executor;
import kotlin.Unit;
import kotlin.jvm.functions.Function0;
import kotlin.jvm.functions.Function2;
import kotlin.jvm.internal.DefaultConstructorMarker;
import kotlin.jvm.internal.Intrinsics;
import kotlin.jvm.internal.Ref;
/* loaded from: classes.dex */
public final class CredentialProviderBeginSignInController extends CredentialProviderController<GetCredentialRequest, BeginSignInRequest, SignInCredential, GetCredentialResponse, GetCredentialException> {
public static final Companion Companion = new Companion(null);
private static final String TAG = "BeginSignIn";
public CredentialManagerCallback<GetCredentialResponse, GetCredentialException> callback;
private CancellationSignal cancellationSignal;
private final Context context;
public Executor executor;
private final CredentialProviderBeginSignInController$resultReceiver$1 resultReceiver;
@VisibleForTesting(otherwise = 2)
public static /* synthetic */ void getCallback$annotations() {
}
@VisibleForTesting(otherwise = 2)
private static /* synthetic */ void getCancellationSignal$annotations() {
}
@VisibleForTesting(otherwise = 2)
public static /* synthetic */ void getExecutor$annotations() {
}
public static final CredentialProviderBeginSignInController getInstance(Context context) {
return Companion.getInstance(context);
}
public final void setCallback(CredentialManagerCallback<GetCredentialResponse, GetCredentialException> credentialManagerCallback) {
Intrinsics.checkNotNullParameter(credentialManagerCallback, "<set-?>");
this.callback = credentialManagerCallback;
}
public final void setExecutor(Executor executor) {
Intrinsics.checkNotNullParameter(executor, "<set-?>");
this.executor = executor;
}
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
/* JADX WARN: Type inference failed for: r0v2, types: [androidx.credentials.playservices.controllers.BeginSignIn.CredentialProviderBeginSignInController$resultReceiver$1] */
public CredentialProviderBeginSignInController(Context context) {
super(context);
Intrinsics.checkNotNullParameter(context, "context");
this.context = context;
final Handler handler = new Handler(Looper.getMainLooper());
this.resultReceiver = new ResultReceiver(handler) { // from class: androidx.credentials.playservices.controllers.BeginSignIn.CredentialProviderBeginSignInController$resultReceiver$1
@Override // android.os.ResultReceiver
public void onReceiveResult(int i, Bundle resultData) {
CancellationSignal cancellationSignal;
boolean maybeReportErrorFromResultReceiver;
Intrinsics.checkNotNullParameter(resultData, "resultData");
CredentialProviderBeginSignInController credentialProviderBeginSignInController = CredentialProviderBeginSignInController.this;
CredentialProviderBeginSignInController$resultReceiver$1$onReceiveResult$1 credentialProviderBeginSignInController$resultReceiver$1$onReceiveResult$1 = new CredentialProviderBeginSignInController$resultReceiver$1$onReceiveResult$1(CredentialProviderBaseController.Companion);
Executor executor = CredentialProviderBeginSignInController.this.getExecutor();
CredentialManagerCallback<GetCredentialResponse, GetCredentialException> callback = CredentialProviderBeginSignInController.this.getCallback();
cancellationSignal = CredentialProviderBeginSignInController.this.cancellationSignal;
maybeReportErrorFromResultReceiver = credentialProviderBeginSignInController.maybeReportErrorFromResultReceiver(resultData, credentialProviderBeginSignInController$resultReceiver$1$onReceiveResult$1, executor, callback, cancellationSignal);
if (maybeReportErrorFromResultReceiver) {
return;
}
CredentialProviderBeginSignInController.this.handleResponse$credentials_play_services_auth_release(resultData.getInt(CredentialProviderBaseController.ACTIVITY_REQUEST_CODE_TAG), i, (Intent) resultData.getParcelable(CredentialProviderBaseController.RESULT_DATA_TAG));
}
};
}
public final CredentialManagerCallback<GetCredentialResponse, GetCredentialException> getCallback() {
CredentialManagerCallback<GetCredentialResponse, GetCredentialException> credentialManagerCallback = this.callback;
if (credentialManagerCallback != null) {
return credentialManagerCallback;
}
Intrinsics.throwUninitializedPropertyAccessException("callback");
return null;
}
public final Executor getExecutor() {
Executor executor = this.executor;
if (executor != null) {
return executor;
}
Intrinsics.throwUninitializedPropertyAccessException("executor");
return null;
}
@Override // androidx.credentials.playservices.controllers.CredentialProviderController
public void invokePlayServices(GetCredentialRequest request, CredentialManagerCallback<GetCredentialResponse, GetCredentialException> callback, Executor executor, CancellationSignal cancellationSignal) {
Intrinsics.checkNotNullParameter(request, "request");
Intrinsics.checkNotNullParameter(callback, "callback");
Intrinsics.checkNotNullParameter(executor, "executor");
this.cancellationSignal = cancellationSignal;
setCallback(callback);
setExecutor(executor);
if (CredentialProviderPlayServicesImpl.Companion.cancellationReviewer$credentials_play_services_auth_release(cancellationSignal)) {
return;
}
BeginSignInRequest convertRequestToPlayServices = convertRequestToPlayServices(request);
Intent intent = new Intent(this.context, (Class<?>) HiddenActivity.class);
intent.putExtra(CredentialProviderBaseController.REQUEST_TAG, convertRequestToPlayServices);
generateHiddenActivityIntent(this.resultReceiver, intent, CredentialProviderBaseController.BEGIN_SIGN_IN_TAG);
try {
this.context.startActivity(intent);
} catch (Exception unused) {
CredentialProviderController.cancelOrCallbackExceptionOrResult(cancellationSignal, new CredentialProviderBeginSignInController$invokePlayServices$1(this));
}
}
/* JADX WARN: Type inference failed for: r5v2, types: [T, androidx.credentials.exceptions.GetCredentialUnknownException] */
/* JADX WARN: Type inference failed for: r5v7, types: [T, androidx.credentials.exceptions.GetCredentialInterruptedException] */
/* JADX WARN: Type inference failed for: r5v9, types: [T, androidx.credentials.exceptions.GetCredentialCancellationException] */
public final void handleResponse$credentials_play_services_auth_release(int i, int i2, Intent intent) {
CredentialProviderBaseController.Companion companion = CredentialProviderBaseController.Companion;
if (i != companion.getCONTROLLER_REQUEST_CODE$credentials_play_services_auth_release()) {
Log.w(TAG, "Returned request code " + companion.getCONTROLLER_REQUEST_CODE$credentials_play_services_auth_release() + " which does not match what was given " + i);
return;
}
if (CredentialProviderController.maybeReportErrorResultCodeGet(i2, new Function2() { // from class: androidx.credentials.playservices.controllers.BeginSignIn.CredentialProviderBeginSignInController$handleResponse$1
@Override // kotlin.jvm.functions.Function2
public /* bridge */ /* synthetic */ Object invoke(Object obj, Object obj2) {
invoke((CancellationSignal) obj, (Function0) obj2);
return Unit.INSTANCE;
}
public final void invoke(CancellationSignal cancellationSignal, Function0 f) {
Intrinsics.checkNotNullParameter(f, "f");
CredentialProviderController.Companion companion2 = CredentialProviderController.Companion;
CredentialProviderController.cancelOrCallbackExceptionOrResult(cancellationSignal, f);
}
}, new CredentialProviderBeginSignInController$handleResponse$2(this), this.cancellationSignal)) {
return;
}
try {
SignInCredential signInCredentialFromIntent = Identity.getSignInClient(this.context).getSignInCredentialFromIntent(intent);
Intrinsics.checkNotNullExpressionValue(signInCredentialFromIntent, "getSignInCredentialFromIntent(...)");
CredentialProviderController.cancelOrCallbackExceptionOrResult(this.cancellationSignal, new CredentialProviderBeginSignInController$handleResponse$3(this, convertResponseToCredentialManager(signInCredentialFromIntent)));
} catch (GetCredentialException e) {
CredentialProviderController.cancelOrCallbackExceptionOrResult(this.cancellationSignal, new CredentialProviderBeginSignInController$handleResponse$5(this, e));
} catch (ApiException e2) {
Ref.ObjectRef objectRef = new Ref.ObjectRef();
objectRef.element = new GetCredentialUnknownException(e2.getMessage());
if (e2.getStatusCode() == 16) {
objectRef.element = new GetCredentialCancellationException(e2.getMessage());
} else if (CredentialProviderBaseController.Companion.getRetryables().contains(Integer.valueOf(e2.getStatusCode()))) {
objectRef.element = new GetCredentialInterruptedException(e2.getMessage());
}
CredentialProviderController.cancelOrCallbackExceptionOrResult(this.cancellationSignal, new CredentialProviderBeginSignInController$handleResponse$4(this, objectRef));
} catch (Throwable th) {
CredentialProviderController.cancelOrCallbackExceptionOrResult(this.cancellationSignal, new CredentialProviderBeginSignInController$handleResponse$6(this, new GetCredentialUnknownException(th.getMessage())));
}
}
@Override // androidx.credentials.playservices.controllers.CredentialProviderController
@VisibleForTesting(otherwise = 4)
public BeginSignInRequest convertRequestToPlayServices(GetCredentialRequest request) {
Intrinsics.checkNotNullParameter(request, "request");
return BeginSignInControllerUtility.Companion.constructBeginSignInRequest$credentials_play_services_auth_release(request, this.context);
}
@Override // androidx.credentials.playservices.controllers.CredentialProviderController
@VisibleForTesting(otherwise = 4)
public GetCredentialResponse convertResponseToCredentialManager(SignInCredential response) {
Credential credential;
Intrinsics.checkNotNullParameter(response, "response");
if (response.getPassword() != null) {
String id = response.getId();
Intrinsics.checkNotNullExpressionValue(id, "getId(...)");
String password = response.getPassword();
Intrinsics.checkNotNull(password);
credential = new PasswordCredential(id, password);
} else if (response.getGoogleIdToken() != null) {
credential = createGoogleIdCredential(response);
} else if (response.getPublicKeyCredential() != null) {
credential = new PublicKeyCredential(PublicKeyCredentialControllerUtility.Companion.toAssertPasskeyResponse(response));
} else {
Log.w(TAG, "Credential returned but no google Id or password or passkey found");
credential = null;
}
if (credential == null) {
throw new GetCredentialUnknownException("When attempting to convert get response, null credential found");
}
return new GetCredentialResponse(credential);
}
private final GoogleIdTokenCredential createGoogleIdCredential(SignInCredential signInCredential) {
GoogleIdTokenCredential.Builder builder = new GoogleIdTokenCredential.Builder();
String id = signInCredential.getId();
Intrinsics.checkNotNullExpressionValue(id, "getId(...)");
GoogleIdTokenCredential.Builder id2 = builder.setId(id);
String googleIdToken = signInCredential.getGoogleIdToken();
Intrinsics.checkNotNull(googleIdToken);
GoogleIdTokenCredential.Builder idToken = id2.setIdToken(googleIdToken);
if (signInCredential.getDisplayName() != null) {
idToken.setDisplayName(signInCredential.getDisplayName());
}
if (signInCredential.getGivenName() != null) {
idToken.setGivenName(signInCredential.getGivenName());
}
if (signInCredential.getFamilyName() != null) {
idToken.setFamilyName(signInCredential.getFamilyName());
}
if (signInCredential.getPhoneNumber() != null) {
idToken.setPhoneNumber(signInCredential.getPhoneNumber());
}
if (signInCredential.getProfilePictureUri() != null) {
idToken.setProfilePictureUri(signInCredential.getProfilePictureUri());
}
return idToken.build();
}
public static final class Companion {
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
this();
}
private Companion() {
}
public final CredentialProviderBeginSignInController getInstance(Context context) {
Intrinsics.checkNotNullParameter(context, "context");
return new CredentialProviderBeginSignInController(context);
}
}
}