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,69 @@
package com.google.firebase.remoteconfig.internal.rollouts;
import android.util.Log;
import com.google.firebase.remoteconfig.FirebaseRemoteConfigClientException;
import com.google.firebase.remoteconfig.internal.ConfigCacheClient;
import com.google.firebase.remoteconfig.internal.ConfigContainer;
import com.google.firebase.remoteconfig.interop.rollouts.RolloutAssignment;
import com.google.firebase.remoteconfig.interop.rollouts.RolloutsState;
import java.util.HashSet;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* loaded from: classes3.dex */
public class RolloutsStateFactory {
public ConfigCacheClient activatedConfigsCache;
public ConfigCacheClient defaultConfigsCache;
public RolloutsStateFactory(ConfigCacheClient configCacheClient, ConfigCacheClient configCacheClient2) {
this.activatedConfigsCache = configCacheClient;
this.defaultConfigsCache = configCacheClient2;
}
public RolloutsState getActiveRolloutsState(ConfigContainer configContainer) {
JSONArray rolloutMetadata = configContainer.getRolloutMetadata();
long templateVersionNumber = configContainer.getTemplateVersionNumber();
HashSet hashSet = new HashSet();
for (int i = 0; i < rolloutMetadata.length(); i++) {
try {
JSONObject jSONObject = rolloutMetadata.getJSONObject(i);
String string = jSONObject.getString("rolloutId");
JSONArray jSONArray = jSONObject.getJSONArray("affectedParameterKeys");
if (jSONArray.length() > 1) {
Log.w("FirebaseRemoteConfig", String.format("Rollout has multiple affected parameter keys.Only the first key will be included in RolloutsState. rolloutId: %s, affectedParameterKeys: %s", string, jSONArray));
}
String optString = jSONArray.optString(0, "");
hashSet.add(RolloutAssignment.builder().setRolloutId(string).setVariantId(jSONObject.getString("variantId")).setParameterKey(optString).setParameterValue(getParameterValue(optString)).setTemplateVersion(templateVersionNumber).build());
} catch (JSONException e) {
throw new FirebaseRemoteConfigClientException("Exception parsing rollouts metadata to create RolloutsState.", e);
}
}
return RolloutsState.create(hashSet);
}
public final String getParameterValue(String str) {
String stringFromCache = getStringFromCache(this.activatedConfigsCache, str);
if (stringFromCache != null) {
return stringFromCache;
}
String stringFromCache2 = getStringFromCache(this.defaultConfigsCache, str);
return stringFromCache2 != null ? stringFromCache2 : "";
}
public static String getStringFromCache(ConfigCacheClient configCacheClient, String str) {
ConfigContainer blocking = configCacheClient.getBlocking();
if (blocking == null) {
return null;
}
try {
return blocking.getConfigs().getString(str);
} catch (JSONException unused) {
return null;
}
}
public static RolloutsStateFactory create(ConfigCacheClient configCacheClient, ConfigCacheClient configCacheClient2) {
return new RolloutsStateFactory(configCacheClient, configCacheClient2);
}
}

View File

@@ -0,0 +1,72 @@
package com.google.firebase.remoteconfig.internal.rollouts;
import android.util.Log;
import com.google.android.gms.tasks.OnSuccessListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.remoteconfig.FirebaseRemoteConfigException;
import com.google.firebase.remoteconfig.internal.ConfigCacheClient;
import com.google.firebase.remoteconfig.internal.ConfigContainer;
import com.google.firebase.remoteconfig.interop.rollouts.RolloutsState;
import com.google.firebase.remoteconfig.interop.rollouts.RolloutsStateSubscriber;
import java.util.Collections;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.Executor;
/* loaded from: classes3.dex */
public class RolloutsStateSubscriptionsHandler {
public ConfigCacheClient activatedConfigsCache;
public Executor executor;
public RolloutsStateFactory rolloutsStateFactory;
public Set subscribers = Collections.newSetFromMap(new ConcurrentHashMap());
public RolloutsStateSubscriptionsHandler(ConfigCacheClient configCacheClient, RolloutsStateFactory rolloutsStateFactory, Executor executor) {
this.activatedConfigsCache = configCacheClient;
this.rolloutsStateFactory = rolloutsStateFactory;
this.executor = executor;
}
public void registerRolloutsStateSubscriber(final RolloutsStateSubscriber rolloutsStateSubscriber) {
this.subscribers.add(rolloutsStateSubscriber);
final Task task = this.activatedConfigsCache.get();
task.addOnSuccessListener(this.executor, new OnSuccessListener() { // from class: com.google.firebase.remoteconfig.internal.rollouts.RolloutsStateSubscriptionsHandler$$ExternalSyntheticLambda1
@Override // com.google.android.gms.tasks.OnSuccessListener
public final void onSuccess(Object obj) {
RolloutsStateSubscriptionsHandler.this.lambda$registerRolloutsStateSubscriber$1(task, rolloutsStateSubscriber, (ConfigContainer) obj);
}
});
}
public final /* synthetic */ void lambda$registerRolloutsStateSubscriber$1(Task task, final RolloutsStateSubscriber rolloutsStateSubscriber, ConfigContainer configContainer) {
try {
ConfigContainer configContainer2 = (ConfigContainer) task.getResult();
if (configContainer2 != null) {
final RolloutsState activeRolloutsState = this.rolloutsStateFactory.getActiveRolloutsState(configContainer2);
this.executor.execute(new Runnable() { // from class: com.google.firebase.remoteconfig.internal.rollouts.RolloutsStateSubscriptionsHandler$$ExternalSyntheticLambda2
@Override // java.lang.Runnable
public final void run() {
RolloutsStateSubscriber.this.onRolloutsStateChanged(activeRolloutsState);
}
});
}
} catch (FirebaseRemoteConfigException e) {
Log.w("FirebaseRemoteConfig", "Exception publishing RolloutsState to subscriber. Continuing to listen for changes.", e);
}
}
public void publishActiveRolloutsState(ConfigContainer configContainer) {
try {
final RolloutsState activeRolloutsState = this.rolloutsStateFactory.getActiveRolloutsState(configContainer);
for (final RolloutsStateSubscriber rolloutsStateSubscriber : this.subscribers) {
this.executor.execute(new Runnable() { // from class: com.google.firebase.remoteconfig.internal.rollouts.RolloutsStateSubscriptionsHandler$$ExternalSyntheticLambda0
@Override // java.lang.Runnable
public final void run() {
RolloutsStateSubscriber.this.onRolloutsStateChanged(activeRolloutsState);
}
});
}
} catch (FirebaseRemoteConfigException e) {
Log.w("FirebaseRemoteConfig", "Exception publishing RolloutsState to subscribers. Continuing to listen for changes.", e);
}
}
}