正在查看: xDrip+ v04633772025.07.16 应用的 StopSensor.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: xDrip+ v04633772025.07.16 应用的 StopSensor.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.eveningoutpost.dexdrip;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import com.eveningoutpost.dexdrip.StopSensor;
import com.eveningoutpost.dexdrip.calibrations.PluggableCalibration;
import com.eveningoutpost.dexdrip.databinding.ActivityStopSensorBinding;
import com.eveningoutpost.dexdrip.g5model.FirmwareCapability;
import com.eveningoutpost.dexdrip.g5model.Ob1G5StateMachine;
import com.eveningoutpost.dexdrip.models.Calibration;
import com.eveningoutpost.dexdrip.models.JoH;
import com.eveningoutpost.dexdrip.models.Sensor;
import com.eveningoutpost.dexdrip.models.Treatments;
import com.eveningoutpost.dexdrip.services.Ob1G5CollectionService;
import com.eveningoutpost.dexdrip.ui.dialog.GenericConfirmDialog;
import com.eveningoutpost.dexdrip.utilitymodels.AlertPlayer;
import com.eveningoutpost.dexdrip.utilitymodels.CollectionServiceStarter;
import com.eveningoutpost.dexdrip.utilitymodels.Inevitable;
import com.eveningoutpost.dexdrip.utilitymodels.NanoStatus;
import com.eveningoutpost.dexdrip.utilitymodels.Pref;
import com.eveningoutpost.dexdrip.utils.ActivityWithMenu;
import com.eveningoutpost.dexdrip.utils.DexCollectionType;
public class StopSensor extends ActivityWithMenu {
@Override
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
if (!Sensor.isActive()) {
startActivity(new Intent(this, (Class<?>) StartNewSensor.class));
finish();
} else {
JoH.fixActionBar(this);
ActivityStopSensorBinding inflate = ActivityStopSensorBinding.inflate(getLayoutInflater());
inflate.setModel(new ViewModel());
setContentView(inflate.getRoot());
}
}
@Override
public String getMenuName() {
return getString(2131756430);
}
public static synchronized void stop() {
synchronized (StopSensor.class) {
Sensor.stopSensor();
Inevitable.task("stop-sensor", 1000L, new Runnable() {
@Override
public final void run() {
Sensor.stopSensor();
}
});
AlertPlayer.getPlayer().stopAlert(xdrip.getAppContext(), true, false);
JoH.static_toast_long(xdrip.gs(2131756294));
JoH.clearCache();
LibreAlarmReceiver.clearSensorStats();
PluggableCalibration.invalidateAllCaches();
Treatments.sensorStop(null, "Stopped by xDrip");
Ob1G5StateMachine.stopSensor();
JoH.pratelimit("dex-stop-start", 15);
CollectionServiceStarter.restartCollectionServiceBackground();
Home.staticRefreshBGCharts();
NanoStatus.keepFollowerUpdated(false);
}
}
public void resetAllCalibrations(View view) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(xdrip.gs(2131755152));
builder.setMessage(xdrip.gs(2131755476));
builder.setNegativeButton(xdrip.gs(2131755900), new DialogInterface.OnClickListener() {
@Override
public final void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.dismiss();
}
});
builder.setPositiveButton(xdrip.gs(2131757071), new DialogInterface.OnClickListener() {
@Override
public final void onClick(DialogInterface dialogInterface, int i) {
StopSensor.this.lambda$resetAllCalibrations$1(dialogInterface, i);
}
});
builder.create().show();
}
public void lambda$resetAllCalibrations$1(DialogInterface dialogInterface, int i) {
Calibration.invalidateAllForSensor();
dialogInterface.dismiss();
finish();
}
public class ViewModel {
public ViewModel() {
}
public boolean resettableCals() {
return (DexCollectionType.getDexCollectionType() == DexCollectionType.DexcomG5 && Pref.getBooleanDefaultFalse("using_g6") && FirmwareCapability.isTransmitterRawIncapable(Ob1G5CollectionService.getTransmitterID())) ? false : true;
}
public void stopSensorClick() {
String gs = xdrip.gs(2131755152);
if (!resettableCals()) {
gs = xdrip.gs(2131756292);
if (Ob1G5StateMachine.shortTxId()) {
gs = xdrip.gs(2131756293);
}
}
GenericConfirmDialog.show(StopSensor.this, xdrip.gs(2131755152), gs, new Runnable() {
@Override
public final void run() {
StopSensor.ViewModel.this.lambda$stopSensorClick$0();
}
});
}
public void lambda$stopSensorClick$0() {
StopSensor.stop();
JoH.startActivity(Home.class);
StopSensor.this.finish();
}
}
}