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
This commit is contained in:
2026-02-18 15:48:36 -08:00
parent c19eb3d7ff
commit c080f0d97f
26930 changed files with 2529574 additions and 0 deletions

View File

@@ -0,0 +1,7 @@
package com.mbridge.msdk.mbsignalcommon.mraid;
import com.mbridge.msdk.mbsignalcommon.windvane.AbsFeedBackForH5;
/* loaded from: classes4.dex */
public class BaseMraidSignalCommunication extends AbsFeedBackForH5 {
}

View File

@@ -0,0 +1,145 @@
package com.mbridge.msdk.mbsignalcommon.mraid;
import android.content.Context;
import android.text.TextUtils;
import com.mbridge.msdk.MBridgeConstans;
import com.mbridge.msdk.foundation.tools.af;
import com.mbridge.msdk.mbsignalcommon.mraid.a;
import com.mbridge.msdk.mbsignalcommon.windvane.WindVaneWebView;
import com.vungle.ads.internal.presenter.MRAIDPresenter;
import org.json.JSONObject;
/* loaded from: classes4.dex */
public class MraidSignalCommunication extends BaseMraidSignalCommunication {
public static final /* synthetic */ int $r8$clinit = 0;
private b a;
/* JADX WARN: Multi-variable type inference failed */
@Override // com.mbridge.msdk.mbsignalcommon.windvane.h
public void initialize(Context context, WindVaneWebView windVaneWebView) {
super.initialize(context, windVaneWebView);
try {
if (context instanceof b) {
this.a = (b) context;
return;
}
if (windVaneWebView.getObject() != null && (windVaneWebView.getObject() instanceof b)) {
this.a = (b) windVaneWebView.getObject();
}
if (windVaneWebView.getMraidObject() == null || !(windVaneWebView.getMraidObject() instanceof b)) {
return;
}
this.a = (b) windVaneWebView.getMraidObject();
} catch (Exception e) {
if (MBridgeConstans.DEBUG) {
e.printStackTrace();
}
}
}
public void open(Object obj, String str) {
WindVaneWebView windVaneWebView;
if (obj instanceof com.mbridge.msdk.mbsignalcommon.windvane.a) {
com.mbridge.msdk.mbsignalcommon.windvane.a aVar = (com.mbridge.msdk.mbsignalcommon.windvane.a) obj;
windVaneWebView = aVar.b;
a.C0211a.a.a(aVar.b, MRAIDPresenter.OPEN);
} else {
windVaneWebView = null;
}
try {
String optString = new JSONObject(str).optString("url");
af.b("MraidSignalCommunication", "MRAID Open " + optString);
if (this.a == null || TextUtils.isEmpty(optString)) {
return;
}
if (windVaneWebView == null || System.currentTimeMillis() - windVaneWebView.lastTouchTime <= com.mbridge.msdk.click.b.a.c || !com.mbridge.msdk.click.b.a.a(this.a.getMraidCampaign(), windVaneWebView.getUrl(), com.mbridge.msdk.click.b.a.a)) {
this.a.open(optString);
}
} catch (Throwable th) {
af.b("MraidSignalCommunication", "MRAID Open", th);
}
}
public void close(Object obj, String str) {
if (obj instanceof com.mbridge.msdk.mbsignalcommon.windvane.a) {
a.C0211a.a.a(((com.mbridge.msdk.mbsignalcommon.windvane.a) obj).b, "close");
}
try {
af.b("MraidSignalCommunication", "MRAID close");
b bVar = this.a;
if (bVar != null) {
bVar.close();
}
} catch (Throwable th) {
af.b("MraidSignalCommunication", "MRAID close", th);
}
}
public void unload(Object obj, String str) {
if (obj instanceof com.mbridge.msdk.mbsignalcommon.windvane.a) {
a.C0211a.a.a(((com.mbridge.msdk.mbsignalcommon.windvane.a) obj).b, "unload");
}
try {
af.b("MraidSignalCommunication", "MRAID unload");
b bVar = this.a;
if (bVar != null) {
bVar.unload();
}
} catch (Throwable th) {
af.b("MraidSignalCommunication", "MRAID unload", th);
}
}
public void useCustomClose(Object obj, String str) {
if (obj instanceof com.mbridge.msdk.mbsignalcommon.windvane.a) {
a.C0211a.a.a(((com.mbridge.msdk.mbsignalcommon.windvane.a) obj).b, "useCustomClose");
}
try {
String optString = new JSONObject(str).optString("shouldUseCustomClose");
af.b("MraidSignalCommunication", "MRAID useCustomClose " + optString);
if (TextUtils.isEmpty(optString) || this.a == null) {
return;
}
this.a.useCustomClose(optString.toLowerCase().equals("true"));
} catch (Throwable th) {
af.b("MraidSignalCommunication", "MRAID useCustomClose", th);
}
}
public void expand(Object obj, String str) {
if (obj instanceof com.mbridge.msdk.mbsignalcommon.windvane.a) {
a.C0211a.a.a(((com.mbridge.msdk.mbsignalcommon.windvane.a) obj).b, "expand");
}
try {
JSONObject jSONObject = new JSONObject(str);
String optString = jSONObject.optString("url");
String optString2 = jSONObject.optString("shouldUseCustomClose");
af.b("MraidSignalCommunication", "MRAID expand " + optString + " " + optString2);
if (TextUtils.isEmpty(optString) || TextUtils.isEmpty(optString2) || this.a == null) {
return;
}
this.a.expand(optString, optString2.toLowerCase().equals("true"));
} catch (Throwable th) {
af.b("MraidSignalCommunication", "MRAID expand", th);
}
}
public void setOrientationProperties(Object obj, String str) {
if (obj instanceof com.mbridge.msdk.mbsignalcommon.windvane.a) {
a.C0211a.a.a(((com.mbridge.msdk.mbsignalcommon.windvane.a) obj).b, MRAIDPresenter.SET_ORIENTATION_PROPERTIES);
}
try {
JSONObject jSONObject = new JSONObject(str);
String optString = jSONObject.optString("allowOrientationChange");
String optString2 = jSONObject.optString("forceOrientation");
af.b("MraidSignalCommunication", "MRAID setOrientationProperties");
if (TextUtils.isEmpty(optString) || TextUtils.isEmpty(optString2) || this.a == null) {
return;
}
optString.toLowerCase().equals("true");
optString2.toLowerCase().hashCode();
} catch (Throwable th) {
af.b("MraidSignalCommunication", "MRAID setOrientationProperties", th);
}
}
}

