正在查看: FileWipe Pro v3.0.0 应用的 AppLovinWebViewActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: FileWipe Pro v3.0.0 应用的 AppLovinWebViewActivity.java JAVA 源代码文件
本页面展示 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.a7;
import com.applovin.impl.h4;
import com.applovin.impl.l4;
import com.applovin.impl.sdk.k;
import com.applovin.impl.sdk.o;
import com.applovin.impl.sdk.utils.CollectionUtils;
import com.applovin.impl.sdk.utils.StringUtils;
import com.applovin.sdk.AppLovinWebViewActivity;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean;
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 f4926a = new AtomicBoolean();
private String f4927b;
private WebView f4928c;
private EventListener f4929d;
public interface EventListener {
void onReceivedEvent(String str);
}
public void loadUrl(String str, EventListener eventListener) {
this.f4929d = eventListener;
this.f4927b = str;
this.f4926a.set(false);
WebView webView = this.f4928c;
if (webView != null) {
webView.loadUrl(str);
}
}
@Override
public void onBackPressed() {
EventListener eventListener = this.f4929d;
if (eventListener != null) {
eventListener.onReceivedEvent(EVENT_DISMISSED_VIA_BACK_BUTTON);
}
super.onBackPressed();
}
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
if (TextUtils.isEmpty(getIntent().getStringExtra(INTENT_EXTRA_KEY_SDK_KEY))) {
o.h("AppLovinWebViewActivity", "No SDK key specified");
finish();
return;
}
a(AppLovinSdk.getInstance(getApplicationContext()).a());
if (getIntent().getBooleanExtra(INTENT_EXTRA_KEY_IMMERSIVE_MODE_ON, false)) {
getWindow().getDecorView().setSystemUiVisibility(5894);
}
String stringExtra = getIntent().getStringExtra(INTENT_EXTRA_KEY_LOAD_URL);
if (StringUtils.isValidString(stringExtra)) {
this.f4927b = stringExtra;
}
if (StringUtils.isValidString(this.f4927b)) {
this.f4928c.loadUrl(this.f4927b);
}
}
public void a(k kVar) {
WebView b10 = a7.b(this, "WebView Activity");
this.f4928c = b10;
if (b10 == null) {
finish();
return;
}
setContentView(b10);
WebSettings settings = this.f4928c.getSettings();
settings.setSupportMultipleWindows(false);
settings.setJavaScriptEnabled(true);
this.f4928c.setVerticalScrollBarEnabled(true);
this.f4928c.setHorizontalScrollBarEnabled(true);
this.f4928c.setScrollBarStyle(33554432);
this.f4928c.setWebViewClient(new a(kVar));
}
public class a extends h4 {
final k f4930a;
public a(k kVar) {
this.f4930a = kVar;
}
public void a(k kVar) {
if (!((Boolean) kVar.a(l4.f2984r5)).booleanValue() || !AppLovinWebViewActivity.this.f4926a.compareAndSet(false, true)) {
AppLovinWebViewActivity.this.finish();
return;
}
AppLovinWebViewActivity.this.a(kVar);
if (StringUtils.isValidString(AppLovinWebViewActivity.this.f4927b)) {
AppLovinWebViewActivity.this.f4928c.loadUrl(AppLovinWebViewActivity.this.f4927b);
}
}
@Override
public boolean onRenderProcessGone(WebView webView, RenderProcessGoneDetail renderProcessGoneDetail) {
if (AppLovinWebViewActivity.this.f4928c == webView) {
AppLovinWebViewActivity.this.f4928c.destroy();
AppLovinWebViewActivity.this.f4928c = null;
AppLovinWebViewActivity appLovinWebViewActivity = AppLovinWebViewActivity.this;
final k kVar = this.f4930a;
appLovinWebViewActivity.runOnUiThread(new Runnable() {
@Override
public final void run() {
AppLovinWebViewActivity.a.this.a(kVar);
}
});
}
return super.onRenderProcessGone(webView, renderProcessGoneDetail);
}
@Override
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.f4930a.O();
if (o.a()) {
s1.a.y("Handling url load: ", str, this.f4930a.O(), "AppLovinWebViewActivity");
}
if (!"applovin".equalsIgnoreCase(scheme) || !"com.applovin.sdk".equalsIgnoreCase(host) || AppLovinWebViewActivity.this.f4929d == 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.f4930a.O();
if (!o.a()) {
return true;
}
this.f4930a.O().b("AppLovinWebViewActivity", "Failed to parse WebView event parameter");
return true;
}
String queryParameter = parse.getQueryParameter(str2);
this.f4930a.O();
if (o.a()) {
this.f4930a.O().a("AppLovinWebViewActivity", j0.a.h("Parsed WebView event parameter name: ", str2, " and value: ", queryParameter));
}
AppLovinWebViewActivity.this.f4929d.onReceivedEvent(queryParameter);
return true;
}
@Override
public Map a() {
return CollectionUtils.hashMap("name", "AppLovinWebViewActivity");
}
}
}