CrackMe.apk
Download file
package androidx.browser.customtabs;
import android.app.PendingIntent;
import android.content.ComponentName;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.os.IBinder;
import android.os.RemoteException;
import android.support.customtabs.ICustomTabsCallback;
import android.support.customtabs.ICustomTabsService;
import android.widget.RemoteViews;
import androidx.browser.customtabs.CustomTabsSessionToken;
import java.util.List;
public final class CustomTabsSession {
private static final String TAG = "CustomTabsSession";
private final ICustomTabsCallback mCallback;
private final ComponentName mComponentName;
private final PendingIntent mId;
private final Object mLock = new Object();
private final ICustomTabsService mService;
public static CustomTabsSession createMockSessionForTesting(ComponentName componentName) {
return new CustomTabsSession(new MockSession(), new CustomTabsSessionToken.MockCallback(), componentName, (PendingIntent) null);
}
CustomTabsSession(ICustomTabsService iCustomTabsService, ICustomTabsCallback iCustomTabsCallback, ComponentName componentName, PendingIntent pendingIntent) {
this.mService = iCustomTabsService;
this.mCallback = iCustomTabsCallback;
this.mComponentName = componentName;
this.mId = pendingIntent;
}
public boolean mayLaunchUrl(Uri uri, Bundle bundle, List<Bundle> list) {
try {
return this.mService.mayLaunchUrl(this.mCallback, uri, createBundleWithId(bundle), list);
} catch (RemoteException unused) {
return false;
}
}
public boolean setActionButton(Bitmap bitmap, String str) {
Bundle bundle = new Bundle();
bundle.putParcelable(CustomTabsIntent.KEY_ICON, bitmap);
bundle.putString(CustomTabsIntent.KEY_DESCRIPTION, str);
Bundle bundle2 = new Bundle();
bundle2.putBundle(CustomTabsIntent.EXTRA_ACTION_BUTTON_BUNDLE, bundle);
addIdToBundle(bundle);
try {
return this.mService.updateVisuals(this.mCallback, bundle2);
} catch (RemoteException unused) {
return false;
}
}
public boolean setSecondaryToolbarViews(RemoteViews remoteViews, int[] iArr, PendingIntent pendingIntent) {
Bundle bundle = new Bundle();
bundle.putParcelable(CustomTabsIntent.EXTRA_REMOTEVIEWS, remoteViews);
bundle.putIntArray(CustomTabsIntent.EXTRA_REMOTEVIEWS_VIEW_IDS, iArr);
bundle.putParcelable(CustomTabsIntent.EXTRA_REMOTEVIEWS_PENDINGINTENT, pendingIntent);
addIdToBundle(bundle);
try {
return this.mService.updateVisuals(this.mCallback, bundle);
} catch (RemoteException unused) {
return false;
}
}
@Deprecated
public boolean setToolbarItem(int i, Bitmap bitmap, String str) {
Bundle bundle = new Bundle();
bundle.putInt(CustomTabsIntent.KEY_ID, i);
bundle.putParcelable(CustomTabsIntent.KEY_ICON, bitmap);
bundle.putString(CustomTabsIntent.KEY_DESCRIPTION, str);
Bundle bundle2 = new Bundle();
bundle2.putBundle(CustomTabsIntent.EXTRA_ACTION_BUTTON_BUNDLE, bundle);
addIdToBundle(bundle2);
try {
return this.mService.updateVisuals(this.mCallback, bundle2);
} catch (RemoteException unused) {
return false;
}
}
public boolean requestPostMessageChannel(Uri uri) {
try {
if (this.mId != null) {
return this.mService.requestPostMessageChannelWithExtras(this.mCallback, uri, createBundleWithId((Bundle) null));
}
return this.mService.requestPostMessageChannel(this.mCallback, uri);
} catch (RemoteException unused) {
return false;
}
}
public int postMessage(String str, Bundle bundle) {
int postMessage;
Bundle createBundleWithId = createBundleWithId(bundle);
synchronized (this.mLock) {
try {
postMessage = this.mService.postMessage(this.mCallback, str, createBundleWithId);
} catch (RemoteException unused) {
return -2;
} catch (Throwable th) {
throw th;
}
}
return postMessage;
}
public boolean validateRelationship(int i, Uri uri, Bundle bundle) {
if (i >= 1 && i <= 2) {
try {
return this.mService.validateRelationship(this.mCallback, i, uri, createBundleWithId(bundle));
} catch (RemoteException unused) {
}
}
return false;
}
public boolean receiveFile(Uri uri, int i, Bundle bundle) {
try {
return this.mService.receiveFile(this.mCallback, uri, i, createBundleWithId(bundle));
} catch (RemoteException unused) {
return false;
}
}
private Bundle createBundleWithId(Bundle bundle) {
Bundle bundle2 = new Bundle();
if (bundle != null) {
bundle2.putAll(bundle);
}
addIdToBundle(bundle2);
return bundle2;
}
private void addIdToBundle(Bundle bundle) {
PendingIntent pendingIntent = this.mId;
if (pendingIntent != null) {
bundle.putParcelable(CustomTabsIntent.EXTRA_SESSION_ID, pendingIntent);
}
}
/* access modifiers changed from: package-private */
public IBinder getBinder() {
return this.mCallback.asBinder();
}
/* access modifiers changed from: package-private */
public ComponentName getComponentName() {
return this.mComponentName;
}
/* access modifiers changed from: package-private */
public PendingIntent getId() {
return this.mId;
}
public static class PendingSession {
private final CustomTabsCallback mCallback;
private final PendingIntent mId;
PendingSession(CustomTabsCallback customTabsCallback, PendingIntent pendingIntent) {
this.mCallback = customTabsCallback;
this.mId = pendingIntent;
}
/* access modifiers changed from: package-private */
public PendingIntent getId() {
return this.mId;
}
/* access modifiers changed from: package-private */
public CustomTabsCallback getCallback() {
return this.mCallback;
}
}
static class MockSession extends ICustomTabsService.Stub {
public Bundle extraCommand(String str, Bundle bundle) throws RemoteException {
return null;
}
public boolean mayLaunchUrl(ICustomTabsCallback iCustomTabsCallback, Uri uri, Bundle bundle, List<Bundle> list) throws RemoteException {
return false;
}
public boolean newSession(ICustomTabsCallback iCustomTabsCallback) throws RemoteException {
return false;
}
public boolean newSessionWithExtras(ICustomTabsCallback iCustomTabsCallback, Bundle bundle) throws RemoteException {
return false;
}
public int postMessage(ICustomTabsCallback iCustomTabsCallback, String str, Bundle bundle) throws RemoteException {
return 0;
}
public boolean receiveFile(ICustomTabsCallback iCustomTabsCallback, Uri uri, int i, Bundle bundle) throws RemoteException {
return false;
}
public boolean requestPostMessageChannel(ICustomTabsCallback iCustomTabsCallback, Uri uri) throws RemoteException {
return false;
}
public boolean requestPostMessageChannelWithExtras(ICustomTabsCallback iCustomTabsCallback, Uri uri, Bundle bundle) throws RemoteException {
return false;
}
public boolean updateVisuals(ICustomTabsCallback iCustomTabsCallback, Bundle bundle) throws RemoteException {
return false;
}
public boolean validateRelationship(ICustomTabsCallback iCustomTabsCallback, int i, Uri uri, Bundle bundle) throws RemoteException {
return false;
}
public boolean warmup(long j) throws RemoteException {
return false;
}
MockSession() {
}
}
}
Download file