Files
Daniel Elliott c080f0d97f Add Discord community version (64-bit only)
- Added realracing3-community.apk (71.57 MB)
- Removed 32-bit support (armeabi-v7a)
- Only includes arm64-v8a libraries
- Decompiled source code included
- Added README-community.md with analysis
2026-02-18 15:48:36 -08:00

320 lines
18 KiB
Java

package androidx.credentials.provider;
import android.annotation.SuppressLint;
import android.app.slice.Slice;
import android.app.slice.SliceSpec;
import android.os.Build;
import android.os.Bundle;
import androidx.annotation.RequiresApi;
import androidx.annotation.RestrictTo;
import androidx.credentials.PasswordCredential;
import androidx.credentials.PublicKeyCredential;
import java.util.ArrayList;
import java.util.List;
import kotlin.collections.CollectionsKt__CollectionsKt;
import kotlin.jvm.internal.DefaultConstructorMarker;
import kotlin.jvm.internal.Intrinsics;
/* loaded from: classes.dex */
public abstract class CredentialEntry {
public static final Companion Companion = new Companion(null);
public static final String EXTRA_CREDENTIAL_ENTRY_AFFILIATED_DOMAIN_PREFIX = "androidx.credentials.provider.extra.CREDENTIAL_ENTRY_AFFILIATED_DOMAIN_";
public static final String EXTRA_CREDENTIAL_ENTRY_ENTRY_GROUP_ID_PREFIX = "androidx.credentials.provider.extra.CREDENTIAL_ENTRY_ENTRY_GROUP_ID_";
public static final String EXTRA_CREDENTIAL_ENTRY_ENTRY_TYPE_PREFIX = "androidx.credentials.provider.extra.CREDENTIAL_ENTRY_TYPE_";
public static final String EXTRA_CREDENTIAL_ENTRY_HAS_DEFAULT_ICON_PREFIX = "androidx.credentials.provider.extra.HAS_DEFAULT_ICON_";
public static final String EXTRA_CREDENTIAL_ENTRY_IS_AUTO_SELECT_ALLOWED_FROM_OPTION_PREFIX = "androidx.credentials.provider.extra.IS_AUTO_SELECT_ALLOWED_FROM_OPTION_";
public static final String EXTRA_CREDENTIAL_ENTRY_IS_AUTO_SELECT_ALLOWED_PREFIX = "androidx.credentials.provider.extra.IS_AUTO_SELECT_ALLOWED_";
public static final String EXTRA_CREDENTIAL_ENTRY_IS_DEFAULT_ICON_PREFERRED_AS_SINGLE_PROV_PREFIX = "androidx.credentials.provider.extra.CREDENTIAL_ENTRY_IS_DEFAULT_ICON_PREFERRED_AS_SINGLE_PROV_";
public static final String EXTRA_CREDENTIAL_ENTRY_LAST_USED_TIME_PREFIX = "androidx.credentials.provider.extra.LAST_USED_TIME_";
public static final String EXTRA_CREDENTIAL_ENTRY_OPTION_DATA_PREFIX = "androidx.credentials.provider.extra.CREDENTIAL_OPTION_DATA_";
public static final String EXTRA_CREDENTIAL_ENTRY_OPTION_ID_PREFIX = "androidx.credentials.provider.extra.CREDENTIAL_OPTION_ID_";
public static final String EXTRA_CREDENTIAL_ENTRY_OPTION_TYPE_PREFIX = "androidx.credentials.provider.extra.CREDENTIAL_OPTION_TYPE_";
public static final String EXTRA_CREDENTIAL_ENTRY_PENDING_INTENT_PREFIX = "androidx.credentials.provider.extra.PENDING_INTENT_";
public static final String EXTRA_CREDENTIAL_ENTRY_SIZE = "androidx.credentials.provider.extra.CREDENTIAL_ENTRY_SIZE";
public static final String EXTRA_CREDENTIAL_SUBTITLE_PREFIX = "androidx.credentials.provider.extra.SUBTITLE_";
public static final String EXTRA_CREDENTIAL_TITLE_PREFIX = "androidx.credentials.provider.extra.TITLE_";
public static final String EXTRA_CREDENTIAL_TYPE_DISPLAY_NAME_PREFIX = "androidx.credentials.provider.extra.TYPE_DISPLAY_NAME_";
public static final String EXTRA_CREDENTIAL_TYPE_ICON_PREFIX = "androidx.credentials.provider.extra.ICON_";
public static final String FALSE_STRING = "false";
public static final int REVISION_ID = 1;
public static final String SLICE_HINT_AFFILIATED_DOMAIN = "androidx.credentials.provider.credentialEntry.SLICE_HINT_AFFILIATED_DOMAIN";
public static final String SLICE_HINT_ALLOWED_AUTHENTICATORS = "androidx.credentials.provider.credentialEntry.SLICE_HINT_ALLOWED_AUTHENTICATORS";
public static final String SLICE_HINT_AUTO_ALLOWED = "androidx.credentials.provider.credentialEntry.SLICE_HINT_AUTO_ALLOWED";
public static final String SLICE_HINT_AUTO_SELECT_FROM_OPTION = "androidx.credentials.provider.credentialEntry.SLICE_HINT_AUTO_SELECT_FROM_OPTION";
public static final String SLICE_HINT_BIOMETRIC_PROMPT_DATA = "androidx.credentials.provider.credentialEntry.SLICE_HINT_BIOMETRIC_PROMPT_DATA";
public static final String SLICE_HINT_CRYPTO_OP_ID = "androidx.credentials.provider.credentialEntry.SLICE_HINT_CRYPTO_OP_ID";
public static final String SLICE_HINT_DEDUPLICATION_ID = "androidx.credentials.provider.credentialEntry.SLICE_HINT_DEDUPLICATION_ID";
public static final String SLICE_HINT_DEFAULT_ICON_RES_ID = "androidx.credentials.provider.credentialEntry.SLICE_HINT_DEFAULT_ICON_RES_ID";
public static final String SLICE_HINT_ICON = "androidx.credentials.provider.credentialEntry.SLICE_HINT_PROFILE_ICON";
public static final String SLICE_HINT_IS_DEFAULT_ICON_PREFERRED = "androidx.credentials.provider.credentialEntry.SLICE_HINT_IS_DEFAULT_ICON_PREFERRED";
public static final String SLICE_HINT_LAST_USED_TIME_MILLIS = "androidx.credentials.provider.credentialEntry.SLICE_HINT_LAST_USED_TIME_MILLIS";
public static final String SLICE_HINT_OPTION_ID = "androidx.credentials.provider.credentialEntry.SLICE_HINT_OPTION_ID";
public static final String SLICE_HINT_PENDING_INTENT = "androidx.credentials.provider.credentialEntry.SLICE_HINT_PENDING_INTENT";
public static final String SLICE_HINT_SUBTITLE = "androidx.credentials.provider.credentialEntry.SLICE_HINT_CREDENTIAL_TYPE_DISPLAY_NAME";
public static final String SLICE_HINT_TITLE = "androidx.credentials.provider.credentialEntry.SLICE_HINT_USER_NAME";
public static final String SLICE_HINT_TYPE_DISPLAY_NAME = "androidx.credentials.provider.credentialEntry.SLICE_HINT_TYPE_DISPLAY_NAME";
public static final String TRUE_STRING = "true";
private final CharSequence affiliatedDomain;
private final BeginGetCredentialOption beginGetCredentialOption;
private final BiometricPromptData biometricPromptData;
private final CharSequence entryGroupId;
private final boolean isDefaultIconPreferredAsSingleProvider;
private final String type;
public static final CredentialEntry fromCredentialEntry(android.service.credentials.CredentialEntry credentialEntry) {
return Companion.fromCredentialEntry(credentialEntry);
}
public final CharSequence getAffiliatedDomain() {
return this.affiliatedDomain;
}
public final BeginGetCredentialOption getBeginGetCredentialOption() {
return this.beginGetCredentialOption;
}
public final BiometricPromptData getBiometricPromptData() {
return this.biometricPromptData;
}
public final CharSequence getEntryGroupId() {
return this.entryGroupId;
}
@RestrictTo({RestrictTo.Scope.LIBRARY_GROUP})
public String getType() {
return this.type;
}
public final boolean isDefaultIconPreferredAsSingleProvider() {
return this.isDefaultIconPreferredAsSingleProvider;
}
public CredentialEntry(String type, BeginGetCredentialOption beginGetCredentialOption, CharSequence entryGroupId, boolean z, CharSequence charSequence, BiometricPromptData biometricPromptData) {
Intrinsics.checkNotNullParameter(type, "type");
Intrinsics.checkNotNullParameter(beginGetCredentialOption, "beginGetCredentialOption");
Intrinsics.checkNotNullParameter(entryGroupId, "entryGroupId");
this.type = type;
this.beginGetCredentialOption = beginGetCredentialOption;
this.entryGroupId = entryGroupId;
this.isDefaultIconPreferredAsSingleProvider = z;
this.affiliatedDomain = charSequence;
this.biometricPromptData = biometricPromptData;
}
public /* synthetic */ CredentialEntry(String str, BeginGetCredentialOption beginGetCredentialOption, CharSequence charSequence, boolean z, CharSequence charSequence2, BiometricPromptData biometricPromptData, int i, DefaultConstructorMarker defaultConstructorMarker) {
this(str, beginGetCredentialOption, charSequence, z, (i & 16) != 0 ? null : charSequence2, (i & 32) != 0 ? null : biometricPromptData);
}
@RequiresApi(34)
public static final class Api34Impl {
public static final Api34Impl INSTANCE = new Api34Impl();
private Api34Impl() {
}
public static final CredentialEntry fromCredentialEntry(android.service.credentials.CredentialEntry credentialEntry) {
Intrinsics.checkNotNullParameter(credentialEntry, "credentialEntry");
Slice slice = credentialEntry.getSlice();
Intrinsics.checkNotNullExpressionValue(slice, "credentialEntry.slice");
return CredentialEntry.Companion.fromSlice$credentials_release(slice);
}
}
@RequiresApi(35)
public static final class Api35Impl {
public static final Api35Impl INSTANCE = new Api35Impl();
private Api35Impl() {
}
public static final Slice toSlice(CredentialEntry entry) {
Intrinsics.checkNotNullParameter(entry, "entry");
if (entry instanceof PasswordCredentialEntry) {
return PasswordCredentialEntry.Companion.toSlice((PasswordCredentialEntry) entry);
}
if (entry instanceof PublicKeyCredentialEntry) {
return PublicKeyCredentialEntry.Companion.toSlice((PublicKeyCredentialEntry) entry);
}
if (entry instanceof CustomCredentialEntry) {
return CustomCredentialEntry.Companion.toSlice((CustomCredentialEntry) entry);
}
return null;
}
@SuppressLint({"WrongConstant"})
@RestrictTo({RestrictTo.Scope.LIBRARY})
public static final CredentialEntry fromSlice(Slice slice) {
SliceSpec spec;
Intrinsics.checkNotNullParameter(slice, "slice");
try {
spec = slice.getSpec();
String type = spec != null ? spec.getType() : null;
if (Intrinsics.areEqual(type, PasswordCredential.TYPE_PASSWORD_CREDENTIAL)) {
PasswordCredentialEntry fromSlice = PasswordCredentialEntry.Companion.fromSlice(slice);
Intrinsics.checkNotNull(fromSlice);
return fromSlice;
}
if (Intrinsics.areEqual(type, PublicKeyCredential.TYPE_PUBLIC_KEY_CREDENTIAL)) {
PublicKeyCredentialEntry fromSlice2 = PublicKeyCredentialEntry.Companion.fromSlice(slice);
Intrinsics.checkNotNull(fromSlice2);
return fromSlice2;
}
CustomCredentialEntry fromSlice3 = CustomCredentialEntry.Companion.fromSlice(slice);
Intrinsics.checkNotNull(fromSlice3);
return fromSlice3;
} catch (Exception unused) {
return CustomCredentialEntry.Companion.fromSlice(slice);
}
}
}
@RequiresApi(28)
public static final class Api28Impl {
public static final Api28Impl INSTANCE = new Api28Impl();
private Api28Impl() {
}
public static final Slice toSlice(CredentialEntry entry) {
Intrinsics.checkNotNullParameter(entry, "entry");
if (entry instanceof PasswordCredentialEntry) {
return PasswordCredentialEntry.Companion.toSlice((PasswordCredentialEntry) entry);
}
if (entry instanceof PublicKeyCredentialEntry) {
return PublicKeyCredentialEntry.Companion.toSlice((PublicKeyCredentialEntry) entry);
}
if (entry instanceof CustomCredentialEntry) {
return CustomCredentialEntry.Companion.toSlice((CustomCredentialEntry) entry);
}
return null;
}
@SuppressLint({"WrongConstant"})
@RestrictTo({RestrictTo.Scope.LIBRARY})
public static final CredentialEntry fromSlice(Slice slice) {
Intrinsics.checkNotNullParameter(slice, "slice");
try {
SliceSpec spec = slice.getSpec();
String type = spec != null ? spec.getType() : null;
if (Intrinsics.areEqual(type, PasswordCredential.TYPE_PASSWORD_CREDENTIAL)) {
PasswordCredentialEntry fromSlice = PasswordCredentialEntry.Companion.fromSlice(slice);
Intrinsics.checkNotNull(fromSlice);
return fromSlice;
}
if (Intrinsics.areEqual(type, PublicKeyCredential.TYPE_PUBLIC_KEY_CREDENTIAL)) {
PublicKeyCredentialEntry fromSlice2 = PublicKeyCredentialEntry.Companion.fromSlice(slice);
Intrinsics.checkNotNull(fromSlice2);
return fromSlice2;
}
CustomCredentialEntry fromSlice3 = CustomCredentialEntry.Companion.fromSlice(slice);
Intrinsics.checkNotNull(fromSlice3);
return fromSlice3;
} catch (Exception unused) {
return CustomCredentialEntry.Companion.fromSlice(slice);
}
}
}
public static final class Companion {
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
this();
}
private Companion() {
}
public final CredentialEntry fromCredentialEntry(android.service.credentials.CredentialEntry credentialEntry) {
Intrinsics.checkNotNullParameter(credentialEntry, "credentialEntry");
if (Build.VERSION.SDK_INT >= 34) {
return Api34Impl.fromCredentialEntry(credentialEntry);
}
return null;
}
@RestrictTo({RestrictTo.Scope.LIBRARY})
public final CredentialEntry fromSlice$credentials_release(Slice slice) {
Intrinsics.checkNotNullParameter(slice, "slice");
int i = Build.VERSION.SDK_INT;
if (i >= 35) {
return Api35Impl.fromSlice(slice);
}
if (i >= 28) {
return Api28Impl.fromSlice(slice);
}
return null;
}
public final Slice toSlice$credentials_release(CredentialEntry entry) {
Intrinsics.checkNotNullParameter(entry, "entry");
int i = Build.VERSION.SDK_INT;
if (i >= 35) {
return Api35Impl.toSlice(entry);
}
if (i >= 28) {
return Api28Impl.toSlice(entry);
}
return null;
}
@RequiresApi(23)
public final void marshall$credentials_release(List<? extends CredentialEntry> list, Bundle bundle) {
Intrinsics.checkNotNullParameter(list, "<this>");
Intrinsics.checkNotNullParameter(bundle, "bundle");
bundle.putInt(CredentialEntry.EXTRA_CREDENTIAL_ENTRY_SIZE, list.size());
int size = list.size();
for (int i = 0; i < size; i++) {
CredentialEntry credentialEntry = list.get(i);
if (credentialEntry instanceof PasswordCredentialEntry) {
PasswordCredentialEntry.Companion.marshall$credentials_release((PasswordCredentialEntry) credentialEntry, bundle, i);
} else if (credentialEntry instanceof PublicKeyCredentialEntry) {
PublicKeyCredentialEntry.Companion.marshall$credentials_release((PublicKeyCredentialEntry) credentialEntry, bundle, i);
} else if (credentialEntry instanceof CustomCredentialEntry) {
CustomCredentialEntry.Companion.marshall$credentials_release((CustomCredentialEntry) credentialEntry, bundle, i);
}
}
}
public final void marshallCommonProperties$credentials_release(CredentialEntry credentialEntry, Bundle bundle, int i) {
Intrinsics.checkNotNullParameter(credentialEntry, "<this>");
Intrinsics.checkNotNullParameter(bundle, "bundle");
bundle.putString(CredentialEntry.EXTRA_CREDENTIAL_ENTRY_ENTRY_TYPE_PREFIX + i, credentialEntry.getType());
bundle.putString(CredentialEntry.EXTRA_CREDENTIAL_ENTRY_OPTION_ID_PREFIX + i, credentialEntry.getBeginGetCredentialOption().getId());
bundle.putString(CredentialEntry.EXTRA_CREDENTIAL_ENTRY_OPTION_TYPE_PREFIX + i, credentialEntry.getBeginGetCredentialOption().getType());
bundle.putBundle(CredentialEntry.EXTRA_CREDENTIAL_ENTRY_OPTION_DATA_PREFIX + i, credentialEntry.getBeginGetCredentialOption().getCandidateQueryData());
bundle.putCharSequence(CredentialEntry.EXTRA_CREDENTIAL_ENTRY_ENTRY_GROUP_ID_PREFIX + i, credentialEntry.getEntryGroupId());
bundle.putBoolean(CredentialEntry.EXTRA_CREDENTIAL_ENTRY_IS_DEFAULT_ICON_PREFERRED_AS_SINGLE_PROV_PREFIX + i, credentialEntry.isDefaultIconPreferredAsSingleProvider());
CharSequence affiliatedDomain = credentialEntry.getAffiliatedDomain();
if (affiliatedDomain != null) {
bundle.putCharSequence(CredentialEntry.EXTRA_CREDENTIAL_ENTRY_AFFILIATED_DOMAIN_PREFIX + i, affiliatedDomain);
}
}
@RequiresApi(23)
public final List<CredentialEntry> unmarshallCredentialEntries$credentials_release(Bundle bundle) {
Object unmarshall$credentials_release;
Intrinsics.checkNotNullParameter(bundle, "<this>");
ArrayList arrayList = new ArrayList();
int i = bundle.getInt(CredentialEntry.EXTRA_CREDENTIAL_ENTRY_SIZE, 0);
for (int i2 = 0; i2 < i; i2++) {
String string = bundle.getString(CredentialEntry.EXTRA_CREDENTIAL_ENTRY_ENTRY_TYPE_PREFIX + i2);
if (string == null) {
return CollectionsKt__CollectionsKt.emptyList();
}
if (Intrinsics.areEqual(string, PasswordCredential.TYPE_PASSWORD_CREDENTIAL)) {
unmarshall$credentials_release = PasswordCredentialEntry.Companion.unmarshall$credentials_release(bundle, i2);
} else if (Intrinsics.areEqual(string, PublicKeyCredential.TYPE_PUBLIC_KEY_CREDENTIAL)) {
unmarshall$credentials_release = PublicKeyCredentialEntry.Companion.unmarshall$credentials_release(bundle, i2);
} else {
unmarshall$credentials_release = CustomCredentialEntry.Companion.unmarshall$credentials_release(bundle, i2, string);
}
if (unmarshall$credentials_release == null) {
return CollectionsKt__CollectionsKt.emptyList();
}
arrayList.add(unmarshall$credentials_release);
}
return arrayList;
}
}
}