analysis: full official-app reverse artifacts (jadx sources, ghidra libcxsdk decomp, authoritative protocol conclusions) + docs
This commit is contained in:
@@ -0,0 +1,113 @@
|
||||
package cn.com.magnity.magnitycx;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.Application;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.util.DisplayMetrics;
|
||||
import android.view.WindowManager;
|
||||
import cn.com.magnity.magnitycx.sdk.GlobalFunc;
|
||||
import cn.com.magnity.magnitycx.sdk.MagParameter;
|
||||
import cn.com.magnity.magnitycx.sdk.UsbConnection;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public class MagApplication extends Application {
|
||||
public static GlobalFunc globalFunc;
|
||||
private static MagApplication instance_;
|
||||
public static MagParameter magParameter;
|
||||
public static WindowManager windowManager;
|
||||
private int counter_;
|
||||
private Handler handler_ = new Handler();
|
||||
private Runnable runnable_ = new Runnable() { // from class: cn.com.magnity.magnitycx.MagApplication.1
|
||||
@Override // java.lang.Runnable
|
||||
public void run() {
|
||||
UsbConnection.getInstance().deinit(true);
|
||||
UsbConnection.getInstance().setCallbackReceiver(null);
|
||||
}
|
||||
};
|
||||
private static boolean handlerProhibited_ = false;
|
||||
public static boolean isShowFps = false;
|
||||
|
||||
static /* synthetic */ int access$008(MagApplication x0) {
|
||||
int i = x0.counter_;
|
||||
x0.counter_ = i + 1;
|
||||
return i;
|
||||
}
|
||||
|
||||
static /* synthetic */ int access$010(MagApplication x0) {
|
||||
int i = x0.counter_;
|
||||
x0.counter_ = i - 1;
|
||||
return i;
|
||||
}
|
||||
|
||||
public static void setUsbDeinitAllowed(boolean flag) {
|
||||
handlerProhibited_ = !flag;
|
||||
}
|
||||
|
||||
public static MagApplication getInstance() {
|
||||
return instance_;
|
||||
}
|
||||
|
||||
@Override // android.app.Application
|
||||
public void onCreate() {
|
||||
super.onCreate();
|
||||
instance_ = this;
|
||||
magParameter = new MagParameter(this);
|
||||
globalFunc = new GlobalFunc();
|
||||
windowManager = (WindowManager) getSystemService("window");
|
||||
DisplayMetrics metric = new DisplayMetrics();
|
||||
try {
|
||||
windowManager.getDefaultDisplay().getMetrics(metric);
|
||||
} catch (Exception e) {
|
||||
int i = 0 + 1;
|
||||
}
|
||||
switch (getResources().getConfiguration().orientation) {
|
||||
case 1:
|
||||
magParameter.portraitScreenWidth = metric.widthPixels;
|
||||
magParameter.portraitScreenHeight = metric.heightPixels;
|
||||
break;
|
||||
case 2:
|
||||
magParameter.portraitScreenWidth = metric.heightPixels;
|
||||
magParameter.portraitScreenHeight = metric.widthPixels;
|
||||
break;
|
||||
}
|
||||
registerActivityLifecycleCallbacks(new Application.ActivityLifecycleCallbacks() { // from class: cn.com.magnity.magnitycx.MagApplication.2
|
||||
@Override // android.app.Application.ActivityLifecycleCallbacks
|
||||
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
|
||||
}
|
||||
|
||||
@Override // android.app.Application.ActivityLifecycleCallbacks
|
||||
public void onActivityStarted(Activity activity) {
|
||||
MagApplication.access$008(MagApplication.this);
|
||||
if (MagApplication.this.counter_ == 1) {
|
||||
MagApplication.this.handler_.removeCallbacks(MagApplication.this.runnable_);
|
||||
boolean unused = MagApplication.handlerProhibited_ = false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override // android.app.Application.ActivityLifecycleCallbacks
|
||||
public void onActivityResumed(Activity activity) {
|
||||
}
|
||||
|
||||
@Override // android.app.Application.ActivityLifecycleCallbacks
|
||||
public void onActivityPaused(Activity activity) {
|
||||
}
|
||||
|
||||
@Override // android.app.Application.ActivityLifecycleCallbacks
|
||||
public void onActivityStopped(Activity activity) {
|
||||
MagApplication.access$010(MagApplication.this);
|
||||
if (MagApplication.this.counter_ == 0 && !MagApplication.handlerProhibited_) {
|
||||
MagApplication.this.handler_.postDelayed(MagApplication.this.runnable_, 500L);
|
||||
}
|
||||
}
|
||||
|
||||
@Override // android.app.Application.ActivityLifecycleCallbacks
|
||||
public void onActivitySaveInstanceState(Activity activity, Bundle outState) {
|
||||
}
|
||||
|
||||
@Override // android.app.Application.ActivityLifecycleCallbacks
|
||||
public void onActivityDestroyed(Activity activity) {
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user