CrackMe.apk
Download file
package androidx.transition;
import android.graphics.Matrix;
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.widget.ImageView;
import java.lang.reflect.Field;
class ImageViewUtils {
private static Field sDrawMatrixField = null;
private static boolean sDrawMatrixFieldFetched = false;
private static boolean sTryHiddenAnimateTransform = true;
static void animateTransform(ImageView imageView, Matrix matrix) {
if (Build.VERSION.SDK_INT >= 29) {
imageView.animateTransform(matrix);
} else if (matrix == null) {
Drawable drawable = imageView.getDrawable();
if (drawable != null) {
drawable.setBounds(0, 0, (imageView.getWidth() - imageView.getPaddingLeft()) - imageView.getPaddingRight(), (imageView.getHeight() - imageView.getPaddingTop()) - imageView.getPaddingBottom());
imageView.invalidate();
}
} else if (Build.VERSION.SDK_INT >= 21) {
hiddenAnimateTransform(imageView, matrix);
} else {
Drawable drawable2 = imageView.getDrawable();
if (drawable2 != null) {
drawable2.setBounds(0, 0, drawable2.getIntrinsicWidth(), drawable2.getIntrinsicHeight());
Matrix matrix2 = null;
fetchDrawMatrixField();
Field field = sDrawMatrixField;
if (field != null) {
try {
Matrix matrix3 = (Matrix) field.get(imageView);
if (matrix3 == null) {
try {
matrix2 = new Matrix();
sDrawMatrixField.set(imageView, matrix2);
} catch (IllegalAccessException unused) {
}
}
matrix2 = matrix3;
} catch (IllegalAccessException unused2) {
}
}
if (matrix2 != null) {
matrix2.set(matrix);
}
imageView.invalidate();
}
}
}
private static void hiddenAnimateTransform(ImageView imageView, Matrix matrix) {
if (sTryHiddenAnimateTransform) {
try {
imageView.animateTransform(matrix);
} catch (NoSuchMethodError unused) {
sTryHiddenAnimateTransform = false;
}
}
}
private static void fetchDrawMatrixField() {
if (!sDrawMatrixFieldFetched) {
try {
Field declaredField = ImageView.class.getDeclaredField("mDrawMatrix");
sDrawMatrixField = declaredField;
declaredField.setAccessible(true);
} catch (NoSuchFieldException unused) {
}
sDrawMatrixFieldFetched = true;
}
}
private ImageViewUtils() {
}
}
Download file