View File

@@ -0,0 +1,107 @@
package com.mbridge.msdk.mbsignalcommon.mraid;
import android.webkit.WebView;
import java.net.URLEncoder;
import java.util.Locale;
import java.util.Map;
import org.json.JSONObject;
/* loaded from: classes4.dex */
public final class a {
/* renamed from: com.mbridge.msdk.mbsignalcommon.mraid.a$a, reason: collision with other inner class name */
public static class C0211a {
private static final a a = new a();
}
public static a a() {
return C0211a.a;
}
public final void a(WebView webView) {
c(webView, "javascript:window.mraidbridge.fireReadyEvent();");
}
public final void a(WebView webView, Map<String, Object> map) {
if (map == null || map.size() == 0) {
return;
}
JSONObject jSONObject = new JSONObject();
for (Map.Entry<String, Object> entry : map.entrySet()) {
try {
jSONObject.put(entry.getKey(), entry.getValue());
} catch (Exception e) {
e.printStackTrace();
}
}
String jSONObject2 = jSONObject.toString();
try {
jSONObject2 = URLEncoder.encode(jSONObject2, "UTF-8");
} catch (Exception e2) {
e2.printStackTrace();
}
c(webView, String.format("javascript:window.mraidbridge.fireChangeEvent(%s);", jSONObject2));
}
public final void a(WebView webView, String str, String str2) {
try {
str2 = URLEncoder.encode(str2, "UTF-8");
str = URLEncoder.encode(str, "UTF-8");
} catch (Exception e) {
e.printStackTrace();
}
c(webView, String.format("javascript:window.mraidbridge.fireErrorEvent('%1s', '%2s');", str2, str));
}
public final void a(WebView webView, float f, float f2) {
c(webView, String.format(Locale.CHINA, "javascript:window.mraidbridge.notifySizeChangeEvent(%.1f, %.1f);", Float.valueOf(f), Float.valueOf(f2)));
}
public final void a(WebView webView, double d) {
c(webView, String.format(Locale.CHINA, "javascript:window.mraidbridge.audioVolumeChange(%s);", Double.valueOf(d)));
}
public final void b(WebView webView, float f, float f2) {
c(webView, String.format(Locale.CHINA, "javascript:window.mraidbridge.setScreenSize(%.1f, %.1f);", Float.valueOf(f), Float.valueOf(f2)));
}
public final void c(WebView webView, float f, float f2) {
c(webView, String.format(Locale.CHINA, "javascript:window.mraidbridge.setMaxSize(%.1f, %.1f);", Float.valueOf(f), Float.valueOf(f2)));
}
public final void a(WebView webView, float f, float f2, float f3, float f4) {
c(webView, String.format(Locale.CHINA, "javascript:window.mraidbridge.setDefaultPosition(%.1f, %.1f, %.1f, %.1f);", Float.valueOf(f), Float.valueOf(f2), Float.valueOf(f3), Float.valueOf(f4)));
}
public final void b(WebView webView, float f, float f2, float f3, float f4) {
c(webView, String.format(Locale.CHINA, "javascript:window.mraidbridge.setCurrentPosition(%.1f, %.1f, %.1f, %.1f);", Float.valueOf(f), Float.valueOf(f2), Float.valueOf(f3), Float.valueOf(f4)));
}
public final void a(WebView webView, String str) {
try {
str = URLEncoder.encode(str, "UTF-8");
} catch (Exception e) {
e.printStackTrace();
}
c(webView, String.format("javascript:window.mraidbridge.nativeCallComplete('%s');", str));
}
public final void b(WebView webView, String str) {
try {
str = URLEncoder.encode(str, "UTF-8");
} catch (Exception e) {
e.printStackTrace();
}
c(webView, String.format("javascript:window.mraidbridge.setIsViewable(%s);", str));
}
private void c(WebView webView, String str) {
if (webView != null) {
try {
webView.loadUrl(str);
} catch (Throwable th) {
th.printStackTrace();
}
}
}
}

