- 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
399 lines
16 KiB
Java
399 lines
16 KiB
Java
package androidx.core.app;
|
|
|
|
import android.annotation.SuppressLint;
|
|
import android.app.Activity;
|
|
import android.app.SharedElementCallback;
|
|
import android.content.Context;
|
|
import android.content.ContextWrapper;
|
|
import android.content.Intent;
|
|
import android.content.IntentSender;
|
|
import android.content.pm.PackageManager;
|
|
import android.graphics.Matrix;
|
|
import android.graphics.RectF;
|
|
import android.net.Uri;
|
|
import android.os.Build;
|
|
import android.os.Bundle;
|
|
import android.os.Handler;
|
|
import android.os.Parcelable;
|
|
import android.text.TextUtils;
|
|
import android.view.Display;
|
|
import android.view.DragEvent;
|
|
import android.view.View;
|
|
import androidx.annotation.IdRes;
|
|
import androidx.annotation.IntRange;
|
|
import androidx.annotation.NonNull;
|
|
import androidx.annotation.Nullable;
|
|
import androidx.annotation.RequiresApi;
|
|
import androidx.annotation.RestrictTo;
|
|
import androidx.core.app.ActivityCompat;
|
|
import androidx.core.app.SharedElementCallback;
|
|
import androidx.core.content.ContextCompat;
|
|
import androidx.core.content.LocusIdCompat;
|
|
import androidx.core.view.DragAndDropPermissionsCompat;
|
|
import java.lang.reflect.InvocationTargetException;
|
|
import java.util.Arrays;
|
|
import java.util.HashSet;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
/* loaded from: classes.dex */
|
|
public class ActivityCompat extends ContextCompat {
|
|
private static PermissionCompatDelegate sDelegate;
|
|
|
|
public interface OnRequestPermissionsResultCallback {
|
|
void onRequestPermissionsResult(int i, @NonNull String[] strArr, @NonNull int[] iArr);
|
|
}
|
|
|
|
public interface PermissionCompatDelegate {
|
|
boolean onActivityResult(@NonNull Activity activity, @IntRange(from = 0) int i, int i2, @Nullable Intent intent);
|
|
|
|
boolean requestPermissions(@NonNull Activity activity, @NonNull String[] strArr, @IntRange(from = 0) int i);
|
|
}
|
|
|
|
@RestrictTo({RestrictTo.Scope.LIBRARY_GROUP_PREFIX})
|
|
public interface RequestPermissionsRequestCodeValidator {
|
|
void validateRequestPermissionsRequestCode(int i);
|
|
}
|
|
|
|
@Nullable
|
|
@RestrictTo({RestrictTo.Scope.LIBRARY_GROUP_PREFIX})
|
|
public static PermissionCompatDelegate getPermissionCompatDelegate() {
|
|
return sDelegate;
|
|
}
|
|
|
|
public static void setPermissionCompatDelegate(@Nullable PermissionCompatDelegate permissionCompatDelegate) {
|
|
sDelegate = permissionCompatDelegate;
|
|
}
|
|
|
|
@Deprecated
|
|
public static boolean invalidateOptionsMenu(Activity activity) {
|
|
activity.invalidateOptionsMenu();
|
|
return true;
|
|
}
|
|
|
|
public static void startActivityForResult(@NonNull Activity activity, @NonNull Intent intent, int i, @Nullable Bundle bundle) {
|
|
activity.startActivityForResult(intent, i, bundle);
|
|
}
|
|
|
|
public static void startIntentSenderForResult(@NonNull Activity activity, @NonNull IntentSender intentSender, int i, @Nullable Intent intent, int i2, int i3, int i4, @Nullable Bundle bundle) throws IntentSender.SendIntentException {
|
|
activity.startIntentSenderForResult(intentSender, i, intent, i2, i3, i4, bundle);
|
|
}
|
|
|
|
public static void finishAffinity(@NonNull Activity activity) {
|
|
activity.finishAffinity();
|
|
}
|
|
|
|
public static void finishAfterTransition(@NonNull Activity activity) {
|
|
Api21Impl.finishAfterTransition(activity);
|
|
}
|
|
|
|
@Nullable
|
|
public static Uri getReferrer(@NonNull Activity activity) {
|
|
return Api22Impl.getReferrer(activity);
|
|
}
|
|
|
|
@NonNull
|
|
public static <T extends View> T requireViewById(@NonNull Activity activity, @IdRes int i) {
|
|
if (Build.VERSION.SDK_INT >= 28) {
|
|
return (T) Api28Impl.requireViewById(activity, i);
|
|
}
|
|
T t = (T) activity.findViewById(i);
|
|
if (t != null) {
|
|
return t;
|
|
}
|
|
throw new IllegalArgumentException("ID does not reference a View inside this Activity");
|
|
}
|
|
|
|
public static void setEnterSharedElementCallback(@NonNull Activity activity, @Nullable SharedElementCallback sharedElementCallback) {
|
|
Api21Impl.setEnterSharedElementCallback(activity, sharedElementCallback != null ? new SharedElementCallback21Impl(sharedElementCallback) : null);
|
|
}
|
|
|
|
public static void setExitSharedElementCallback(@NonNull Activity activity, @Nullable SharedElementCallback sharedElementCallback) {
|
|
Api21Impl.setExitSharedElementCallback(activity, sharedElementCallback != null ? new SharedElementCallback21Impl(sharedElementCallback) : null);
|
|
}
|
|
|
|
public static void postponeEnterTransition(@NonNull Activity activity) {
|
|
Api21Impl.postponeEnterTransition(activity);
|
|
}
|
|
|
|
public static void startPostponedEnterTransition(@NonNull Activity activity) {
|
|
Api21Impl.startPostponedEnterTransition(activity);
|
|
}
|
|
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
public static void requestPermissions(@NonNull Activity activity, @NonNull String[] strArr, @IntRange(from = 0) int i) {
|
|
PermissionCompatDelegate permissionCompatDelegate = sDelegate;
|
|
if (permissionCompatDelegate == null || !permissionCompatDelegate.requestPermissions(activity, strArr, i)) {
|
|
HashSet hashSet = new HashSet();
|
|
for (int i2 = 0; i2 < strArr.length; i2++) {
|
|
if (TextUtils.isEmpty(strArr[i2])) {
|
|
throw new IllegalArgumentException("Permission request for permissions " + Arrays.toString(strArr) + " must not contain null or empty values");
|
|
}
|
|
if (Build.VERSION.SDK_INT < 33 && TextUtils.equals(strArr[i2], "android.permission.POST_NOTIFICATIONS")) {
|
|
hashSet.add(Integer.valueOf(i2));
|
|
}
|
|
}
|
|
int size = hashSet.size();
|
|
String[] strArr2 = size > 0 ? new String[strArr.length - size] : strArr;
|
|
if (size > 0) {
|
|
if (size == strArr.length) {
|
|
return;
|
|
}
|
|
int i3 = 0;
|
|
for (int i4 = 0; i4 < strArr.length; i4++) {
|
|
if (!hashSet.contains(Integer.valueOf(i4))) {
|
|
strArr2[i3] = strArr[i4];
|
|
i3++;
|
|
}
|
|
}
|
|
}
|
|
if (activity instanceof RequestPermissionsRequestCodeValidator) {
|
|
((RequestPermissionsRequestCodeValidator) activity).validateRequestPermissionsRequestCode(i);
|
|
}
|
|
Api23Impl.requestPermissions(activity, strArr, i);
|
|
}
|
|
}
|
|
|
|
/* renamed from: androidx.core.app.ActivityCompat$1, reason: invalid class name */
|
|
public class AnonymousClass1 implements Runnable {
|
|
final /* synthetic */ Activity val$activity;
|
|
final /* synthetic */ String[] val$permissionsArray;
|
|
final /* synthetic */ int val$requestCode;
|
|
|
|
public AnonymousClass1(String[] strArr, Activity activity, int i) {
|
|
this.val$permissionsArray = strArr;
|
|
this.val$activity = activity;
|
|
this.val$requestCode = i;
|
|
}
|
|
|
|
@Override // java.lang.Runnable
|
|
public void run() {
|
|
int[] iArr = new int[this.val$permissionsArray.length];
|
|
PackageManager packageManager = this.val$activity.getPackageManager();
|
|
String packageName = this.val$activity.getPackageName();
|
|
int length = this.val$permissionsArray.length;
|
|
for (int i = 0; i < length; i++) {
|
|
iArr[i] = packageManager.checkPermission(this.val$permissionsArray[i], packageName);
|
|
}
|
|
((OnRequestPermissionsResultCallback) this.val$activity).onRequestPermissionsResult(this.val$requestCode, this.val$permissionsArray, iArr);
|
|
}
|
|
}
|
|
|
|
public static boolean shouldShowRequestPermissionRationale(@NonNull Activity activity, @NonNull String str) {
|
|
int i = Build.VERSION.SDK_INT;
|
|
if (i < 33 && TextUtils.equals("android.permission.POST_NOTIFICATIONS", str)) {
|
|
return false;
|
|
}
|
|
if (i >= 32) {
|
|
return Api32Impl.shouldShowRequestPermissionRationale(activity, str);
|
|
}
|
|
if (i == 31) {
|
|
return Api31Impl.shouldShowRequestPermissionRationale(activity, str);
|
|
}
|
|
return Api23Impl.shouldShowRequestPermissionRationale(activity, str);
|
|
}
|
|
|
|
public static boolean isLaunchedFromBubble(@NonNull Activity activity) {
|
|
int i = Build.VERSION.SDK_INT;
|
|
if (i >= 31) {
|
|
return Api31Impl.isLaunchedFromBubble(activity);
|
|
}
|
|
if (i == 30) {
|
|
return (Api30Impl.getDisplay(activity) == null || Api30Impl.getDisplay(activity).getDisplayId() == 0) ? false : true;
|
|
}
|
|
if (i == 29) {
|
|
return (activity.getWindowManager().getDefaultDisplay() == null || activity.getWindowManager().getDefaultDisplay().getDisplayId() == 0) ? false : true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
@Nullable
|
|
public static DragAndDropPermissionsCompat requestDragAndDropPermissions(@NonNull Activity activity, @NonNull DragEvent dragEvent) {
|
|
return DragAndDropPermissionsCompat.request(activity, dragEvent);
|
|
}
|
|
|
|
public static void recreate(@NonNull final Activity activity) {
|
|
if (Build.VERSION.SDK_INT >= 28) {
|
|
activity.recreate();
|
|
} else {
|
|
new Handler(activity.getMainLooper()).post(new Runnable() { // from class: androidx.core.app.ActivityCompat$$ExternalSyntheticLambda0
|
|
@Override // java.lang.Runnable
|
|
public final void run() {
|
|
ActivityCompat.lambda$recreate$0(activity);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
public static /* synthetic */ void lambda$recreate$0(Activity activity) {
|
|
if (activity.isFinishing() || ActivityRecreator.recreate(activity)) {
|
|
return;
|
|
}
|
|
activity.recreate();
|
|
}
|
|
|
|
public static void setLocusContext(@NonNull Activity activity, @Nullable LocusIdCompat locusIdCompat, @Nullable Bundle bundle) {
|
|
if (Build.VERSION.SDK_INT >= 30) {
|
|
Api30Impl.setLocusContext(activity, locusIdCompat, bundle);
|
|
}
|
|
}
|
|
|
|
@RequiresApi(21)
|
|
public static class SharedElementCallback21Impl extends android.app.SharedElementCallback {
|
|
private final SharedElementCallback mCallback;
|
|
|
|
public SharedElementCallback21Impl(SharedElementCallback sharedElementCallback) {
|
|
this.mCallback = sharedElementCallback;
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public void onSharedElementStart(List<String> list, List<View> list2, List<View> list3) {
|
|
this.mCallback.onSharedElementStart(list, list2, list3);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public void onSharedElementEnd(List<String> list, List<View> list2, List<View> list3) {
|
|
this.mCallback.onSharedElementEnd(list, list2, list3);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public void onRejectSharedElements(List<View> list) {
|
|
this.mCallback.onRejectSharedElements(list);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public void onMapSharedElements(List<String> list, Map<String, View> map) {
|
|
this.mCallback.onMapSharedElements(list, map);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public Parcelable onCaptureSharedElementSnapshot(View view, Matrix matrix, RectF rectF) {
|
|
return this.mCallback.onCaptureSharedElementSnapshot(view, matrix, rectF);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public View onCreateSnapshotView(Context context, Parcelable parcelable) {
|
|
return this.mCallback.onCreateSnapshotView(context, parcelable);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
@RequiresApi(23)
|
|
public void onSharedElementsArrived(List<String> list, List<View> list2, final SharedElementCallback.OnSharedElementsReadyListener onSharedElementsReadyListener) {
|
|
this.mCallback.onSharedElementsArrived(list, list2, new SharedElementCallback.OnSharedElementsReadyListener() { // from class: androidx.core.app.ActivityCompat$SharedElementCallback21Impl$$ExternalSyntheticLambda0
|
|
@Override // androidx.core.app.SharedElementCallback.OnSharedElementsReadyListener
|
|
public final void onSharedElementsReady() {
|
|
ActivityCompat.Api23Impl.onSharedElementsReady(onSharedElementsReadyListener);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
@RequiresApi(30)
|
|
public static class Api30Impl {
|
|
private Api30Impl() {
|
|
}
|
|
|
|
public static void setLocusContext(@NonNull Activity activity, @Nullable LocusIdCompat locusIdCompat, @Nullable Bundle bundle) {
|
|
activity.setLocusContext(locusIdCompat == null ? null : locusIdCompat.toLocusId(), bundle);
|
|
}
|
|
|
|
public static Display getDisplay(ContextWrapper contextWrapper) {
|
|
return contextWrapper.getDisplay();
|
|
}
|
|
}
|
|
|
|
@RequiresApi(31)
|
|
public static class Api31Impl {
|
|
private Api31Impl() {
|
|
}
|
|
|
|
public static boolean isLaunchedFromBubble(@NonNull Activity activity) {
|
|
return activity.isLaunchedFromBubble();
|
|
}
|
|
|
|
@SuppressLint({"BanUncheckedReflection"})
|
|
public static boolean shouldShowRequestPermissionRationale(Activity activity, String str) {
|
|
try {
|
|
return ((Boolean) PackageManager.class.getMethod("shouldShowRequestPermissionRationale", String.class).invoke(activity.getApplication().getPackageManager(), str)).booleanValue();
|
|
} catch (IllegalAccessException | NoSuchMethodException | InvocationTargetException unused) {
|
|
return activity.shouldShowRequestPermissionRationale(str);
|
|
}
|
|
}
|
|
}
|
|
|
|
@RequiresApi(32)
|
|
public static class Api32Impl {
|
|
private Api32Impl() {
|
|
}
|
|
|
|
public static boolean shouldShowRequestPermissionRationale(Activity activity, String str) {
|
|
return activity.shouldShowRequestPermissionRationale(str);
|
|
}
|
|
}
|
|
|
|
@RequiresApi(21)
|
|
public static class Api21Impl {
|
|
private Api21Impl() {
|
|
}
|
|
|
|
public static void finishAfterTransition(Activity activity) {
|
|
activity.finishAfterTransition();
|
|
}
|
|
|
|
public static void setEnterSharedElementCallback(Activity activity, android.app.SharedElementCallback sharedElementCallback) {
|
|
activity.setEnterSharedElementCallback(sharedElementCallback);
|
|
}
|
|
|
|
public static void setExitSharedElementCallback(Activity activity, android.app.SharedElementCallback sharedElementCallback) {
|
|
activity.setExitSharedElementCallback(sharedElementCallback);
|
|
}
|
|
|
|
public static void postponeEnterTransition(Activity activity) {
|
|
activity.postponeEnterTransition();
|
|
}
|
|
|
|
public static void startPostponedEnterTransition(Activity activity) {
|
|
activity.startPostponedEnterTransition();
|
|
}
|
|
}
|
|
|
|
@RequiresApi(22)
|
|
public static class Api22Impl {
|
|
private Api22Impl() {
|
|
}
|
|
|
|
public static Uri getReferrer(Activity activity) {
|
|
return activity.getReferrer();
|
|
}
|
|
}
|
|
|
|
@RequiresApi(28)
|
|
public static class Api28Impl {
|
|
private Api28Impl() {
|
|
}
|
|
|
|
public static <T> T requireViewById(Activity activity, int i) {
|
|
return (T) activity.requireViewById(i);
|
|
}
|
|
}
|
|
|
|
@RequiresApi(23)
|
|
public static class Api23Impl {
|
|
private Api23Impl() {
|
|
}
|
|
|
|
public static void requestPermissions(Activity activity, String[] strArr, int i) {
|
|
activity.requestPermissions(strArr, i);
|
|
}
|
|
|
|
public static boolean shouldShowRequestPermissionRationale(Activity activity, String str) {
|
|
return activity.shouldShowRequestPermissionRationale(str);
|
|
}
|
|
|
|
public static void onSharedElementsReady(Object obj) {
|
|
((SharedElementCallback.OnSharedElementsReadyListener) obj).onSharedElementsReady();
|
|
}
|
|
}
|
|
}
|