Files
rr3-apk/decompiled-community/sources/com/applovin/sdk/AppLovinWebViewActivity.java
Daniel Elliott c080f0d97f Add Discord community version (64-bit only)
- Added realracing3-community.apk (71.57 MB)
- Removed 32-bit support (armeabi-v7a)
- Only includes arm64-v8a libraries
- Decompiled source code included
- Added README-community.md with analysis
2026-02-18 15:48:36 -08:00

167 lines
6.5 KiB
Java

package com.applovin.sdk;
import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;
import android.text.TextUtils;
import android.webkit.RenderProcessGoneDetail;
import android.webkit.WebSettings;
import android.webkit.WebView;
import com.applovin.impl.pi;
import com.applovin.impl.sdk.j;
import com.applovin.impl.sdk.n;
import com.applovin.impl.sdk.utils.StringUtils;
import com.applovin.impl.sj;
import com.applovin.impl.yp;
import com.applovin.sdk.AppLovinWebViewActivity;
import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean;
/* loaded from: classes2.dex */
public class AppLovinWebViewActivity extends Activity {
public static final String EVENT_DISMISSED_VIA_BACK_BUTTON = "dismissed_via_back_button";
public static final String INTENT_EXTRA_KEY_IMMERSIVE_MODE_ON = "immersive_mode_on";
public static final String INTENT_EXTRA_KEY_LOAD_URL = "load_url";
public static final String INTENT_EXTRA_KEY_SDK_KEY = "sdk_key";
public static final String URI_PATH_WEBVIEW_EVENT = "webview_event";
private final AtomicBoolean a = new AtomicBoolean();
private String b;
private WebView c;
private EventListener d;
public interface EventListener {
void onReceivedEvent(String str);
}
public class a extends pi {
final /* synthetic */ j a;
public a(j jVar) {
this.a = jVar;
}
/* JADX INFO: Access modifiers changed from: private */
public /* synthetic */ void a(j jVar) {
if (!((Boolean) jVar.a(sj.T5)).booleanValue() || !AppLovinWebViewActivity.this.a.compareAndSet(false, true)) {
AppLovinWebViewActivity.this.finish();
return;
}
AppLovinWebViewActivity.this.a(jVar);
if (StringUtils.isValidString(AppLovinWebViewActivity.this.b)) {
AppLovinWebViewActivity.this.c.loadUrl(AppLovinWebViewActivity.this.b);
}
}
@Override // com.applovin.impl.pi, android.webkit.WebViewClient
public boolean onRenderProcessGone(WebView webView, RenderProcessGoneDetail renderProcessGoneDetail) {
if (AppLovinWebViewActivity.this.c == webView) {
AppLovinWebViewActivity.this.c.destroy();
AppLovinWebViewActivity.this.c = null;
AppLovinWebViewActivity appLovinWebViewActivity = AppLovinWebViewActivity.this;
final j jVar = this.a;
appLovinWebViewActivity.runOnUiThread(new Runnable() { // from class: com.applovin.sdk.AppLovinWebViewActivity$a$$ExternalSyntheticLambda0
@Override // java.lang.Runnable
public final void run() {
AppLovinWebViewActivity.a.this.a(jVar);
}
});
}
return super.onRenderProcessGone(webView, renderProcessGoneDetail);
}
@Override // android.webkit.WebViewClient
public boolean shouldOverrideUrlLoading(WebView webView, String str) {
Uri parse = Uri.parse(str);
String scheme = parse.getScheme();
String host = parse.getHost();
String path = parse.getPath();
this.a.J();
if (n.a()) {
this.a.J().a("AppLovinWebViewActivity", "Handling url load: " + str);
}
if (!"applovin".equalsIgnoreCase(scheme) || !"com.applovin.sdk".equalsIgnoreCase(host) || AppLovinWebViewActivity.this.d == null) {
return super.shouldOverrideUrlLoading(webView, str);
}
if (!path.endsWith(AppLovinWebViewActivity.URI_PATH_WEBVIEW_EVENT)) {
return true;
}
Set<String> queryParameterNames = parse.getQueryParameterNames();
String str2 = queryParameterNames.isEmpty() ? "" : (String) queryParameterNames.toArray()[0];
if (!StringUtils.isValidString(str2)) {
this.a.J();
if (!n.a()) {
return true;
}
this.a.J().b("AppLovinWebViewActivity", "Failed to parse WebView event parameter");
return true;
}
String queryParameter = parse.getQueryParameter(str2);
this.a.J();
if (n.a()) {
this.a.J().a("AppLovinWebViewActivity", "Parsed WebView event parameter name: " + str2 + " and value: " + queryParameter);
}
AppLovinWebViewActivity.this.d.onReceivedEvent(queryParameter);
return true;
}
}
@Override // android.app.Activity
public void onBackPressed() {
EventListener eventListener = this.d;
if (eventListener != null) {
eventListener.onReceivedEvent(EVENT_DISMISSED_VIA_BACK_BUTTON);
}
super.onBackPressed();
}
@Override // android.app.Activity
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
String stringExtra = getIntent().getStringExtra(INTENT_EXTRA_KEY_SDK_KEY);
if (TextUtils.isEmpty(stringExtra)) {
n.h("AppLovinWebViewActivity", "No SDK key specified");
finish();
return;
}
a(AppLovinSdk.getInstance(stringExtra, new AppLovinSdkSettings(getApplicationContext()), getApplicationContext()).a());
if (getIntent().getBooleanExtra(INTENT_EXTRA_KEY_IMMERSIVE_MODE_ON, false)) {
getWindow().getDecorView().setSystemUiVisibility(5894);
}
String stringExtra2 = getIntent().getStringExtra(INTENT_EXTRA_KEY_LOAD_URL);
if (StringUtils.isValidString(stringExtra2)) {
this.b = stringExtra2;
}
if (StringUtils.isValidString(this.b)) {
this.c.loadUrl(this.b);
}
}
/* JADX INFO: Access modifiers changed from: private */
public void a(j jVar) {
WebView b = yp.b(this, "WebView Activity");
this.c = b;
if (b == null) {
finish();
return;
}
setContentView(b);
WebSettings settings = this.c.getSettings();
settings.setSupportMultipleWindows(false);
settings.setJavaScriptEnabled(true);
this.c.setVerticalScrollBarEnabled(true);
this.c.setHorizontalScrollBarEnabled(true);
this.c.setScrollBarStyle(33554432);
this.c.setWebViewClient(new a(jVar));
}
public void loadUrl(String str, EventListener eventListener) {
this.d = eventListener;
this.b = str;
this.a.set(false);
WebView webView = this.c;
if (webView != null) {
webView.loadUrl(str);
}
}
}