Files
rr3-apk/decompiled-community/sources/com/vungle/ads/VungleBannerView.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

492 lines
23 KiB
Java

package com.vungle.ads;
import android.content.Context;
import android.content.IntentFilter;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewParent;
import android.widget.RelativeLayout;
import com.vungle.ads.ServiceLocator;
import com.vungle.ads.internal.AdInternal;
import com.vungle.ads.internal.BannerAdImpl;
import com.vungle.ads.internal.ConfigManager;
import com.vungle.ads.internal.ImpressionTracker;
import com.vungle.ads.internal.executor.Executors;
import com.vungle.ads.internal.model.AdPayload;
import com.vungle.ads.internal.model.Placement;
import com.vungle.ads.internal.omsdk.OMTracker;
import com.vungle.ads.internal.platform.Platform;
import com.vungle.ads.internal.presenter.AdEventListener;
import com.vungle.ads.internal.presenter.AdPlayCallbackWrapper;
import com.vungle.ads.internal.presenter.MRAIDPresenter;
import com.vungle.ads.internal.protos.Sdk;
import com.vungle.ads.internal.ui.VungleWebClient;
import com.vungle.ads.internal.ui.WatermarkView;
import com.vungle.ads.internal.ui.view.MRAIDAdWidget;
import com.vungle.ads.internal.util.Logger;
import com.vungle.ads.internal.util.RingerModeReceiver;
import com.vungle.ads.internal.util.ViewUtility;
import java.util.concurrent.atomic.AtomicBoolean;
import kotlin.Lazy;
import kotlin.LazyKt__LazyJVMKt;
import kotlin.LazyThreadSafetyMode;
import kotlin.jvm.functions.Function0;
import kotlin.jvm.internal.DefaultConstructorMarker;
import kotlin.jvm.internal.Intrinsics;
/* loaded from: classes4.dex */
public final class VungleBannerView extends RelativeLayout {
public static final Companion Companion = new Companion(null);
private static final String TAG = "VungleBannerView";
private BannerAdListener adListener;
private final VungleAdSize adSize;
private final BannerAdImpl adViewImpl;
private MRAIDAdWidget adWidget;
private int calculatedPixelHeight;
private int calculatedPixelWidth;
private final AtomicBoolean destroyed;
private WatermarkView imageView;
private final Lazy impressionTracker$delegate;
private final AtomicBoolean isAdAttachedToWindow;
private final AtomicBoolean isAdDownloaded;
private boolean isOnImpressionCalled;
private final String placementId;
private MRAIDPresenter presenter;
private final AtomicBoolean presenterStarted;
private final RingerModeReceiver ringerModeReceiver;
public final BannerAdListener getAdListener() {
return this.adListener;
}
public final VungleAdSize getAdSize() {
return this.adSize;
}
public final String getPlacementId() {
return this.placementId;
}
public final void setAdListener(BannerAdListener bannerAdListener) {
this.adListener = bannerAdListener;
}
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
public VungleBannerView(final Context context, String placementId, VungleAdSize adSize) {
super(context);
Lazy lazy;
Intrinsics.checkNotNullParameter(context, "context");
Intrinsics.checkNotNullParameter(placementId, "placementId");
Intrinsics.checkNotNullParameter(adSize, "adSize");
this.placementId = placementId;
this.adSize = adSize;
this.ringerModeReceiver = new RingerModeReceiver();
BannerAdImpl bannerAdImpl = new BannerAdImpl(context, placementId, adSize, new AdConfig());
this.adViewImpl = bannerAdImpl;
this.destroyed = new AtomicBoolean(false);
this.presenterStarted = new AtomicBoolean(false);
this.isAdDownloaded = new AtomicBoolean(false);
this.isAdAttachedToWindow = new AtomicBoolean(false);
lazy = LazyKt__LazyJVMKt.lazy(new Function0() { // from class: com.vungle.ads.VungleBannerView$impressionTracker$2
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
{
super(0);
}
@Override // kotlin.jvm.functions.Function0
public final ImpressionTracker invoke() {
return new ImpressionTracker(context);
}
});
this.impressionTracker$delegate = lazy;
bannerAdImpl.setAdListener(new BannerAdListener() { // from class: com.vungle.ads.VungleBannerView.1
@Override // com.vungle.ads.BaseAdListener
public void onAdLoaded(BaseAd baseAd) {
Intrinsics.checkNotNullParameter(baseAd, "baseAd");
VungleBannerView.this.onBannerAdLoaded(baseAd);
}
@Override // com.vungle.ads.BaseAdListener
public void onAdStart(BaseAd baseAd) {
Intrinsics.checkNotNullParameter(baseAd, "baseAd");
BannerAdListener adListener = VungleBannerView.this.getAdListener();
if (adListener != null) {
adListener.onAdStart(baseAd);
}
}
@Override // com.vungle.ads.BaseAdListener
public void onAdImpression(BaseAd baseAd) {
Intrinsics.checkNotNullParameter(baseAd, "baseAd");
BannerAdListener adListener = VungleBannerView.this.getAdListener();
if (adListener != null) {
adListener.onAdImpression(baseAd);
}
}
@Override // com.vungle.ads.BaseAdListener
public void onAdEnd(BaseAd baseAd) {
Intrinsics.checkNotNullParameter(baseAd, "baseAd");
BannerAdListener adListener = VungleBannerView.this.getAdListener();
if (adListener != null) {
adListener.onAdEnd(baseAd);
}
}
@Override // com.vungle.ads.BaseAdListener
public void onAdClicked(BaseAd baseAd) {
Intrinsics.checkNotNullParameter(baseAd, "baseAd");
BannerAdListener adListener = VungleBannerView.this.getAdListener();
if (adListener != null) {
adListener.onAdClicked(baseAd);
}
}
@Override // com.vungle.ads.BaseAdListener
public void onAdLeftApplication(BaseAd baseAd) {
Intrinsics.checkNotNullParameter(baseAd, "baseAd");
BannerAdListener adListener = VungleBannerView.this.getAdListener();
if (adListener != null) {
adListener.onAdLeftApplication(baseAd);
}
}
@Override // com.vungle.ads.BaseAdListener
public void onAdFailedToLoad(BaseAd baseAd, VungleError adError) {
Intrinsics.checkNotNullParameter(baseAd, "baseAd");
Intrinsics.checkNotNullParameter(adError, "adError");
BannerAdListener adListener = VungleBannerView.this.getAdListener();
if (adListener != null) {
adListener.onAdFailedToLoad(baseAd, adError);
}
}
@Override // com.vungle.ads.BaseAdListener
public void onAdFailedToPlay(BaseAd baseAd, VungleError adError) {
Intrinsics.checkNotNullParameter(baseAd, "baseAd");
Intrinsics.checkNotNullParameter(adError, "adError");
BannerAdListener adListener = VungleBannerView.this.getAdListener();
if (adListener != null) {
adListener.onAdFailedToPlay(baseAd, adError);
}
}
});
}
public final AdConfig getAdConfig() {
return this.adViewImpl.getAdConfig();
}
public final String getCreativeId() {
return this.adViewImpl.getCreativeId();
}
public final String getEventId() {
return this.adViewImpl.getEventId();
}
private final ImpressionTracker getImpressionTracker() {
return (ImpressionTracker) this.impressionTracker$delegate.getValue();
}
public final VungleAdSize getAdViewSize() {
return this.adViewImpl.getAdViewSize();
}
public static /* synthetic */ void load$default(VungleBannerView vungleBannerView, String str, int i, Object obj) {
if ((i & 1) != 0) {
str = null;
}
vungleBannerView.load(str);
}
public final void load(String str) {
this.adViewImpl.load(str);
}
public final void finishAd() {
finishAdInternal(true);
}
@Override // android.view.View
public void onWindowVisibilityChanged(int i) {
super.onWindowVisibilityChanged(i);
setAdVisibility(i == 0);
}
@Override // android.view.ViewGroup, android.view.View
public void onAttachedToWindow() {
super.onAttachedToWindow();
Logger.Companion companion = Logger.Companion;
companion.d(TAG, "onAttachedToWindow(): " + hashCode());
this.isAdAttachedToWindow.set(true);
if (this.adViewImpl.getAdInternal$vungle_ads_release().getPlacement() != null) {
getContext().registerReceiver(this.ringerModeReceiver, new IntentFilter("android.media.RINGER_MODE_CHANGED"));
companion.d(TAG, "registerReceiver(): " + this.ringerModeReceiver.hashCode());
}
renderAd();
}
@Override // android.view.ViewGroup, android.view.View
public void onDetachedFromWindow() {
super.onDetachedFromWindow();
Logger.Companion.d(TAG, "onDetachedFromWindow(): " + hashCode());
this.isAdAttachedToWindow.set(false);
if (this.adViewImpl.getAdInternal$vungle_ads_release().getPlacement() != null) {
getContext().unregisterReceiver(this.ringerModeReceiver);
}
}
private final void setAdVisibility(boolean z) {
MRAIDPresenter mRAIDPresenter;
if (!this.isOnImpressionCalled || this.destroyed.get() || (mRAIDPresenter = this.presenter) == null) {
return;
}
mRAIDPresenter.setAdVisibility(z);
}
private final void checkHardwareAcceleration() {
Logger.Companion.w(TAG, "hardwareAccelerated = " + isHardwareAccelerated());
if (isHardwareAccelerated()) {
return;
}
AnalyticsClient.INSTANCE.logMetric$vungle_ads_release(Sdk.SDKMetric.SDKMetricType.HARDWARE_ACCELERATE_DISABLED, (r15 & 2) != 0 ? 0L : 0L, (r15 & 4) != 0 ? null : this.placementId, (r15 & 8) != 0 ? null : getCreativeId(), (r15 & 16) != 0 ? null : getEventId(), (r15 & 32) == 0 ? null : null);
}
/* JADX INFO: Access modifiers changed from: private */
public final void finishAdInternal(boolean z) {
if (this.destroyed.get()) {
return;
}
this.destroyed.set(true);
int i = (z ? 4 : 0) | 2;
MRAIDPresenter mRAIDPresenter = this.presenter;
if (mRAIDPresenter != null) {
mRAIDPresenter.stop();
}
MRAIDPresenter mRAIDPresenter2 = this.presenter;
if (mRAIDPresenter2 != null) {
mRAIDPresenter2.detach(i);
}
getImpressionTracker().destroy();
try {
ViewParent parent = getParent();
if (parent != null && (parent instanceof ViewGroup)) {
((ViewGroup) parent).removeView(this);
}
removeAllViews();
} catch (Exception e) {
Logger.Companion.d(TAG, "Removing webView error: " + e);
}
}
private final void renderAd() {
if (!this.isAdDownloaded.get() || !this.isAdAttachedToWindow.get() || this.destroyed.get()) {
Logger.Companion.d(TAG, "renderAd() - not ready");
return;
}
if (!this.presenterStarted.getAndSet(true)) {
MRAIDPresenter mRAIDPresenter = this.presenter;
if (mRAIDPresenter != null) {
mRAIDPresenter.prepare();
}
getImpressionTracker().addView(this, new ImpressionTracker.ImpressionListener() { // from class: com.vungle.ads.VungleBannerView$$ExternalSyntheticLambda0
@Override // com.vungle.ads.internal.ImpressionTracker.ImpressionListener
public final void onImpression(View view) {
VungleBannerView.m3826renderAd$lambda1(VungleBannerView.this, view);
}
});
}
MRAIDAdWidget mRAIDAdWidget = this.adWidget;
if (mRAIDAdWidget != null) {
if (!Intrinsics.areEqual(mRAIDAdWidget != null ? mRAIDAdWidget.getParent() : null, this)) {
addView(this.adWidget, this.calculatedPixelWidth, this.calculatedPixelHeight);
WatermarkView watermarkView = this.imageView;
if (watermarkView != null) {
addView(watermarkView, this.calculatedPixelWidth, this.calculatedPixelHeight);
WatermarkView watermarkView2 = this.imageView;
if (watermarkView2 != null) {
watermarkView2.bringToFront();
}
}
}
}
ViewGroup.LayoutParams layoutParams = getLayoutParams();
if (layoutParams != null) {
layoutParams.height = this.calculatedPixelHeight;
layoutParams.width = this.calculatedPixelWidth;
requestLayout();
}
}
/* JADX INFO: Access modifiers changed from: private */
/* renamed from: renderAd$lambda-1, reason: not valid java name */
public static final void m3826renderAd$lambda1(VungleBannerView this$0, View view) {
Intrinsics.checkNotNullParameter(this$0, "this$0");
Logger.Companion.d(TAG, "ImpressionTracker checked the banner view become visible.");
this$0.isOnImpressionCalled = true;
this$0.checkHardwareAcceleration();
MRAIDPresenter mRAIDPresenter = this$0.presenter;
if (mRAIDPresenter != null) {
mRAIDPresenter.start();
}
}
/* JADX INFO: Access modifiers changed from: private */
public final void onBannerAdLoaded(BaseAd baseAd) {
AnalyticsClient analyticsClient = AnalyticsClient.INSTANCE;
analyticsClient.logMetric$vungle_ads_release(new SingleValueMetric(Sdk.SDKMetric.SDKMetricType.PLAY_AD_API), (r13 & 2) != 0 ? null : this.placementId, (r13 & 4) != 0 ? null : getCreativeId(), (r13 & 8) != 0 ? null : getEventId(), (r13 & 16) != 0 ? null : null);
VungleError canPlayAd = this.adViewImpl.getAdInternal$vungle_ads_release().canPlayAd(true);
if (canPlayAd != null) {
if (this.adViewImpl.getAdInternal$vungle_ads_release().isErrorTerminal$vungle_ads_release(canPlayAd.getCode())) {
this.adViewImpl.getAdInternal$vungle_ads_release().setAdState(AdInternal.AdState.ERROR);
}
BannerAdListener bannerAdListener = this.adListener;
if (bannerAdListener != null) {
bannerAdListener.onAdFailedToPlay(baseAd, canPlayAd);
return;
}
return;
}
AdPayload advertisement = this.adViewImpl.getAdInternal$vungle_ads_release().getAdvertisement();
Placement placement = this.adViewImpl.getAdInternal$vungle_ads_release().getPlacement();
if (advertisement == null || placement == null) {
BannerAdListener bannerAdListener2 = this.adListener;
if (bannerAdListener2 != null) {
bannerAdListener2.onAdFailedToPlay(baseAd, new InternalError(VungleError.AD_UNABLE_TO_PLAY, null, 2, null));
return;
}
return;
}
this.adViewImpl.getAdInternal$vungle_ads_release().cancelDownload$vungle_ads_release();
willPresentAdView(advertisement, placement, getAdViewSize());
this.adViewImpl.getResponseToShowMetric$vungle_ads_release().markEnd();
AnalyticsClient.logMetric$vungle_ads_release$default(analyticsClient, this.adViewImpl.getResponseToShowMetric$vungle_ads_release(), this.placementId, getCreativeId(), getEventId(), (String) null, 16, (Object) null);
this.adViewImpl.getShowToPresentMetric$vungle_ads_release().markStart();
this.adViewImpl.getShowToFailMetric$vungle_ads_release().markStart();
this.isAdDownloaded.set(true);
BannerAdListener bannerAdListener3 = this.adListener;
if (bannerAdListener3 != null) {
bannerAdListener3.onAdLoaded(baseAd);
}
renderAd();
}
private final void willPresentAdView(AdPayload adPayload, Placement placement, VungleAdSize vungleAdSize) {
Lazy lazy;
Lazy lazy2;
Lazy lazy3;
ViewUtility viewUtility = ViewUtility.INSTANCE;
Context context = getContext();
Intrinsics.checkNotNullExpressionValue(context, "context");
this.calculatedPixelHeight = viewUtility.dpToPixels(context, vungleAdSize.getHeight());
Context context2 = getContext();
Intrinsics.checkNotNullExpressionValue(context2, "context");
this.calculatedPixelWidth = viewUtility.dpToPixels(context2, vungleAdSize.getWidth());
final AdPlayCallbackWrapper adPlayCallback$vungle_ads_release = this.adViewImpl.getAdPlayCallback$vungle_ads_release();
final Placement placement2 = this.adViewImpl.getAdInternal$vungle_ads_release().getPlacement();
AdEventListener adEventListener = new AdEventListener(adPlayCallback$vungle_ads_release, placement2) { // from class: com.vungle.ads.VungleBannerView$willPresentAdView$adEventListener$1
};
try {
Context context3 = getContext();
Intrinsics.checkNotNullExpressionValue(context3, "context");
MRAIDAdWidget mRAIDAdWidget = new MRAIDAdWidget(context3);
this.adWidget = mRAIDAdWidget;
mRAIDAdWidget.setCloseDelegate(new MRAIDAdWidget.CloseDelegate() { // from class: com.vungle.ads.VungleBannerView$willPresentAdView$2
@Override // com.vungle.ads.internal.ui.view.MRAIDAdWidget.CloseDelegate
public void close() {
VungleBannerView.this.finishAdInternal(false);
}
});
ServiceLocator.Companion companion = ServiceLocator.Companion;
final Context context4 = getContext();
Intrinsics.checkNotNullExpressionValue(context4, "context");
LazyThreadSafetyMode lazyThreadSafetyMode = LazyThreadSafetyMode.SYNCHRONIZED;
lazy = LazyKt__LazyJVMKt.lazy(lazyThreadSafetyMode, new Function0() { // from class: com.vungle.ads.VungleBannerView$willPresentAdView$$inlined$inject$1
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
{
super(0);
}
/* JADX WARN: Type inference failed for: r0v2, types: [com.vungle.ads.internal.executor.Executors, java.lang.Object] */
@Override // kotlin.jvm.functions.Function0
public final Executors invoke() {
return ServiceLocator.Companion.getInstance(context4).getService(Executors.class);
}
});
final Context context5 = getContext();
Intrinsics.checkNotNullExpressionValue(context5, "context");
lazy2 = LazyKt__LazyJVMKt.lazy(lazyThreadSafetyMode, new Function0() { // from class: com.vungle.ads.VungleBannerView$willPresentAdView$$inlined$inject$2
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
{
super(0);
}
/* JADX WARN: Type inference failed for: r0v2, types: [com.vungle.ads.internal.omsdk.OMTracker$Factory, java.lang.Object] */
@Override // kotlin.jvm.functions.Function0
public final OMTracker.Factory invoke() {
return ServiceLocator.Companion.getInstance(context5).getService(OMTracker.Factory.class);
}
});
OMTracker make = m3828willPresentAdView$lambda4(lazy2).make(ConfigManager.INSTANCE.omEnabled() && adPayload.omEnabled());
final Context context6 = getContext();
Intrinsics.checkNotNullExpressionValue(context6, "context");
lazy3 = LazyKt__LazyJVMKt.lazy(lazyThreadSafetyMode, new Function0() { // from class: com.vungle.ads.VungleBannerView$willPresentAdView$$inlined$inject$3
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
{
super(0);
}
/* JADX WARN: Type inference failed for: r0v2, types: [com.vungle.ads.internal.platform.Platform, java.lang.Object] */
@Override // kotlin.jvm.functions.Function0
public final Platform invoke() {
return ServiceLocator.Companion.getInstance(context6).getService(Platform.class);
}
});
VungleWebClient vungleWebClient = new VungleWebClient(adPayload, placement, m3827willPresentAdView$lambda3(lazy).getOffloadExecutor(), null, m3829willPresentAdView$lambda5(lazy3), 8, null);
this.ringerModeReceiver.setWebClient(vungleWebClient);
vungleWebClient.setWebViewObserver(make);
MRAIDPresenter mRAIDPresenter = new MRAIDPresenter(mRAIDAdWidget, adPayload, placement, vungleWebClient, m3827willPresentAdView$lambda3(lazy).getJobExecutor(), make, this.adViewImpl.getAdInternal$vungle_ads_release().getBidPayload(), m3829willPresentAdView$lambda5(lazy3));
mRAIDPresenter.setEventListener(adEventListener);
this.presenter = mRAIDPresenter;
String watermark$vungle_ads_release = getAdConfig().getWatermark$vungle_ads_release();
if (watermark$vungle_ads_release != null) {
Context context7 = getContext();
Intrinsics.checkNotNullExpressionValue(context7, "context");
this.imageView = new WatermarkView(context7, watermark$vungle_ads_release);
}
} catch (InstantiationException e) {
AdCantPlayWithoutWebView adCantPlayWithoutWebView = new AdCantPlayWithoutWebView();
adCantPlayWithoutWebView.setPlacementId$vungle_ads_release(adCantPlayWithoutWebView.getPlacementId());
adCantPlayWithoutWebView.setEventId$vungle_ads_release(adCantPlayWithoutWebView.getEventId());
adCantPlayWithoutWebView.setCreativeId$vungle_ads_release(adCantPlayWithoutWebView.getCreativeId());
adEventListener.onError(adCantPlayWithoutWebView.logError$vungle_ads_release(), this.placementId);
throw e;
}
}
/* renamed from: willPresentAdView$lambda-3, reason: not valid java name */
private static final Executors m3827willPresentAdView$lambda3(Lazy lazy) {
return (Executors) lazy.getValue();
}
/* renamed from: willPresentAdView$lambda-4, reason: not valid java name */
private static final OMTracker.Factory m3828willPresentAdView$lambda4(Lazy lazy) {
return (OMTracker.Factory) lazy.getValue();
}
/* renamed from: willPresentAdView$lambda-5, reason: not valid java name */
private static final Platform m3829willPresentAdView$lambda5(Lazy lazy) {
return (Platform) lazy.getValue();
}
public static final class Companion {
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
this();
}
private Companion() {
}
}
}