CrackMe.apk
Download file
package com.facebook.react.modules.appearance;
import android.content.Context;
import com.facebook.fbreact.specs.NativeAppearanceSpec;
import com.facebook.react.bridge.Arguments;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.WritableMap;
import com.facebook.react.module.annotations.ReactModule;
import com.facebook.react.modules.core.DeviceEventManagerModule;
@ReactModule(name = "Appearance")
public class AppearanceModule extends NativeAppearanceSpec {
private static final String APPEARANCE_CHANGED_EVENT_NAME = "appearanceChanged";
public static final String NAME = "Appearance";
private String mColorScheme;
private final OverrideColorScheme mOverrideColorScheme;
public interface OverrideColorScheme {
String getScheme();
}
public void addListener(String str) {
}
public String getName() {
return NAME;
}
public void removeListeners(double d) {
}
public AppearanceModule(ReactApplicationContext reactApplicationContext) {
this(reactApplicationContext, (OverrideColorScheme) null);
}
public AppearanceModule(ReactApplicationContext reactApplicationContext, OverrideColorScheme overrideColorScheme) {
super(reactApplicationContext);
this.mColorScheme = "light";
this.mOverrideColorScheme = overrideColorScheme;
this.mColorScheme = colorSchemeForCurrentConfiguration(reactApplicationContext);
}
private String colorSchemeForCurrentConfiguration(Context context) {
OverrideColorScheme overrideColorScheme = this.mOverrideColorScheme;
if (overrideColorScheme != null) {
return overrideColorScheme.getScheme();
}
return (context.getResources().getConfiguration().uiMode & 48) != 32 ? "light" : "dark";
}
public String getColorScheme() {
Context currentActivity = getCurrentActivity();
if (currentActivity == null) {
currentActivity = getReactApplicationContext();
}
String colorSchemeForCurrentConfiguration = colorSchemeForCurrentConfiguration(currentActivity);
this.mColorScheme = colorSchemeForCurrentConfiguration;
return colorSchemeForCurrentConfiguration;
}
public void onConfigurationChanged(Context context) {
String colorSchemeForCurrentConfiguration = colorSchemeForCurrentConfiguration(context);
if (!this.mColorScheme.equals(colorSchemeForCurrentConfiguration)) {
this.mColorScheme = colorSchemeForCurrentConfiguration;
emitAppearanceChanged(colorSchemeForCurrentConfiguration);
}
}
public void emitAppearanceChanged(String str) {
WritableMap createMap = Arguments.createMap();
createMap.putString("colorScheme", str);
ReactApplicationContext reactApplicationContextIfActiveOrWarn = getReactApplicationContextIfActiveOrWarn();
if (reactApplicationContextIfActiveOrWarn != null) {
((DeviceEventManagerModule.RCTDeviceEventEmitter) reactApplicationContextIfActiveOrWarn.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)).emit(APPEARANCE_CHANGED_EVENT_NAME, createMap);
}
}
}
Download file