Files
rr3-apk/decompiled-community/sources/com/unity3d/services/ads/gmascar/GMAScarAdapterBridge.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

174 lines
9.3 KiB
Java

package com.unity3d.services.ads.gmascar;
import android.content.Context;
import com.unity3d.scar.adapter.common.GMAAdsError;
import com.unity3d.scar.adapter.common.GMAEvent;
import com.unity3d.scar.adapter.common.IScarAdapter;
import com.unity3d.scar.adapter.common.WebViewAdsError;
import com.unity3d.scar.adapter.common.scarads.ScarAdMetadata;
import com.unity3d.scar.adapter.common.scarads.UnityAdFormat;
import com.unity3d.services.ads.gmascar.adapters.ScarAdapterFactory;
import com.unity3d.services.ads.gmascar.bridges.AdapterStatusBridge;
import com.unity3d.services.ads.gmascar.bridges.InitializationStatusBridge;
import com.unity3d.services.ads.gmascar.bridges.InitializeListenerBridge;
import com.unity3d.services.ads.gmascar.bridges.mobileads.MobileAdsBridgeBase;
import com.unity3d.services.ads.gmascar.finder.GMAInitializer;
import com.unity3d.services.ads.gmascar.finder.PresenceDetector;
import com.unity3d.services.ads.gmascar.finder.ScarVersionFinder;
import com.unity3d.services.ads.gmascar.handlers.BiddingSignalsHandler;
import com.unity3d.services.ads.gmascar.handlers.ScarBannerAdHandler;
import com.unity3d.services.ads.gmascar.handlers.ScarInterstitialAdHandler;
import com.unity3d.services.ads.gmascar.handlers.ScarRewardedAdHandler;
import com.unity3d.services.ads.gmascar.handlers.SignalsHandler;
import com.unity3d.services.ads.gmascar.handlers.WebViewErrorHandler;
import com.unity3d.services.ads.gmascar.utils.GMAEventSender;
import com.unity3d.services.banners.BannerView;
import com.unity3d.services.banners.UnityBannerSize;
import com.unity3d.services.banners.bridge.BannerBridge;
import com.unity3d.services.core.misc.EventSubject;
import com.unity3d.services.core.properties.ClientProperties;
import com.unity3d.services.core.timer.DefaultIntervalTimerFactory;
import com.unity3d.services.core.webview.WebViewApp;
import com.unity3d.services.core.webview.WebViewEventCategory;
import java.util.ArrayDeque;
import java.util.Arrays;
/* loaded from: classes4.dex */
public class GMAScarAdapterBridge {
private final AdapterStatusBridge _adapterStatusBridge;
private final GMAEventSender _gmaEventSender;
private final GMAInitializer _gmaInitializer;
private final InitializeListenerBridge _initializationListenerBridge;
private final InitializationStatusBridge _initializationStatusBridge;
private final MobileAdsBridgeBase _mobileAdsBridge;
private final PresenceDetector _presenceDetector;
private IScarAdapter _scarAdapter;
private final ScarAdapterFactory _scarAdapterFactory;
private final ScarVersionFinder _scarVersionFinder;
private final WebViewErrorHandler _webViewErrorHandler;
public GMAScarAdapterBridge(MobileAdsBridgeBase mobileAdsBridgeBase, InitializeListenerBridge initializeListenerBridge, InitializationStatusBridge initializationStatusBridge, AdapterStatusBridge adapterStatusBridge, WebViewErrorHandler webViewErrorHandler, ScarAdapterFactory scarAdapterFactory, GMAEventSender gMAEventSender) {
this._initializationStatusBridge = initializationStatusBridge;
this._initializationListenerBridge = initializeListenerBridge;
this._adapterStatusBridge = adapterStatusBridge;
this._webViewErrorHandler = webViewErrorHandler;
this._scarAdapterFactory = scarAdapterFactory;
this._mobileAdsBridge = mobileAdsBridgeBase;
this._gmaEventSender = gMAEventSender;
PresenceDetector presenceDetector = new PresenceDetector(mobileAdsBridgeBase, initializeListenerBridge, initializationStatusBridge, adapterStatusBridge);
this._presenceDetector = presenceDetector;
GMAInitializer gMAInitializer = new GMAInitializer(mobileAdsBridgeBase, initializeListenerBridge, initializationStatusBridge, adapterStatusBridge, gMAEventSender);
this._gmaInitializer = gMAInitializer;
this._scarVersionFinder = new ScarVersionFinder(mobileAdsBridgeBase, presenceDetector, gMAInitializer, gMAEventSender);
}
public void initializeScar() {
if (this._presenceDetector.areGMAClassesPresent()) {
this._gmaEventSender.send(GMAEvent.SCAR_PRESENT, new Object[0]);
this._gmaInitializer.initializeGMA();
} else {
this._webViewErrorHandler.handleError((WebViewAdsError) new GMAAdsError(GMAEvent.SCAR_NOT_PRESENT, new Object[0]));
}
}
public boolean isInitialized() {
return this._gmaInitializer.isInitialized();
}
public void getVersion() {
this._scarVersionFinder.getVersion();
}
public void getSCARSignal(String str, UnityAdFormat unityAdFormat) {
this._scarAdapter = getScarAdapterObject();
SignalsHandler signalsHandler = new SignalsHandler(this._gmaEventSender);
IScarAdapter iScarAdapter = this._scarAdapter;
if (iScarAdapter != null) {
iScarAdapter.getSCARSignal(ClientProperties.getApplicationContext(), str, unityAdFormat, signalsHandler);
} else {
this._webViewErrorHandler.handleError((WebViewAdsError) GMAAdsError.InternalSignalsError("Could not create SCAR adapter object"));
}
}
public boolean hasSCARBiddingSupport() {
MobileAdsBridgeBase mobileAdsBridgeBase = this._mobileAdsBridge;
if (mobileAdsBridgeBase == null || !mobileAdsBridgeBase.hasSCARBiddingSupport()) {
return false;
}
IScarAdapter scarAdapterObject = getScarAdapterObject();
this._scarAdapter = scarAdapterObject;
return scarAdapterObject != null;
}
public void getSCARBiddingSignals(boolean z, BiddingSignalsHandler biddingSignalsHandler) {
MobileAdsBridgeBase mobileAdsBridgeBase = this._mobileAdsBridge;
if (mobileAdsBridgeBase != null && mobileAdsBridgeBase.hasSCARBiddingSupport()) {
IScarAdapter scarAdapterObject = getScarAdapterObject();
this._scarAdapter = scarAdapterObject;
if (scarAdapterObject != null) {
scarAdapterObject.getSCARBiddingSignals(ClientProperties.getApplicationContext(), z, biddingSignalsHandler);
return;
} else {
biddingSignalsHandler.onSignalsCollectionFailed("Could not create SCAR adapter object.");
return;
}
}
biddingSignalsHandler.onSignalsCollectionFailed("SCAR bidding unsupported.");
}
public void load(boolean z, String str, String str2, String str3, String str4, int i) {
ScarAdMetadata scarAdMetadata = new ScarAdMetadata(str, str2, str4, str3, Integer.valueOf(i));
IScarAdapter scarAdapterObject = getScarAdapterObject();
this._scarAdapter = scarAdapterObject;
if (scarAdapterObject == null) {
this._webViewErrorHandler.handleError((WebViewAdsError) GMAAdsError.InternalLoadError(scarAdMetadata, "Scar Adapter object is null"));
} else if (z) {
loadInterstitialAd(scarAdMetadata);
} else {
loadRewardedAd(scarAdMetadata);
}
}
private void loadInterstitialAd(ScarAdMetadata scarAdMetadata) {
this._scarAdapter.loadInterstitialAd(ClientProperties.getApplicationContext(), scarAdMetadata, new ScarInterstitialAdHandler(scarAdMetadata, getScarEventSubject(scarAdMetadata.getVideoLengthMs()), this._gmaEventSender));
}
private void loadRewardedAd(ScarAdMetadata scarAdMetadata) {
this._scarAdapter.loadRewardedAd(ClientProperties.getApplicationContext(), scarAdMetadata, new ScarRewardedAdHandler(scarAdMetadata, getScarEventSubject(scarAdMetadata.getVideoLengthMs()), this._gmaEventSender));
}
public void loadBanner(Context context, BannerView bannerView, String str, ScarAdMetadata scarAdMetadata, UnityBannerSize unityBannerSize) {
this._scarAdapter = getScarAdapterObject();
ScarBannerAdHandler scarBannerAdHandler = new ScarBannerAdHandler(str);
IScarAdapter iScarAdapter = this._scarAdapter;
if (iScarAdapter != null) {
iScarAdapter.loadBannerAd(context, bannerView, scarAdMetadata, unityBannerSize.getWidth(), unityBannerSize.getHeight(), scarBannerAdHandler);
} else {
WebViewApp.getCurrentApp().sendEvent(WebViewEventCategory.BANNER, BannerBridge.BannerEvent.SCAR_BANNER_LOAD_FAILED, str);
}
}
public void show(String str, String str2, boolean z) {
ScarAdMetadata scarAdMetadata = new ScarAdMetadata(str, str2);
IScarAdapter scarAdapterObject = getScarAdapterObject();
this._scarAdapter = scarAdapterObject;
if (scarAdapterObject != null) {
scarAdapterObject.show(ClientProperties.getActivity(), str2, str);
} else {
this._webViewErrorHandler.handleError((WebViewAdsError) GMAAdsError.InternalShowError(scarAdMetadata, "Scar Adapter object is null"));
}
}
private EventSubject getScarEventSubject(Integer num) {
return new EventSubject(new ArrayDeque(Arrays.asList(GMAEvent.FIRST_QUARTILE, GMAEvent.MIDPOINT, GMAEvent.THIRD_QUARTILE, GMAEvent.LAST_QUARTILE)), num, new DefaultIntervalTimerFactory());
}
private IScarAdapter getScarAdapterObject() {
MobileAdsBridgeBase mobileAdsBridgeBase;
if (this._scarAdapter == null && (mobileAdsBridgeBase = this._mobileAdsBridge) != null) {
this._scarAdapter = this._scarAdapterFactory.createScarAdapter(mobileAdsBridgeBase.getAdapterVersion(this._scarVersionFinder.getVersionCode()), this._webViewErrorHandler);
}
return this._scarAdapter;
}
}