View File

@@ -0,0 +1,18 @@
package com.mbridge.msdk.mbsignalcommon.mraid;
import com.mbridge.msdk.foundation.entity.CampaignEx;
/* loaded from: classes4.dex */
public interface b {
void close();
void expand(String str, boolean z);
CampaignEx getMraidCampaign();
void open(String str);
void unload();
void useCustomClose(boolean z);
}

View File

@@ -0,0 +1,102 @@
package com.mbridge.msdk.mbsignalcommon.mraid;
import android.net.Uri;
import android.text.TextUtils;
import com.mbridge.msdk.foundation.entity.CampaignEx;
import com.mbridge.msdk.foundation.tools.z;
import com.mbridge.msdk.mbsignalcommon.mraid.a;
import com.mbridge.msdk.mbsignalcommon.windvane.WindVaneWebView;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedHashSet;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import org.json.JSONObject;
/* loaded from: classes4.dex */
public final class c {
private static volatile ConcurrentHashMap<String, String> a = new ConcurrentHashMap<>();
private static ArrayList<String> b = new ArrayList<>();
public static com.mbridge.msdk.mbsignalcommon.windvane.a a(WindVaneWebView windVaneWebView, String str) {
Set<String> unmodifiableSet;
Uri parse = Uri.parse(str);
String scheme = parse.getScheme();
if (TextUtils.isEmpty(scheme) || !scheme.contains(CampaignEx.JSON_KEY_MRAID)) {
return null;
}
com.mbridge.msdk.mbsignalcommon.windvane.a aVar = new com.mbridge.msdk.mbsignalcommon.windvane.a();
aVar.d = z.a("n+ztLkxpVTzBLkxgHN==");
aVar.e = parse.getHost();
int i = 0;
if (b.size() == 0) {
for (Method method : b.class.getDeclaredMethods()) {
b.add(method.getName());
}
}
if (!b.contains(aVar.e) && windVaneWebView != null) {
String campaignId = windVaneWebView.getCampaignId();
String str2 = aVar.e;
if (!TextUtils.isEmpty(campaignId)) {
if (a.containsKey(campaignId)) {
String str3 = a.get(campaignId);
if (!TextUtils.isEmpty(str2) && !str3.contains(str2)) {
if (str3.length() > 0) {
str3 = str3.concat(",");
}
a.put(campaignId, str3.concat(str2));
}
} else {
a.put(campaignId, str2);
}
}
a.C0211a.a.a(windVaneWebView, aVar.e);
a.C0211a.a.a(windVaneWebView, aVar.e, "Specified command is not implemented");
return null;
}
String encodedQuery = parse.getEncodedQuery();
if (encodedQuery == null) {
unmodifiableSet = Collections.emptySet();
} else {
LinkedHashSet linkedHashSet = new LinkedHashSet();
do {
int indexOf = encodedQuery.indexOf(38, i);
if (indexOf == -1) {
indexOf = encodedQuery.length();
}
int indexOf2 = encodedQuery.indexOf(61, i);
if (indexOf2 > indexOf || indexOf2 == -1) {
indexOf2 = indexOf;
}
linkedHashSet.add(Uri.decode(encodedQuery.substring(i, indexOf2)));
i = indexOf + 1;
} while (i < encodedQuery.length());
unmodifiableSet = Collections.unmodifiableSet(linkedHashSet);
}
try {
JSONObject jSONObject = new JSONObject();
for (String str4 : unmodifiableSet) {
jSONObject.put(str4, parse.getQueryParameter(str4));
}
aVar.f = jSONObject.toString();
} catch (Exception e) {
e.printStackTrace();
}
return aVar;
}
public static String a(String str) {
if (a.containsKey(str)) {
return a.get(str);
}
return null;
}
public static void b(String str) {
if (TextUtils.isEmpty(str)) {
return;
}
a.remove(str);
}
}

