Files
MAG160C/analysis/jadx_magcx/cn/com/magnity/magnitycx/MainActivity.java
T

308 lines
13 KiB
Java

package cn.com.magnity.magnitycx;
import android.graphics.RectF;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.view.GestureDetectorCompat;
import android.support.v7.app.AppCompatActivity;
import android.util.DisplayMetrics;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.view.OrientationEventListener;
import android.view.Window;
import android.view.WindowManager;
import android.widget.LinearLayout;
import cn.com.magnity.magnitycx.QueryDialogFragment;
import cn.com.magnity.magnitycx.log.Logging;
import cn.com.magnity.magnitycx.sdk.DeviceController;
import cn.com.magnity.magnitycx.sdk.UsbConnection;
import cn.com.magnity.magnitycx.upgrade.UpgradeManager;
import cn.com.magnity.magnitycx.util.ActivityUtils;
import com.baidu.mobstat.StatService;
import org.apache.log4j.Level;
/* loaded from: classes.dex */
public class MainActivity extends AppCompatActivity implements QueryDialogFragment.DelegateQueryResult {
private FragmentMainBottom fragmentBottom_;
private FragmentMainCenter fragmentCenter_;
private FragmentMainTop fragmentTop_;
private GestureDetectorCompat gestureDetector_;
private boolean mIsLoggingInitSucc;
OrientationEventListener orientationListener_;
private UpgradeManager upgradeManager_;
public interface DelegateFling {
void afterFling(int i);
}
@Override // android.support.v7.app.AppCompatActivity, android.support.v4.app.FragmentActivity, android.app.Activity
protected void onPostResume() {
super.onPostResume();
StatService.onPageStart(getApplicationContext(), "");
}
@Override // android.support.v7.app.AppCompatActivity, android.support.v4.app.FragmentActivity, android.support.v4.app.BaseFragmentActivityGingerbread, android.app.Activity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActivityUtils.requestRuntimePermission(this, new String[]{"android.permission.WRITE_EXTERNAL_STORAGE", "android.permission.ACCESS_FINE_LOCATION", "android.permission.CAMERA"}, 0);
this.mIsLoggingInitSucc = Logging.init(Level.INFO);
Logging.info("App start");
Logging.trace("Main activity created");
setContentView(R.layout.activity_main);
disableRotationAnimation();
overridePendingTransition(0, 0);
getWindow().setFormat(-3);
StatService.setDebugOn(false);
this.orientationListener_ = new OrientationEventListener(this, 2) { // from class: cn.com.magnity.magnitycx.MainActivity.1
@Override // android.view.OrientationEventListener
public void onOrientationChanged(int orientation) {
if (orientation != -1) {
int degree = 0;
switch (MagApplication.windowManager.getDefaultDisplay().getRotation()) {
case 0:
degree = 90;
break;
case 1:
degree = 0;
break;
case 2:
degree = 270;
break;
case 3:
degree = 180;
break;
}
if (degree != DeviceController.getPreviewOrientation()) {
DeviceController.Lock();
DeviceController.setPreviewOrientation(degree);
DeviceController.Unlock();
}
}
}
};
if (this.orientationListener_.canDetectOrientation()) {
this.orientationListener_.enable();
} else {
this.orientationListener_.disable();
int degree = 0;
switch (MagApplication.windowManager.getDefaultDisplay().getRotation()) {
case 0:
degree = 90;
break;
case 1:
degree = 0;
break;
case 2:
degree = 270;
break;
case 3:
degree = 180;
break;
}
DeviceController.Lock();
DeviceController.setPreviewOrientation(degree);
DeviceController.Unlock();
}
this.gestureDetector_ = new GestureDetectorCompat(this, new MyGestureListener());
FragmentManager fm = getSupportFragmentManager();
this.fragmentTop_ = (FragmentMainTop) fm.findFragmentById(R.id.fragment_container_main_top);
if (this.fragmentTop_ == null) {
this.fragmentTop_ = new FragmentMainTop();
fm.beginTransaction().setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN).add(R.id.fragment_container_main_top, this.fragmentTop_).commit();
}
this.fragmentCenter_ = (FragmentMainCenter) fm.findFragmentById(R.id.fragment_container_main_center);
if (this.fragmentCenter_ == null) {
this.fragmentCenter_ = new FragmentMainCenter();
fm.beginTransaction().setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN).add(R.id.fragment_container_main_center, this.fragmentCenter_).commit();
}
this.fragmentBottom_ = (FragmentMainBottom) fm.findFragmentById(R.id.fragment_container_main_bottom);
if (this.fragmentBottom_ == null) {
this.fragmentBottom_ = new FragmentMainBottom();
fm.beginTransaction().setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN).add(R.id.fragment_container_main_bottom, this.fragmentBottom_).commit();
}
UsbConnection usbConn = UsbConnection.getInstance();
usbConn.registerObserver(this.fragmentTop_);
usbConn.registerObserver(this.fragmentCenter_);
usbConn.registerObserver(this.fragmentBottom_);
if (savedInstanceState == null) {
this.upgradeManager_ = new UpgradeManager(this);
this.upgradeManager_.start();
}
}
@Override // android.support.v7.app.AppCompatActivity, android.support.v4.app.FragmentActivity, android.app.Activity
protected void onStart() {
super.onStart();
UsbConnection usbConn = UsbConnection.getInstance();
if (usbConn != null) {
usbConn.setCallbackReceiver(this.fragmentCenter_);
if (!usbConn.isConnected()) {
usbConn.init();
} else {
usbConn.notifyObervers(1);
}
}
}
@Override // android.support.v7.app.AppCompatActivity, android.support.v4.app.FragmentActivity, android.app.Activity
protected void onStop() {
super.onStop();
}
@Override // android.support.v4.app.FragmentActivity, android.app.Activity
protected void onResume() {
super.onResume();
}
@Override // android.support.v4.app.FragmentActivity, android.app.Activity
public void onBackPressed() {
super.onBackPressed();
UsbConnection usbConn = UsbConnection.getInstance();
if (usbConn != null) {
usbConn.setCallbackReceiver(null);
usbConn.deinit(false);
}
}
@Override // android.support.v7.app.AppCompatActivity, android.support.v4.app.FragmentActivity, android.app.Activity
protected void onDestroy() {
Logging.trace("Main activity destroyed");
super.onDestroy();
this.orientationListener_.disable();
UsbConnection usbConn = UsbConnection.getInstance();
usbConn.unregisterAll();
if (this.upgradeManager_ != null) {
this.upgradeManager_.stop();
}
}
@Override // android.support.v4.app.FragmentActivity, android.app.Activity, android.support.v4.app.ActivityCompat.OnRequestPermissionsResultCallback
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
for (int i = 0; i < permissions.length; i++) {
String permission = permissions[i];
int result = grantResults[i];
if (result == 0) {
switch (permission) {
case "android.permission.WRITE_EXTERNAL_STORAGE":
if (this.mIsLoggingInitSucc) {
break;
} else {
this.mIsLoggingInitSucc = Logging.init(Level.INFO);
if (this.mIsLoggingInitSucc) {
Logging.info("App start");
break;
} else {
break;
}
}
}
}
}
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
}
private void disableRotationAnimation() {
Window localWindow = getWindow();
WindowManager.LayoutParams localLayoutParams = localWindow.getAttributes();
localLayoutParams.rotationAnimation = 2;
localWindow.setAttributes(localLayoutParams);
}
@Override // cn.com.magnity.magnitycx.QueryDialogFragment.DelegateQueryResult
public void onQueryResult(int result) {
if (result == 1) {
this.fragmentTop_.openLaser();
}
}
@Override // android.support.v4.app.FragmentActivity, android.app.Activity
protected void onPause() {
super.onPause();
StatService.onPageEnd(getApplicationContext(), "ҳ");
}
@Override // android.app.Activity, android.view.Window.Callback
public boolean dispatchTouchEvent(MotionEvent ev) {
if (this.gestureDetector_ != null && !MagApplication.magParameter.isTraceRoi) {
this.gestureDetector_.onTouchEvent(ev);
}
return super.dispatchTouchEvent(ev);
}
public FragmentMainTop getFragmentMainTop() {
return this.fragmentTop_;
}
public FragmentMainCenter getFragmentMainCenter() {
return this.fragmentCenter_;
}
public FragmentMainBottom getFragmentMainBottom() {
return this.fragmentBottom_;
}
public RectF getRect(int index) {
RectF rt = new RectF();
LinearLayout layout = null;
switch (index) {
case 0:
layout = (LinearLayout) findViewById(R.id.fragment_container_main_top);
break;
case 1:
layout = (LinearLayout) findViewById(R.id.fragment_container_main_center);
break;
case 2:
layout = (LinearLayout) findViewById(R.id.fragment_container_main_bottom);
break;
}
rt.left = layout.getX();
rt.top = layout.getY();
rt.right = rt.left + layout.getWidth();
rt.bottom = rt.top + layout.getHeight();
return rt;
}
private class MyGestureListener extends GestureDetector.SimpleOnGestureListener {
private MyGestureListener() {
}
@Override // android.view.GestureDetector.SimpleOnGestureListener, android.view.GestureDetector.OnDoubleTapListener
public boolean onDoubleTap(MotionEvent e) {
DeviceController.Lock();
DeviceController.triggerFFC();
DeviceController.Unlock();
return super.onDoubleTap(e);
}
@Override // android.view.GestureDetector.SimpleOnGestureListener, android.view.GestureDetector.OnGestureListener
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
DisplayMetrics outMetrics = new DisplayMetrics();
MainActivity.this.getWindow().getWindowManager().getDefaultDisplay().getMetrics(outMetrics);
int resw = outMetrics.widthPixels;
int resh = outMetrics.heightPixels;
if (resw >= resh) {
resw = resh;
}
int cmp = resw / 4;
if (MainActivity.this.getResources().getConfiguration().orientation == 1) {
float dist = e2.getX() - e1.getX();
if (dist > cmp) {
MainActivity.this.fragmentBottom_.afterFling(0);
} else if (dist < (-cmp)) {
MainActivity.this.fragmentBottom_.afterFling(1);
}
} else {
float dist2 = e2.getY() - e1.getY();
if (dist2 > cmp) {
MainActivity.this.fragmentBottom_.afterFling(1);
} else if (dist2 < cmp) {
MainActivity.this.fragmentBottom_.afterFling(0);
}
}
return true;
}
}
}