导航菜单

页面标题

页面副标题

xDrip+ v04633772025.07.16 - CalibrationOverride.java 源代码

正在查看: xDrip+ v04633772025.07.16 应用的 CalibrationOverride.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.eveningoutpost.dexdrip;

import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import com.eveningoutpost.dexdrip.calibrations.NativeCalibrationPipe;
import com.eveningoutpost.dexdrip.models.BgReading;
import com.eveningoutpost.dexdrip.models.Calibration;
import com.eveningoutpost.dexdrip.models.JoH;
import com.eveningoutpost.dexdrip.models.Sensor;
import com.eveningoutpost.dexdrip.models.UserError;
import com.eveningoutpost.dexdrip.utilitymodels.CalibrationSendQueue;
import com.eveningoutpost.dexdrip.utilitymodels.CollectionServiceStarter;
import com.eveningoutpost.dexdrip.utilitymodels.UndoRedo;
import com.eveningoutpost.dexdrip.utils.ActivityWithMenu;

public class CalibrationOverride extends ActivityWithMenu {
    Button button;

    @Override
    protected void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        if (CollectionServiceStarter.isBTShare(getApplicationContext())) {
            startActivity(new Intent(this, (Class<?>) Home.class));
            finish();
        }
        setContentView(2131492903);
        addListenerOnButton();
    }

    @Override
    public String getMenuName() {
        return getString(2131755976);
    }

    public void addListenerOnButton() {
        Button button = (Button) findViewById(2131296927);
        this.button = button;
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (Sensor.isActive()) {
                    EditText editText = (EditText) CalibrationOverride.this.findViewById(2131296392);
                    String obj = editText.getText().toString();
                    if (!TextUtils.isEmpty(obj)) {
                        try {
                            double d = JoH.tolerantParseDouble(obj);
                            Calibration lastValid = Calibration.lastValid();
                            if (lastValid == null) {
                                UserError.Log.wtf("OverrideCalib", "Last valid calibration is null when trying to cancel it in override!");
                            } else {
                                lastValid.sensor_confidence = BgReading.BESTOFFSET;
                                lastValid.slope_confidence = BgReading.BESTOFFSET;
                                lastValid.save();
                                CalibrationSendQueue.addToQueue(lastValid, CalibrationOverride.this.getApplicationContext());
                            }
                            Calibration create = Calibration.create(d, CalibrationOverride.this.getApplicationContext());
                            if (create != null) {
                                UndoRedo.addUndoCalibration(create.uuid);
                                GcmActivity.pushCalibration(obj, "0");
                                NativeCalibrationPipe.addCalibration((int) create.bg, create.timestamp);
                            } else {
                                UserError.Log.e("OverrideCalib", "Calibration creation resulted in null");
                                JoH.static_toast_long("Could not create calibration!");
                            }
                            CalibrationOverride.this.startActivity(new Intent(view.getContext(), (Class<?>) Home.class));
                            CalibrationOverride.this.finish();
                            return;
                        } catch (NumberFormatException e) {
                            editText.setError(xdrip.gs(2131755947) + e);
                            return;
                        }
                    }
                    editText.setError("Calibration Can Not be blank");
                    return;
                }
                UserError.Log.w("Calibration", "ERROR, no active sensor");
            }
        });
    }
}