View File

@@ -0,0 +1,87 @@
package com.mbridge.msdk.mbsignalcommon.mraid;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.media.AudioManager;
import java.lang.ref.WeakReference;
/* loaded from: classes4.dex */
public final class d {
public static double a = -1.0d;
private Context b;
private AudioManager c;
private boolean d = false;
private b e;
private a f;
public interface b {
void a(double d);
}
public final void a(b bVar) {
this.e = bVar;
}
public final b b() {
return this.e;
}
public d(Context context) {
this.b = context;
this.c = (AudioManager) context.getApplicationContext().getSystemService("audio");
}
public final double a() {
AudioManager audioManager = this.c;
double streamVolume = ((this.c != null ? r3.getStreamVolume(3) : -1) * 100.0d) / (audioManager != null ? audioManager.getStreamMaxVolume(3) : -1);
a = streamVolume;
return streamVolume;
}
public final void c() {
if (this.b != null) {
this.f = new a(this);
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("android.media.VOLUME_CHANGED_ACTION");
this.b.registerReceiver(this.f, intentFilter);
this.d = true;
}
}
public final void d() {
Context context;
if (!this.d || (context = this.b) == null) {
return;
}
try {
context.unregisterReceiver(this.f);
this.e = null;
this.d = false;
} catch (Exception e) {
e.printStackTrace();
}
}
public static class a extends BroadcastReceiver {
private WeakReference<d> a;
public a(d dVar) {
this.a = new WeakReference<>(dVar);
}
@Override // android.content.BroadcastReceiver
public final void onReceive(Context context, Intent intent) {
d dVar;
b b;
if (!"android.media.VOLUME_CHANGED_ACTION".equals(intent.getAction()) || intent.getIntExtra("android.media.EXTRA_VOLUME_STREAM_TYPE", -1) != 3 || (dVar = this.a.get()) == null || (b = dVar.b()) == null) {
return;
}
double a = dVar.a();
if (a >= 0.0d) {
b.a(a);
}
}
}
}