正在查看: Hopscotch v9.7.2 应用的 CustomTabMainActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Hopscotch v9.7.2 应用的 CustomTabMainActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.facebook;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.net.Uri;
import android.os.Bundle;
import com.facebook.gamingservices.cloudgaming.internal.SDKConstants;
import com.facebook.internal.CustomTab;
import com.facebook.internal.InstagramCustomTab;
import com.facebook.internal.NativeProtocol;
import com.facebook.internal.Utility;
import com.facebook.login.LoginTargetApp;
import kotlin.Metadata;
import kotlin.jvm.internal.DefaultConstructorMarker;
import kotlin.jvm.internal.Intrinsics;
import org.jetbrains.annotations.NotNull;
@Metadata
public final class CustomTabMainActivity extends Activity {
private BroadcastReceiver redirectReceiver;
private boolean shouldCloseCustomTab = true;
@NotNull
public static final Companion Companion = new Companion(null);
@NotNull
public static final String EXTRA_ACTION = Intrinsics.stringPlus("CustomTabMainActivity", ".extra_action");
@NotNull
public static final String EXTRA_PARAMS = Intrinsics.stringPlus("CustomTabMainActivity", ".extra_params");
@NotNull
public static final String EXTRA_CHROME_PACKAGE = Intrinsics.stringPlus("CustomTabMainActivity", ".extra_chromePackage");
@NotNull
public static final String EXTRA_URL = Intrinsics.stringPlus("CustomTabMainActivity", ".extra_url");
@NotNull
public static final String EXTRA_TARGET_APP = Intrinsics.stringPlus("CustomTabMainActivity", ".extra_targetApp");
@NotNull
public static final String REFRESH_ACTION = Intrinsics.stringPlus("CustomTabMainActivity", ".action_refresh");
@NotNull
public static final String NO_ACTIVITY_EXCEPTION = Intrinsics.stringPlus("CustomTabMainActivity", ".no_activity_exception");
@Metadata
public static final class Companion {
public Companion(DefaultConstructorMarker defaultConstructorMarker) {
this();
}
public final Bundle parseResponseUri(String str) {
Uri parse = Uri.parse(str);
Utility utility = Utility.INSTANCE;
Bundle parseUrlQueryString = Utility.parseUrlQueryString(parse.getQuery());
parseUrlQueryString.putAll(Utility.parseUrlQueryString(parse.getFragment()));
return parseUrlQueryString;
}
private Companion() {
}
}
@Metadata
public class WhenMappings {
public static final int[] $EnumSwitchMapping$0;
static {
int[] iArr = new int[LoginTargetApp.valuesCustom().length];
iArr[LoginTargetApp.INSTAGRAM.ordinal()] = 1;
$EnumSwitchMapping$0 = iArr;
}
}
private final void sendResult(int i, Intent intent) {
BroadcastReceiver broadcastReceiver = this.redirectReceiver;
if (broadcastReceiver != null) {
androidx.localbroadcastmanager.content.a.b(this).e(broadcastReceiver);
}
if (intent != null) {
String stringExtra = intent.getStringExtra(EXTRA_URL);
Bundle parseResponseUri = stringExtra != null ? Companion.parseResponseUri(stringExtra) : new Bundle();
NativeProtocol nativeProtocol = NativeProtocol.INSTANCE;
Intent intent2 = getIntent();
Intrinsics.checkNotNullExpressionValue(intent2, SDKConstants.PARAM_INTENT);
Intent createProtocolResultIntent = NativeProtocol.createProtocolResultIntent(intent2, parseResponseUri, null);
if (createProtocolResultIntent != null) {
intent = createProtocolResultIntent;
}
setResult(i, intent);
} else {
NativeProtocol nativeProtocol2 = NativeProtocol.INSTANCE;
Intent intent3 = getIntent();
Intrinsics.checkNotNullExpressionValue(intent3, SDKConstants.PARAM_INTENT);
setResult(i, NativeProtocol.createProtocolResultIntent(intent3, null, null));
}
finish();
}
@Override
public void onCreate(Bundle bundle) {
String stringExtra;
super.onCreate(bundle);
String str = CustomTabActivity.CUSTOM_TAB_REDIRECT_ACTION;
if (Intrinsics.areEqual(str, getIntent().getAction())) {
setResult(0);
finish();
return;
}
if (bundle != null || (stringExtra = getIntent().getStringExtra(EXTRA_ACTION)) == null) {
return;
}
Bundle bundleExtra = getIntent().getBundleExtra(EXTRA_PARAMS);
boolean openCustomTab = (WhenMappings.$EnumSwitchMapping$0[LoginTargetApp.Companion.fromString(getIntent().getStringExtra(EXTRA_TARGET_APP)).ordinal()] == 1 ? new InstagramCustomTab(stringExtra, bundleExtra) : new CustomTab(stringExtra, bundleExtra)).openCustomTab(this, getIntent().getStringExtra(EXTRA_CHROME_PACKAGE));
this.shouldCloseCustomTab = false;
if (!openCustomTab) {
setResult(0, getIntent().putExtra(NO_ACTIVITY_EXCEPTION, true));
finish();
} else {
BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(@NotNull Context context, @NotNull Intent intent) {
Intrinsics.checkNotNullParameter(context, "context");
Intrinsics.checkNotNullParameter(intent, SDKConstants.PARAM_INTENT);
Intent intent2 = new Intent(CustomTabMainActivity.this, (Class<?>) CustomTabMainActivity.class);
intent2.setAction(CustomTabMainActivity.REFRESH_ACTION);
String str2 = CustomTabMainActivity.EXTRA_URL;
intent2.putExtra(str2, intent.getStringExtra(str2));
intent2.addFlags(603979776);
CustomTabMainActivity.this.startActivity(intent2);
}
};
this.redirectReceiver = broadcastReceiver;
androidx.localbroadcastmanager.content.a.b(this).c(broadcastReceiver, new IntentFilter(str));
}
}
@Override
public void onNewIntent(@NotNull Intent intent) {
Intrinsics.checkNotNullParameter(intent, SDKConstants.PARAM_INTENT);
super.onNewIntent(intent);
if (Intrinsics.areEqual(REFRESH_ACTION, intent.getAction())) {
androidx.localbroadcastmanager.content.a.b(this).d(new Intent(CustomTabActivity.DESTROY_ACTION));
sendResult(-1, intent);
} else if (Intrinsics.areEqual(CustomTabActivity.CUSTOM_TAB_REDIRECT_ACTION, intent.getAction())) {
sendResult(-1, intent);
}
}
@Override
public void onResume() {
super.onResume();
if (this.shouldCloseCustomTab) {
sendResult(0, null);
}
this.shouldCloseCustomTab = true;
}
}