CrackMe.apk
Download file
package androidx.core.app.unusedapprestrictions;
import android.os.Binder;
import android.os.IBinder;
import android.os.IInterface;
import android.os.Parcel;
import android.os.RemoteException;
import androidx.core.app.unusedapprestrictions.IUnusedAppRestrictionsBackportCallback;
public interface IUnusedAppRestrictionsBackportService extends IInterface {
public static class Default implements IUnusedAppRestrictionsBackportService {
public IBinder asBinder() {
return null;
}
public void isPermissionRevocationEnabledForApp(IUnusedAppRestrictionsBackportCallback iUnusedAppRestrictionsBackportCallback) throws RemoteException {
}
}
void isPermissionRevocationEnabledForApp(IUnusedAppRestrictionsBackportCallback iUnusedAppRestrictionsBackportCallback) throws RemoteException;
public static abstract class Stub extends Binder implements IUnusedAppRestrictionsBackportService {
private static final String DESCRIPTOR = "androidx.core.app.unusedapprestrictions.IUnusedAppRestrictionsBackportService";
static final int TRANSACTION_isPermissionRevocationEnabledForApp = 1;
public IBinder asBinder() {
return this;
}
public Stub() {
attachInterface(this, DESCRIPTOR);
}
public static IUnusedAppRestrictionsBackportService asInterface(IBinder iBinder) {
if (iBinder == null) {
return null;
}
IInterface queryLocalInterface = iBinder.queryLocalInterface(DESCRIPTOR);
if (queryLocalInterface == null || !(queryLocalInterface instanceof IUnusedAppRestrictionsBackportService)) {
return new Proxy(iBinder);
}
return (IUnusedAppRestrictionsBackportService) queryLocalInterface;
}
public boolean onTransact(int i, Parcel parcel, Parcel parcel2, int i2) throws RemoteException {
if (i == 1) {
parcel.enforceInterface(DESCRIPTOR);
isPermissionRevocationEnabledForApp(IUnusedAppRestrictionsBackportCallback.Stub.asInterface(parcel.readStrongBinder()));
return true;
} else if (i != 1598968902) {
return super.onTransact(i, parcel, parcel2, i2);
} else {
parcel2.writeString(DESCRIPTOR);
return true;
}
}
private static class Proxy implements IUnusedAppRestrictionsBackportService {
public static IUnusedAppRestrictionsBackportService sDefaultImpl;
private IBinder mRemote;
public String getInterfaceDescriptor() {
return Stub.DESCRIPTOR;
}
Proxy(IBinder iBinder) {
this.mRemote = iBinder;
}
public IBinder asBinder() {
return this.mRemote;
}
public void isPermissionRevocationEnabledForApp(IUnusedAppRestrictionsBackportCallback iUnusedAppRestrictionsBackportCallback) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
obtain.writeStrongBinder(iUnusedAppRestrictionsBackportCallback != null ? iUnusedAppRestrictionsBackportCallback.asBinder() : null);
if (this.mRemote.transact(1, obtain, (Parcel) null, 1) || Stub.getDefaultImpl() == null) {
obtain.recycle();
} else {
Stub.getDefaultImpl().isPermissionRevocationEnabledForApp(iUnusedAppRestrictionsBackportCallback);
}
} finally {
obtain.recycle();
}
}
}
public static boolean setDefaultImpl(IUnusedAppRestrictionsBackportService iUnusedAppRestrictionsBackportService) {
if (Proxy.sDefaultImpl != null) {
throw new IllegalStateException("setDefaultImpl() called twice");
} else if (iUnusedAppRestrictionsBackportService == null) {
return false;
} else {
Proxy.sDefaultImpl = iUnusedAppRestrictionsBackportService;
return true;
}
}
public static IUnusedAppRestrictionsBackportService getDefaultImpl() {
return Proxy.sDefaultImpl;
}
}
}
Download file