MyRecorder v1.01.90.0219版本的 MD5 值为:c361f51174a0bf833abfa72929caf8d3
以下内容为反编译后的 f.java 源代码,内容仅作参考
package hj;
import android.annotation.TargetApi;
import android.net.Uri;
import android.os.Build;
import android.os.Handler;
import android.os.Looper;
import android.util.Log;
import android.webkit.RenderProcessGoneDetail;
import android.webkit.WebResourceError;
import android.webkit.WebResourceRequest;
import android.webkit.WebResourceResponse;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.webkit.WebViewRenderProcess;
import android.webkit.WebViewRenderProcessClient;
import com.facebook.gamingservices.cloudgaming.internal.SDKConstants;
import ij.c;
import java.util.concurrent.ExecutorService;
import net.pubnative.lite.sdk.models.RemoteConfigFeature;
import net.pubnative.lite.sdk.mraid.MRAIDNativeFeature;
import nk.j;
import nk.s;
import ol.i;
import ol.u;
import ol.v;
import qi.o;
import qi.p0;
import xi.k;
public final class f extends WebViewClient implements ij.c {
public static final a Companion = new a(null);
private static final String TAG = "VungleWebClient";
private final xi.b advertisement;
private boolean collectConsent;
private c.b errorHandler;
private String gdprAccept;
private String gdprBody;
private String gdprDeny;
private String gdprTitle;
private Boolean isViewable;
private WebView loadedWebView;
private c.a mraidDelegate;
private final ExecutorService offloadExecutor;
private final k placement;
private boolean ready;
private aj.f webViewObserver;
public static final class a {
private a() {
}
public a(j jVar) {
this();
}
}
public static final class b extends WebViewRenderProcessClient {
private c.b errorHandler;
public b(c.b bVar) {
this.errorHandler = bVar;
}
public final c.b getErrorHandler() {
return this.errorHandler;
}
@Override
public void onRenderProcessResponsive(WebView webView, WebViewRenderProcess webViewRenderProcess) {
s.h(webView, "webView");
}
@Override
public void onRenderProcessUnresponsive(WebView webView, WebViewRenderProcess webViewRenderProcess) {
s.h(webView, "webView");
StringBuilder sb2 = new StringBuilder();
sb2.append("onRenderProcessUnresponsive(Title = ");
sb2.append(webView.getTitle());
sb2.append(", URL = ");
sb2.append(webView.getOriginalUrl());
sb2.append(", (webViewRenderProcess != null) = ");
sb2.append(webViewRenderProcess != null);
c.b bVar = this.errorHandler;
if (bVar != null) {
bVar.onRenderProcessUnresponsive(webView, webViewRenderProcess);
}
}
public final void setErrorHandler(c.b bVar) {
this.errorHandler = bVar;
}
}
public f(xi.b bVar, k kVar, ExecutorService executorService) {
s.h(bVar, "advertisement");
s.h(kVar, "placement");
s.h(executorService, "offloadExecutor");
this.advertisement = bVar;
this.placement = kVar;
this.offloadExecutor = executorService;
}
public static void getCollectConsent$vungle_ads_release$annotations() {
}
public static void getErrorHandler$vungle_ads_release$annotations() {
}
public static void getGdprAccept$vungle_ads_release$annotations() {
}
public static void getGdprBody$vungle_ads_release$annotations() {
}
public static void getGdprDeny$vungle_ads_release$annotations() {
}
public static void getGdprTitle$vungle_ads_release$annotations() {
}
public static void getLoadedWebView$vungle_ads_release$annotations() {
}
public static void getMraidDelegate$vungle_ads_release$annotations() {
}
public static void getReady$vungle_ads_release$annotations() {
}
public static void getWebViewObserver$vungle_ads_release$annotations() {
}
private final void handleWebViewError(String str, String str2, boolean z7) {
String str3 = str2 + ' ' + str;
c.b bVar = this.errorHandler;
if (bVar != null) {
bVar.onReceivedError(str3, z7);
}
}
private final boolean isCriticalAsset(String str) {
if (str.length() > 0) {
return this.advertisement.getDownloadableUrls().containsValue(str);
}
return false;
}
public static void isViewable$vungle_ads_release$annotations() {
}
private final void runJavascriptOnWebView(WebView webView, String str) {
if (webView != null) {
try {
webView.evaluateJavascript(str, null);
} catch (Exception e10) {
o oVar = o.INSTANCE;
oVar.logError$vungle_ads_release(313, "Evaluate js failed " + e10.getLocalizedMessage(), this.placement.getReferenceId(), this.advertisement.getCreativeId(), this.advertisement.eventId());
}
}
}
public static final void m45shouldOverrideUrlLoading$lambda4$lambda3$lambda2(c.a aVar, String str, u uVar, Handler handler, final f fVar, final WebView webView) {
s.h(aVar, "$it");
s.h(str, "$command");
s.h(uVar, "$args");
s.h(handler, "$handler");
s.h(fVar, "this$0");
if (aVar.processCommand(str, uVar)) {
handler.post(new Runnable() {
@Override
public final void run() {
f.m46shouldOverrideUrlLoading$lambda4$lambda3$lambda2$lambda1(f.this, webView);
}
});
}
}
public static final void m46shouldOverrideUrlLoading$lambda4$lambda3$lambda2$lambda1(f fVar, WebView webView) {
s.h(fVar, "this$0");
fVar.runJavascriptOnWebView(webView, "window.vungle.mraidBridge.notifyCommandComplete()");
}
public final boolean getCollectConsent$vungle_ads_release() {
return this.collectConsent;
}
public final c.b getErrorHandler$vungle_ads_release() {
return this.errorHandler;
}
public final String getGdprAccept$vungle_ads_release() {
return this.gdprAccept;
}
public final String getGdprBody$vungle_ads_release() {
return this.gdprBody;
}
public final String getGdprDeny$vungle_ads_release() {
return this.gdprDeny;
}
public final String getGdprTitle$vungle_ads_release() {
return this.gdprTitle;
}
public final WebView getLoadedWebView$vungle_ads_release() {
return this.loadedWebView;
}
public final c.a getMraidDelegate$vungle_ads_release() {
return this.mraidDelegate;
}
public final boolean getReady$vungle_ads_release() {
return this.ready;
}
public final aj.f getWebViewObserver$vungle_ads_release() {
return this.webViewObserver;
}
public final Boolean isViewable$vungle_ads_release() {
return this.isViewable;
}
@Override
public void notifyPropertiesChange(boolean z7) {
WebView webView = this.loadedWebView;
if (webView != null) {
v vVar = new v();
v vVar2 = new v();
i.b(vVar2, "width", Integer.valueOf(webView.getWidth()));
i.b(vVar2, "height", Integer.valueOf(webView.getHeight()));
u a10 = vVar2.a();
v vVar3 = new v();
i.b(vVar3, "x", 0);
i.b(vVar3, "y", 0);
i.b(vVar3, "width", Integer.valueOf(webView.getWidth()));
i.b(vVar3, "height", Integer.valueOf(webView.getHeight()));
u a11 = vVar3.a();
v vVar4 = new v();
Boolean bool = Boolean.FALSE;
i.a(vVar4, MRAIDNativeFeature.SMS, bool);
i.a(vVar4, MRAIDNativeFeature.TEL, bool);
i.a(vVar4, MRAIDNativeFeature.CALENDAR, bool);
i.a(vVar4, MRAIDNativeFeature.STORE_PICTURE, bool);
i.a(vVar4, MRAIDNativeFeature.INLINE_VIDEO, bool);
u a12 = vVar4.a();
vVar.b(SDKConstants.PARAM_CONTEXT_MAX_SIZE, a10);
vVar.b("screenSize", a10);
vVar.b("defaultPosition", a11);
vVar.b("currentPosition", a11);
vVar.b("supports", a12);
i.c(vVar, "placementType", this.advertisement.templateType());
Boolean bool2 = this.isViewable;
if (bool2 != null) {
i.a(vVar, "isViewable", Boolean.valueOf(bool2.booleanValue()));
}
i.c(vVar, "os", "android");
i.c(vVar, "osVersion", String.valueOf(Build.VERSION.SDK_INT));
i.a(vVar, "incentivized", this.placement.getIncentivized());
i.b(vVar, "enableBackImmediately", Integer.valueOf(this.advertisement.getShowCloseDelay(this.placement.getIncentivized())));
i.c(vVar, "version", "1.0");
if (this.collectConsent) {
i.a(vVar, "consentRequired", Boolean.TRUE);
i.c(vVar, "consentTitleText", this.gdprTitle);
i.c(vVar, "consentBodyText", this.gdprBody);
i.c(vVar, "consentAcceptButtonText", this.gdprAccept);
i.c(vVar, "consentDenyButtonText", this.gdprDeny);
} else {
i.a(vVar, "consentRequired", bool);
}
i.c(vVar, "sdkVersion", p0.VERSION_NAME);
u a13 = vVar.a();
StringBuilder sb2 = new StringBuilder();
sb2.append("loadJs->javascript:window.vungle.mraidBridge.notifyPropertiesChange(");
sb2.append(a13);
sb2.append(',');
sb2.append(z7);
sb2.append(')');
runJavascriptOnWebView(webView, "window.vungle.mraidBridge.notifyPropertiesChange(" + a13 + ',' + z7 + ')');
}
}
@Override
public void onPageFinished(WebView webView, String str) {
super.onPageFinished(webView, str);
if (webView == null) {
return;
}
this.loadedWebView = webView;
webView.setVisibility(0);
notifyPropertiesChange(true);
if (Build.VERSION.SDK_INT >= 29) {
webView.setWebViewRenderProcessClient(new b(this.errorHandler));
}
aj.f fVar = this.webViewObserver;
if (fVar != null) {
fVar.onPageFinished(webView);
}
}
@Override
public void onReceivedError(WebView webView, int i10, String str, String str2) {
s.h(str, "description");
s.h(str2, "failingUrl");
super.onReceivedError(webView, i10, str, str2);
if (Build.VERSION.SDK_INT < 23) {
boolean isCriticalAsset = isCriticalAsset(str2);
Log.e(TAG, "Error desc " + str + " for URL " + str2);
handleWebViewError(str, str2, isCriticalAsset);
}
}
@Override
public void onReceivedError(WebView webView, WebResourceRequest webResourceRequest, WebResourceError webResourceError) {
super.onReceivedError(webView, webResourceRequest, webResourceError);
if (Build.VERSION.SDK_INT >= 23) {
String valueOf = String.valueOf(webResourceError != null ? webResourceError.getDescription() : null);
String valueOf2 = String.valueOf(webResourceRequest != null ? webResourceRequest.getUrl() : null);
boolean z7 = true;
boolean z9 = webResourceRequest != null && webResourceRequest.isForMainFrame();
Log.e(TAG, "Error desc " + valueOf + ' ' + z9 + " for URL " + valueOf2);
handleWebViewError(valueOf, valueOf2, (isCriticalAsset(valueOf2) && z9) ? false : false);
}
}
@Override
public void onReceivedHttpError(WebView webView, WebResourceRequest webResourceRequest, WebResourceResponse webResourceResponse) {
super.onReceivedHttpError(webView, webResourceRequest, webResourceResponse);
String valueOf = String.valueOf(webResourceResponse != null ? Integer.valueOf(webResourceResponse.getStatusCode()) : null);
String valueOf2 = String.valueOf(webResourceRequest != null ? webResourceRequest.getUrl() : null);
boolean z7 = true;
boolean z9 = webResourceRequest != null && webResourceRequest.isForMainFrame();
Log.e(TAG, "Http Error desc " + valueOf + ' ' + z9 + " for URL " + valueOf2);
handleWebViewError(valueOf, valueOf2, (isCriticalAsset(valueOf2) && z9) ? false : false);
}
@Override
@TargetApi(26)
public boolean onRenderProcessGone(WebView webView, RenderProcessGoneDetail renderProcessGoneDetail) {
StringBuilder sb2 = new StringBuilder();
sb2.append("onRenderProcessGone url: ");
sb2.append(webView != null ? webView.getUrl() : null);
sb2.append(", did crash: ");
sb2.append(renderProcessGoneDetail != null ? Boolean.valueOf(renderProcessGoneDetail.didCrash()) : null);
this.loadedWebView = null;
c.b bVar = this.errorHandler;
if (bVar != null) {
return bVar.onWebRenderingProcessGone(webView, renderProcessGoneDetail != null ? Boolean.valueOf(renderProcessGoneDetail.didCrash()) : null);
}
return super.onRenderProcessGone(webView, renderProcessGoneDetail);
}
@Override
public void setAdVisibility(boolean z7) {
this.isViewable = Boolean.valueOf(z7);
notifyPropertiesChange(false);
}
public final void setCollectConsent$vungle_ads_release(boolean z7) {
this.collectConsent = z7;
}
@Override
public void setConsentStatus(boolean z7, String str, String str2, String str3, String str4) {
this.collectConsent = z7;
this.gdprTitle = str;
this.gdprBody = str2;
this.gdprAccept = str3;
this.gdprDeny = str4;
}
@Override
public void setErrorHandler(c.b bVar) {
s.h(bVar, "errorHandler");
this.errorHandler = bVar;
}
public final void setErrorHandler$vungle_ads_release(c.b bVar) {
this.errorHandler = bVar;
}
public final void setGdprAccept$vungle_ads_release(String str) {
this.gdprAccept = str;
}
public final void setGdprBody$vungle_ads_release(String str) {
this.gdprBody = str;
}
public final void setGdprDeny$vungle_ads_release(String str) {
this.gdprDeny = str;
}
public final void setGdprTitle$vungle_ads_release(String str) {
this.gdprTitle = str;
}
public final void setLoadedWebView$vungle_ads_release(WebView webView) {
this.loadedWebView = webView;
}
@Override
public void setMraidDelegate(c.a aVar) {
this.mraidDelegate = aVar;
}
public final void setMraidDelegate$vungle_ads_release(c.a aVar) {
this.mraidDelegate = aVar;
}
public final void setReady$vungle_ads_release(boolean z7) {
this.ready = z7;
}
public final void setViewable$vungle_ads_release(Boolean bool) {
this.isViewable = bool;
}
@Override
public void setWebViewObserver(aj.f fVar) {
this.webViewObserver = fVar;
}
public final void setWebViewObserver$vungle_ads_release(aj.f fVar) {
this.webViewObserver = fVar;
}
@Override
public boolean shouldOverrideUrlLoading(final WebView webView, String str) {
StringBuilder sb2 = new StringBuilder();
sb2.append("MRAID Command ");
sb2.append(str);
if (str == null || str.length() == 0) {
Log.e(TAG, "Invalid URL ");
return false;
}
Uri parse = Uri.parse(str);
if (parse == null || parse.getScheme() == null) {
return false;
}
String scheme = parse.getScheme();
if (s.c(scheme, RemoteConfigFeature.Rendering.MRAID)) {
final String host = parse.getHost();
if (host != null) {
if (!s.c("propertiesChangeCompleted", host)) {
final c.a aVar = this.mraidDelegate;
if (aVar != null) {
v vVar = new v();
for (String str2 : parse.getQueryParameterNames()) {
s.g(str2, "param");
i.c(vVar, str2, parse.getQueryParameter(str2));
}
final u a10 = vVar.a();
final Handler handler = new Handler(Looper.getMainLooper());
this.offloadExecutor.submit(new Runnable() {
@Override
public final void run() {
f.m45shouldOverrideUrlLoading$lambda4$lambda3$lambda2(c.a.this, host, a10, handler, this, webView);
}
});
}
} else if (!this.ready) {
u createMRAIDArgs = this.advertisement.createMRAIDArgs();
runJavascriptOnWebView(webView, "window.vungle.mraidBridge.notifyReadyEvent(" + createMRAIDArgs + ')');
this.ready = true;
}
return true;
}
} else if (wk.o.v("http", scheme, true) || wk.o.v("https", scheme, true)) {
StringBuilder sb3 = new StringBuilder();
sb3.append("Open URL");
sb3.append(str);
c.a aVar2 = this.mraidDelegate;
if (aVar2 != null) {
v vVar2 = new v();
i.c(vVar2, "url", str);
aVar2.processCommand("openNonMraid", vVar2.a());
}
return true;
}
return false;
}
}