CrackMe.apk
Download file
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.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Parcelable;
import android.text.TextUtils;
import android.view.DragEvent;
import android.view.View;
import androidx.core.app.SharedElementCallback;
import androidx.core.content.ContextCompat;
import androidx.core.content.LocusIdCompat;
import androidx.core.os.BuildCompat;
import androidx.core.view.DragAndDropPermissionsCompat;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
public class ActivityCompat extends ContextCompat {
private static PermissionCompatDelegate sDelegate;
public interface OnRequestPermissionsResultCallback {
void onRequestPermissionsResult(int i, String[] strArr, int[] iArr);
}
public interface PermissionCompatDelegate {
boolean onActivityResult(Activity activity, int i, int i2, Intent intent);
boolean requestPermissions(Activity activity, String[] strArr, int i);
}
public interface RequestPermissionsRequestCodeValidator {
void validateRequestPermissionsRequestCode(int i);
}
protected ActivityCompat() {
}
public static void setPermissionCompatDelegate(PermissionCompatDelegate permissionCompatDelegate) {
sDelegate = permissionCompatDelegate;
}
public static PermissionCompatDelegate getPermissionCompatDelegate() {
return sDelegate;
}
@Deprecated
public static boolean invalidateOptionsMenu(Activity activity) {
activity.invalidateOptionsMenu();
return true;
}
public static void startActivityForResult(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 startIntentSenderForResult(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 finishAffinity(Activity activity) {
if (Build.VERSION.SDK_INT >= 16) {
activity.finishAffinity();
} else {
activity.finish();
}
}
public static void finishAfterTransition(Activity activity) {
if (Build.VERSION.SDK_INT >= 21) {
activity.finishAfterTransition();
} else {
activity.finish();
}
}
public static Uri getReferrer(Activity activity) {
if (Build.VERSION.SDK_INT >= 22) {
return activity.getReferrer();
}
Intent intent = activity.getIntent();
Uri uri = (Uri) intent.getParcelableExtra("android.intent.extra.REFERRER");
if (uri != null) {
return uri;
}
String stringExtra = intent.getStringExtra("android.intent.extra.REFERRER_NAME");
if (stringExtra != null) {
return Uri.parse(stringExtra);
}
return null;
}
public static <T extends View> T requireViewById(Activity activity, int i) {
if (Build.VERSION.SDK_INT >= 28) {
return activity.requireViewById(i);
}
T findViewById = activity.findViewById(i);
if (findViewById != null) {
return findViewById;
}
throw new IllegalArgumentException("ID does not reference a View inside this Activity");
}
public static void setEnterSharedElementCallback(Activity activity, SharedElementCallback sharedElementCallback) {
if (Build.VERSION.SDK_INT >= 21) {
activity.setEnterSharedElementCallback(sharedElementCallback != null ? new SharedElementCallback21Impl(sharedElementCallback) : null);
}
}
public static void setExitSharedElementCallback(Activity activity, SharedElementCallback sharedElementCallback) {
if (Build.VERSION.SDK_INT >= 21) {
activity.setExitSharedElementCallback(sharedElementCallback != null ? new SharedElementCallback21Impl(sharedElementCallback) : null);
}
}
public static void postponeEnterTransition(Activity activity) {
if (Build.VERSION.SDK_INT >= 21) {
activity.postponeEnterTransition();
}
}
public static void startPostponedEnterTransition(Activity activity) {
if (Build.VERSION.SDK_INT >= 21) {
activity.startPostponedEnterTransition();
}
}
public static void requestPermissions(final Activity activity, final String[] strArr, final int i) {
PermissionCompatDelegate permissionCompatDelegate = sDelegate;
if (permissionCompatDelegate == null || !permissionCompatDelegate.requestPermissions(activity, strArr, i)) {
int length = strArr.length;
int i2 = 0;
while (i2 < length) {
if (!TextUtils.isEmpty(strArr[i2])) {
i2++;
} else {
throw new IllegalArgumentException("Permission request for permissions " + Arrays.toString(strArr) + " must not contain null or empty values");
}
}
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() {
public void run() {
int[] iArr = new int[strArr.length];
PackageManager packageManager = activity.getPackageManager();
String packageName = activity.getPackageName();
int length = strArr.length;
for (int i = 0; i < length; i++) {
iArr[i] = packageManager.checkPermission(strArr[i], packageName);
}
((OnRequestPermissionsResultCallback) activity).onRequestPermissionsResult(i, strArr, iArr);
}
});
}
}
}
public static boolean shouldShowRequestPermissionRationale(Activity activity, String str) {
if (Build.VERSION.SDK_INT >= 23) {
return activity.shouldShowRequestPermissionRationale(str);
}
return false;
}
public static boolean isLaunchedFromBubble(Activity activity) {
if (BuildCompat.isAtLeastS()) {
return Api31Impl.isLaunchedFromBubble(activity);
}
if (Build.VERSION.SDK_INT == 30) {
if (activity.getDisplay() == null || activity.getDisplay().getDisplayId() == 0) {
return false;
}
return true;
} else if (Build.VERSION.SDK_INT != 29 || activity.getWindowManager().getDefaultDisplay() == null || activity.getWindowManager().getDefaultDisplay().getDisplayId() == 0) {
return false;
} else {
return true;
}
}
public static DragAndDropPermissionsCompat requestDragAndDropPermissions(Activity activity, DragEvent dragEvent) {
return DragAndDropPermissionsCompat.request(activity, dragEvent);
}
public static void recreate(final Activity activity) {
if (Build.VERSION.SDK_INT >= 28) {
activity.recreate();
} else if (Build.VERSION.SDK_INT <= 23) {
new Handler(activity.getMainLooper()).post(new Runnable() {
public void run() {
if (!activity.isFinishing() && !ActivityRecreator.recreate(activity)) {
activity.recreate();
}
}
});
} else if (!ActivityRecreator.recreate(activity)) {
activity.recreate();
}
}
public static void setLocusContext(Activity activity, LocusIdCompat locusIdCompat, Bundle bundle) {
if (Build.VERSION.SDK_INT >= 30) {
Api30Impl.setLocusContext(activity, locusIdCompat, bundle);
}
}
private static class SharedElementCallback21Impl extends SharedElementCallback {
private final SharedElementCallback mCallback;
SharedElementCallback21Impl(SharedElementCallback sharedElementCallback) {
this.mCallback = sharedElementCallback;
}
public void onSharedElementStart(List<String> list, List<View> list2, List<View> list3) {
this.mCallback.onSharedElementStart(list, list2, list3);
}
public void onSharedElementEnd(List<String> list, List<View> list2, List<View> list3) {
this.mCallback.onSharedElementEnd(list, list2, list3);
}
public void onRejectSharedElements(List<View> list) {
this.mCallback.onRejectSharedElements(list);
}
public void onMapSharedElements(List<String> list, Map<String, View> map) {
this.mCallback.onMapSharedElements(list, map);
}
public Parcelable onCaptureSharedElementSnapshot(View view, Matrix matrix, RectF rectF) {
return this.mCallback.onCaptureSharedElementSnapshot(view, matrix, rectF);
}
public View onCreateSnapshotView(Context context, Parcelable parcelable) {
return this.mCallback.onCreateSnapshotView(context, parcelable);
}
public void onSharedElementsArrived(List<String> list, List<View> list2, final SharedElementCallback.OnSharedElementsReadyListener onSharedElementsReadyListener) {
this.mCallback.onSharedElementsArrived(list, list2, new SharedElementCallback.OnSharedElementsReadyListener() {
public void onSharedElementsReady() {
onSharedElementsReadyListener.onSharedElementsReady();
}
});
}
}
static class Api30Impl {
private Api30Impl() {
}
static void setLocusContext(Activity activity, LocusIdCompat locusIdCompat, Bundle bundle) {
activity.setLocusContext(locusIdCompat == null ? null : locusIdCompat.toLocusId(), bundle);
}
}
static class Api31Impl {
private Api31Impl() {
}
static boolean isLaunchedFromBubble(Activity activity) {
return activity.isLaunchedFromBubble();
}
}
}
Download file