178 lines
6.8 KiB
Java
178 lines
6.8 KiB
Java
package androidx.core.app;
|
|
|
|
import android.app.Activity;
|
|
import android.app.SharedElementCallback;
|
|
import android.content.Context;
|
|
import android.content.Intent;
|
|
import android.content.IntentSender;
|
|
import android.content.pm.PackageManager;
|
|
import android.graphics.Matrix;
|
|
import android.graphics.RectF;
|
|
import android.os.Build;
|
|
import android.os.Bundle;
|
|
import android.os.Handler;
|
|
import android.os.Looper;
|
|
import android.os.Parcelable;
|
|
import android.view.View;
|
|
import androidx.core.app.SharedElementCallback;
|
|
import androidx.core.content.ContextCompat;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
/* loaded from: classes.dex */
|
|
public class ActivityCompat extends ContextCompat {
|
|
private static PermissionCompatDelegate c;
|
|
|
|
public interface OnRequestPermissionsResultCallback {
|
|
void onRequestPermissionsResult(int i, String[] strArr, int[] iArr);
|
|
}
|
|
|
|
public interface PermissionCompatDelegate {
|
|
boolean a(Activity activity, int i, int i2, Intent intent);
|
|
|
|
boolean a(Activity activity, String[] strArr, int i);
|
|
}
|
|
|
|
public interface RequestPermissionsRequestCodeValidator {
|
|
void validateRequestPermissionsRequestCode(int i);
|
|
}
|
|
|
|
private static class SharedElementCallback21Impl extends android.app.SharedElementCallback {
|
|
private final SharedElementCallback a;
|
|
|
|
SharedElementCallback21Impl(SharedElementCallback sharedElementCallback) {
|
|
this.a = sharedElementCallback;
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public Parcelable onCaptureSharedElementSnapshot(View view, Matrix matrix, RectF rectF) {
|
|
return this.a.a(view, matrix, rectF);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public View onCreateSnapshotView(Context context, Parcelable parcelable) {
|
|
return this.a.a(context, parcelable);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public void onMapSharedElements(List<String> list, Map<String, View> map) {
|
|
this.a.a(list, map);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public void onRejectSharedElements(List<View> list) {
|
|
this.a.a(list);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public void onSharedElementEnd(List<String> list, List<View> list2, List<View> list3) {
|
|
this.a.a(list, list2, list3);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public void onSharedElementStart(List<String> list, List<View> list2, List<View> list3) {
|
|
this.a.b(list, list2, list3);
|
|
}
|
|
|
|
@Override // android.app.SharedElementCallback
|
|
public void onSharedElementsArrived(List<String> list, List<View> list2, SharedElementCallback.OnSharedElementsReadyListener onSharedElementsReadyListener) {
|
|
this.a.a(list, list2, new SharedElementCallback.OnSharedElementsReadyListener(this, onSharedElementsReadyListener) { // from class: androidx.core.app.ActivityCompat.SharedElementCallback21Impl.1
|
|
});
|
|
}
|
|
}
|
|
|
|
public static PermissionCompatDelegate a() {
|
|
return c;
|
|
}
|
|
|
|
public static void b(Activity activity) {
|
|
if (Build.VERSION.SDK_INT >= 21) {
|
|
activity.finishAfterTransition();
|
|
} else {
|
|
activity.finish();
|
|
}
|
|
}
|
|
|
|
public static void c(Activity activity) {
|
|
if (Build.VERSION.SDK_INT >= 21) {
|
|
activity.postponeEnterTransition();
|
|
}
|
|
}
|
|
|
|
public static void d(Activity activity) {
|
|
if (Build.VERSION.SDK_INT >= 21) {
|
|
activity.startPostponedEnterTransition();
|
|
}
|
|
}
|
|
|
|
public static void a(Activity activity, Intent intent, int i, Bundle bundle) {
|
|
if (Build.VERSION.SDK_INT >= 16) {
|
|
activity.startActivityForResult(intent, i, bundle);
|
|
} else {
|
|
activity.startActivityForResult(intent, i);
|
|
}
|
|
}
|
|
|
|
public static void b(Activity activity, SharedElementCallback sharedElementCallback) {
|
|
if (Build.VERSION.SDK_INT >= 21) {
|
|
activity.setExitSharedElementCallback(sharedElementCallback != null ? new SharedElementCallback21Impl(sharedElementCallback) : null);
|
|
}
|
|
}
|
|
|
|
public static void a(Activity activity, IntentSender intentSender, int i, Intent intent, int i2, int i3, int i4, Bundle bundle) throws IntentSender.SendIntentException {
|
|
if (Build.VERSION.SDK_INT >= 16) {
|
|
activity.startIntentSenderForResult(intentSender, i, intent, i2, i3, i4, bundle);
|
|
} else {
|
|
activity.startIntentSenderForResult(intentSender, i, intent, i2, i3, i4);
|
|
}
|
|
}
|
|
|
|
public static void a(Activity activity) {
|
|
if (Build.VERSION.SDK_INT >= 16) {
|
|
activity.finishAffinity();
|
|
} else {
|
|
activity.finish();
|
|
}
|
|
}
|
|
|
|
public static void a(Activity activity, SharedElementCallback sharedElementCallback) {
|
|
if (Build.VERSION.SDK_INT >= 21) {
|
|
activity.setEnterSharedElementCallback(sharedElementCallback != null ? new SharedElementCallback21Impl(sharedElementCallback) : null);
|
|
}
|
|
}
|
|
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
public static void a(final Activity activity, final String[] strArr, final int i) {
|
|
PermissionCompatDelegate permissionCompatDelegate = c;
|
|
if (permissionCompatDelegate == null || !permissionCompatDelegate.a(activity, strArr, i)) {
|
|
if (Build.VERSION.SDK_INT >= 23) {
|
|
if (activity instanceof RequestPermissionsRequestCodeValidator) {
|
|
((RequestPermissionsRequestCodeValidator) activity).validateRequestPermissionsRequestCode(i);
|
|
}
|
|
activity.requestPermissions(strArr, i);
|
|
} else if (activity instanceof OnRequestPermissionsResultCallback) {
|
|
new Handler(Looper.getMainLooper()).post(new Runnable() { // from class: androidx.core.app.ActivityCompat.1
|
|
@Override // java.lang.Runnable
|
|
public void run() {
|
|
int[] iArr = new int[strArr.length];
|
|
PackageManager packageManager = activity.getPackageManager();
|
|
String packageName = activity.getPackageName();
|
|
int length = strArr.length;
|
|
for (int i2 = 0; i2 < length; i2++) {
|
|
iArr[i2] = packageManager.checkPermission(strArr[i2], packageName);
|
|
}
|
|
((OnRequestPermissionsResultCallback) activity).onRequestPermissionsResult(i, strArr, iArr);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
}
|
|
|
|
public static boolean a(Activity activity, String str) {
|
|
if (Build.VERSION.SDK_INT >= 23) {
|
|
return activity.shouldShowRequestPermissionRationale(str);
|
|
}
|
|
return false;
|
|
}
|
|
}
|