正在查看: Barstool v5.21.2 应用的 StaticAdController.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Barstool v5.21.2 应用的 StaticAdController.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.adsbynimbus.render;
import android.app.Dialog;
import android.content.Context;
import android.content.Intent;
import android.graphics.Rect;
import android.net.Uri;
import android.webkit.WebSettings;
import android.webkit.WebView;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.webkit.JavaScriptReplyProxy;
import androidx.webkit.WebMessageCompat;
import androidx.webkit.WebViewCompat;
import androidx.webkit.WebViewFeature;
import com.adsbynimbus.Nimbus;
import com.adsbynimbus.NimbusAd;
import com.adsbynimbus.NimbusError;
import com.adsbynimbus.internal.Components;
import com.adsbynimbus.render.internal.AdTrackersKt;
import com.adsbynimbus.render.internal.WebViewExtensionsKt;
import com.adsbynimbus.render.mraid.Host;
import com.adsbynimbus.render.mraid.HostKt;
import com.adsbynimbus.render.mraid.Position;
import kotlin.Lazy;
import kotlin.LazyKt;
import kotlin.Metadata;
import kotlin.Result;
import kotlin.ResultKt;
import kotlin.coroutines.CoroutineContext;
import kotlin.jvm.functions.Function0;
import kotlin.jvm.internal.Intrinsics;
import kotlinx.coroutines.BuildersKt;
import kotlinx.coroutines.CoroutineStart;
import kotlinx.coroutines.Dispatchers;
@Metadata(d1 = {"\u0000n\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\b\n\u0002\b\u0006\n\u0002\u0010\u000b\n\u0002\b\u0007\n\u0002\u0010\t\n\u0002\b\u0005\n\u0002\u0010\u000e\n\u0002\b\u0005\n\u0002\u0018\u0002\n\u0002\b\u0010\n\u0002\u0010\u0002\n\u0002\b\u0006\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\b\b\u0000\u0018\u00002\u00020\u00012\u00020\u0002B\u001d\u0012\u0006\u0010\u0003\u001a\u00020\u0004\u0012\u0006\u0010\u0005\u001a\u00020\u0006\u0012\u0006\u0010\u0007\u001a\u00020\b¢\u0006\u0002\u0010\tJ\b\u00103\u001a\u000204H\u0017J\r\u00105\u001a\u000204H\u0000¢\u0006\u0002\b6J\b\u00107\u001a\u000204H\u0014J\u0018\u00108\u001a\u0002042\u0006\u00109\u001a\u00020\b2\u0006\u0010:\u001a\u00020;H\u0015J\r\u0010<\u001a\u000204H\u0000¢\u0006\u0002\b=J0\u0010>\u001a\u0002042\u0006\u0010+\u001a\u00020?2\u0006\u0010@\u001a\u00020A2\u0006\u0010B\u001a\u00020C2\u0006\u0010D\u001a\u00020\u000f2\u0006\u0010E\u001a\u00020FH\u0016J\u0015\u0010G\u001a\u00020\u000f2\u0006\u0010H\u001a\u00020CH\u0000¢\u0006\u0002\bIJ\r\u0010J\u001a\u000204H\u0000¢\u0006\u0002\bKJ\b\u0010L\u001a\u000204H\u0016J\b\u0010M\u001a\u000204H\u0016R\u0011\u0010\u0005\u001a\u00020\u0006¢\u0006\b\n\u0000\u001a\u0004\b\n\u0010\u000bR\u0011\u0010\u0007\u001a\u00020\b¢\u0006\b\n\u0000\u001a\u0004\b\f\u0010\rR\u001a\u0010\u000e\u001a\u00020\u000fX\u0086\u000e¢\u0006\u000e\n\u0000\u001a\u0004\b\u0010\u0010\u0011\"\u0004\b\u0012\u0010\u0013R\u0012\u0010\u0014\u001a\u00020\u000f8Æ\u0002¢\u0006\u0006\u001a\u0004\b\u0015\u0010\u0011R\u001a\u0010\u0016\u001a\u00020\u0017X\u0086\u000e¢\u0006\u000e\n\u0000\u001a\u0004\b\u0018\u0010\u0019\"\u0004\b\u001a\u0010\u001bR\u001c\u0010\u001c\u001a\u0004\u0018\u00010\u001dX\u0086\u000e¢\u0006\u000e\n\u0000\u001a\u0004\b\u001e\u0010\u001f\"\u0004\b \u0010!R\u001b\u0010\"\u001a\u00020#8FX\u0086\u0084\u0002¢\u0006\f\n\u0004\b&\u0010'\u001a\u0004\b$\u0010%R\u001a\u0010(\u001a\u00020\u000fX\u0086\u000e¢\u0006\u000e\n\u0000\u001a\u0004\b)\u0010\u0011\"\u0004\b*\u0010\u0013R\u0014\u0010+\u001a\u00020\u0004X\u0096\u0004¢\u0006\b\n\u0000\u001a\u0004\b,\u0010-R$\u0010/\u001a\u00020\b2\u0006\u0010.\u001a\u00020\b@VX\u0096\u000e¢\u0006\u000e\n\u0000\u001a\u0004\b0\u0010\r\"\u0004\b1\u00102¨\u0006N"}, d2 = {"Lcom/adsbynimbus/render/StaticAdController;", "Lcom/adsbynimbus/render/AdController;", "Landroidx/webkit/WebViewCompat$WebMessageListener;", "layout", "Lcom/adsbynimbus/render/NimbusAdView;", "ad", "Lcom/adsbynimbus/NimbusAd;", "completionTimeout", "", "(Lcom/adsbynimbus/render/NimbusAdView;Lcom/adsbynimbus/NimbusAd;I)V", "getAd", "()Lcom/adsbynimbus/NimbusAd;", "getCompletionTimeout", "()I", "didFireImpression", "", "getDidFireImpression", "()Z", "setDidFireImpression", "(Z)V", "didUserClick", "getDidUserClick", "lastClickTime", "", "getLastClickTime", "()J", "setLastClickTime", "(J)V", "markup", "", "getMarkup", "()Ljava/lang/String;", "setMarkup", "(Ljava/lang/String;)V", "mraidHost", "Lcom/adsbynimbus/render/mraid/Host;", "getMraidHost", "()Lcom/adsbynimbus/render/mraid/Host;", "mraidHost$delegate", "Lkotlin/Lazy;", "mraidInitialized", "getMraidInitialized", "setMraidInitialized", "view", "getView", "()Lcom/adsbynimbus/render/NimbusAdView;", "value", "volume", "getVolume", "setVolume", "(I)V", "destroy", "", "maybeFireImpression", "maybeFireImpression$static_release", "onClickDetected", "onExposureChanged", "exposure", "visibleRect", "Landroid/graphics/Rect;", "onLoaded", "onLoaded$static_release", "onPostMessage", "Landroid/webkit/WebView;", "message", "Landroidx/webkit/WebMessageCompat;", "sourceOrigin", "Landroid/net/Uri;", "isMainFrame", "replyProxy", "Landroidx/webkit/JavaScriptReplyProxy;", "openClickThrough", "uri", "openClickThrough$static_release", "renderProcessGone", "renderProcessGone$static_release", "start", "stop", "static_release"}, k = 1, mv = {1, 8, 0}, xi = ConstraintLayout.LayoutParams.Table.LAYOUT_CONSTRAINT_VERTICAL_CHAINSTYLE)
public final class StaticAdController extends AdController implements WebViewCompat.WebMessageListener {
private final NimbusAd ad;
private final int completionTimeout;
private boolean didFireImpression;
private long lastClickTime;
private String markup;
private final Lazy mraidHost;
private boolean mraidInitialized;
private final NimbusAdView view;
private int volume;
@Metadata(k = 3, mv = {1, 8, 0}, xi = ConstraintLayout.LayoutParams.Table.LAYOUT_CONSTRAINT_VERTICAL_CHAINSTYLE)
public class WhenMappings {
public static final int[] $EnumSwitchMapping$0;
static {
int[] iArr = new int[AdState.values().length];
try {
iArr[AdState.LOADING.ordinal()] = 1;
} catch (NoSuchFieldError unused) {
}
try {
iArr[AdState.READY.ordinal()] = 2;
} catch (NoSuchFieldError unused2) {
}
try {
iArr[AdState.RESUMED.ordinal()] = 3;
} catch (NoSuchFieldError unused3) {
}
try {
iArr[AdState.PAUSED.ordinal()] = 4;
} catch (NoSuchFieldError unused4) {
}
try {
iArr[AdState.DESTROYED.ordinal()] = 5;
} catch (NoSuchFieldError unused5) {
}
$EnumSwitchMapping$0 = iArr;
}
}
public final NimbusAd getAd() {
return this.ad;
}
public final int getCompletionTimeout() {
return this.completionTimeout;
}
public StaticAdController(NimbusAdView layout, NimbusAd ad, int completionTimeout) {
Intrinsics.checkNotNullParameter(layout, "layout");
Intrinsics.checkNotNullParameter(ad, "ad");
this.ad = ad;
this.completionTimeout = completionTimeout;
this.mraidHost = LazyKt.lazy(new Function0<Host>() {
{
super(0);
}
public final Host m5803invoke() {
StaticAdController staticAdController = StaticAdController.this;
return HostKt.mraidHost$default(staticAdController, staticAdController.getAd().isInterstitial() ? "interstitial" : HostKt.INLINE, null, null, false, 14, null);
}
});
this.view = layout;
}
public final boolean getDidFireImpression() {
return this.didFireImpression;
}
public final void setDidFireImpression(boolean z) {
this.didFireImpression = z;
}
public final long getLastClickTime() {
return this.lastClickTime;
}
public final void setLastClickTime(long j) {
this.lastClickTime = j;
}
public final String getMarkup() {
return this.markup;
}
public final void setMarkup(String str) {
this.markup = str;
}
public final boolean getMraidInitialized() {
return this.mraidInitialized;
}
public final void setMraidInitialized(boolean z) {
this.mraidInitialized = z;
}
public final Host getMraidHost() {
return (Host) this.mraidHost.getValue();
}
public final boolean getDidUserClick() {
return System.currentTimeMillis() - getLastClickTime() < 1000;
}
@Override
public int getVolume() {
return this.volume;
}
@Override
public void setVolume(int value) {
this.volume = value;
WebView webView = (WebView) getView().findViewById(R.id.nimbus_web_view);
if (webView != null) {
if (this.state == AdState.DESTROYED) {
webView = null;
}
if (webView != null) {
WebViewExtensionsKt.mute(webView, value == 0);
}
}
}
@Override
public void start() {
if (this.state == AdState.DESTROYED || !Components.isApi23()) {
return;
}
WebView webView = (WebView) getView().findViewById(R.id.nimbus_web_view);
WebSettings settings = webView != null ? webView.getSettings() : null;
if (settings == null) {
return;
}
settings.setOffscreenPreRaster(true);
}
@Override
public void stop() {
if (this.state != AdState.DESTROYED && Components.isApi23()) {
WebView webView = (WebView) getView().findViewById(R.id.nimbus_web_view);
WebSettings settings = webView != null ? webView.getSettings() : null;
if (settings != null) {
settings.setOffscreenPreRaster(false);
}
}
if (this.state == AdState.RESUMED) {
dispatchAdEvent(AdEvent.PAUSED);
}
}
@Override
public NimbusAdView getView() {
return this.view;
}
@Override
public void destroy() {
if (this.state != AdState.DESTROYED) {
dispatchAdEvent(AdEvent.DESTROYED);
WebView webView = (WebView) getView().findViewById(R.id.nimbus_web_view);
if (webView != null) {
if (WebViewFeature.isFeatureSupported("WEB_MESSAGE_LISTENER")) {
WebViewCompat.removeWebMessageListener(webView, "Adsbynimbus");
}
BuildersKt.launch$default(Components.getNimbusScope(), Dispatchers.getMain(), (CoroutineStart) null, new StaticAdController$destroy$1$1(webView, null), 2, (Object) null);
}
NimbusAdView view = getView();
NimbusAdView nimbusAdView = view;
Object tag = nimbusAdView.getTag(R.id.expand_container);
Dialog dialog = tag instanceof Dialog ? (Dialog) tag : null;
if (dialog != null) {
dialog.dismiss();
}
nimbusAdView.setTag(R.id.expand_container, null);
nimbusAdView.setTag(R.id.placeholder, null);
view.destroy();
}
}
@Override
protected void onExposureChanged(int exposure, Rect visibleRect) {
WebView webView;
WebView webView2;
Intrinsics.checkNotNullParameter(visibleRect, "visibleRect");
boolean z = true;
boolean z2 = exposure >= Math.max(Nimbus.getAdVisibilityMinPercentage(), 1);
int i = WhenMappings.$EnumSwitchMapping$0[this.state.ordinal()];
if (i == 1) {
String str = this.markup;
if (str != null) {
String str2 = z2 ? str : null;
if (str2 != null) {
WebView webView3 = (WebView) getView().findViewById(R.id.nimbus_web_view);
if (webView3 != null) {
webView3.loadDataWithBaseURL(StaticAdRenderer.BASE_URL, str2, null, null, null);
}
this.markup = null;
return;
}
return;
}
return;
}
if (i != 2) {
if (i != 3) {
if (i != 4) {
if (i == 5) {
return;
}
} else if (z2) {
dispatchAdEvent(AdEvent.RESUMED);
}
} else if (!z2) {
dispatchAdEvent(AdEvent.PAUSED);
}
} else if (z2) {
maybeFireImpression$static_release();
}
String updateExposure = HostKt.updateExposure(getMraidHost(), exposure, new Position(visibleRect.width(), visibleRect.height(), visibleRect.left, visibleRect.top));
if (updateExposure.length() > 0 && (webView2 = (WebView) getView().findViewById(R.id.nimbus_web_view)) != null) {
webView2.evaluateJavascript(updateExposure, null);
}
if (!WebViewFeature.isFeatureSupported("MUTE_AUDIO") || (webView = (WebView) getView().findViewById(R.id.nimbus_web_view)) == null) {
return;
}
WebView webView4 = this.state != AdState.DESTROYED ? webView : null;
if (webView4 != null) {
if (exposure != 0 && getVolume() != 0) {
z = false;
}
if (z != WebViewCompat.isAudioMuted(webView4)) {
WebViewCompat.setAudioMuted(webView4, z);
}
}
}
public final void onLoaded$static_release() {
if (this.state == AdState.LOADING) {
dispatchAdEvent(AdEvent.LOADED);
if (getView().getExposure() > 0) {
maybeFireImpression$static_release();
} else {
getView().onGlobalLayout();
}
}
}
public final void maybeFireImpression$static_release() {
if (this.didFireImpression) {
return;
}
this.didFireImpression = true;
dispatchAdEvent(AdEvent.IMPRESSION);
if (this.completionTimeout > 0) {
BuildersKt.launch$default(Components.getNimbusScope(), (CoroutineContext) null, (CoroutineStart) null, new StaticAdController$maybeFireImpression$1(this, null), 3, (Object) null);
}
}
@Override
protected void onClickDetected() {
this.lastClickTime = System.currentTimeMillis();
if (getVolume() == 0 || this.state != AdState.DESTROYED) {
setVolume(100);
}
}
public final void renderProcessGone$static_release() {
dispatchError(new NimbusError(NimbusError.ErrorType.WEBVIEW_ERROR, "WebView render process gone", (Throwable) null));
}
public void onPostMessage(WebView view, WebMessageCompat message, Uri sourceOrigin, boolean isMainFrame, JavaScriptReplyProxy replyProxy) {
Intrinsics.checkNotNullParameter(view, "view");
Intrinsics.checkNotNullParameter(message, "message");
Intrinsics.checkNotNullParameter(sourceOrigin, "sourceOrigin");
Intrinsics.checkNotNullParameter(replyProxy, "replyProxy");
String onMraidCommand = (!Intrinsics.areEqual(message.getData(), HostKt.READY) || this.mraidInitialized) ? HostKt.onMraidCommand(this, message.getData()) : HostKt.initMraid$default(this, null, false, 3, null);
if (onMraidCommand.length() > 0) {
view.evaluateJavascript(onMraidCommand, null);
}
}
public final boolean openClickThrough$static_release(Uri uri) {
Object obj;
Intrinsics.checkNotNullParameter(uri, "uri");
if (System.currentTimeMillis() - getLastClickTime() >= 1000 && !getView().getClickProtectionDisabled()) {
return false;
}
try {
Result.Companion companion = Result.Companion;
StaticAdController staticAdController = this;
Context context = getView().getContext();
Intent intent = new Intent("android.intent.action.VIEW", uri);
intent.setFlags(268435456);
context.startActivity(intent);
dispatchAdEvent(AdEvent.CLICKED);
AdTrackersKt.trackEvent$default(this.ad, AdEvent.CLICKED, null, 2, null);
obj = Result.constructor-impl(true);
} catch (Throwable th) {
Result.Companion companion2 = Result.Companion;
obj = Result.constructor-impl(ResultKt.createFailure(th));
}
if (Result.isFailure-impl(obj)) {
obj = false;
}
return ((Boolean) obj).booleanValue();
}
}