From: TrillGates Date: Thu, 16 Sep 2021 09:08:55 +0000 (+0800) Subject: fixed crash but and release ICL02Blood_V93_202109161706_release X-Git-Url: http://git.snicker.com.cn/sitemap.xml?a=commitdiff_plain;h=2291ccddaccc0f53b6d0dc10fe4409854c949166;p=IcBlood.git fixed crash but and release ICL02Blood_V93_202109161706_release --- diff --git a/app/release/ICL02Blood_V91_202109161111_release.apk b/app/release/ICL02Blood_V93_202109161706_release.apk similarity index 54% rename from app/release/ICL02Blood_V91_202109161111_release.apk rename to app/release/ICL02Blood_V93_202109161706_release.apk index 9d46d52..7266d3b 100644 Binary files a/app/release/ICL02Blood_V91_202109161111_release.apk and b/app/release/ICL02Blood_V93_202109161706_release.apk differ diff --git a/app/release/output.json b/app/release/output.json index f7abc4f..79ab7f6 100644 --- a/app/release/output.json +++ b/app/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":91,"versionName":"202109161111","enabled":true,"outputFile":"ICL02Blood_V91_202109161111_release.apk","fullName":"release","baseName":"release"},"path":"ICL02Blood_V91_202109161111_release.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":93,"versionName":"202109161706","enabled":true,"outputFile":"ICL02Blood_V93_202109161706_release.apk","fullName":"release","baseName":"release"},"path":"ICL02Blood_V93_202109161706_release.apk","properties":{}}] \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 2941af2..cafd682 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -25,7 +25,7 @@ - - + + \ No newline at end of file diff --git a/app/src/main/java/com/ic/blood/fragment/BloodFragment.java b/app/src/main/java/com/ic/blood/fragment/BloodFragment.java index 1b731be..6f9617b 100644 --- a/app/src/main/java/com/ic/blood/fragment/BloodFragment.java +++ b/app/src/main/java/com/ic/blood/fragment/BloodFragment.java @@ -107,7 +107,7 @@ public class BloodFragment extends Fragment { private void initBloodModel() { //观察状态的变化 - BloodCheckModel.Factory factory = new BloodCheckModel.Factory(mApp); + BloodCheckModel.Factory factory = new BloodCheckModel.Factory(requireContext()); bloodModel = new ViewModelProvider(this, factory).get(BloodCheckModel.class); bloodModel.updateTestType(BloodPresenter.TestType.ALL); bloodModel.getObsStateTips().observe(this, value -> { diff --git a/app/src/main/java/com/ic/blood/fragment/HeartRateAndBloodOxygenFragment.java b/app/src/main/java/com/ic/blood/fragment/HeartRateAndBloodOxygenFragment.java index 39d4f81..25213bd 100644 --- a/app/src/main/java/com/ic/blood/fragment/HeartRateAndBloodOxygenFragment.java +++ b/app/src/main/java/com/ic/blood/fragment/HeartRateAndBloodOxygenFragment.java @@ -108,7 +108,7 @@ public class HeartRateAndBloodOxygenFragment extends Fragment { private void initBloodModel() { //观察状态的变化 - BloodCheckModel.Factory factory = new BloodCheckModel.Factory(mApp); + BloodCheckModel.Factory factory = new BloodCheckModel.Factory(requireContext()); bloodModel = new ViewModelProvider(this, factory).get(BloodCheckModel.class); bloodModel.updateTestType(BloodPresenter.TestType.JUST_HEART_RATE); bloodModel.getObsStateTips().observe(this, value -> { diff --git a/app/src/main/java/com/ic/blood/fragment/JustHeartRateFragment.java b/app/src/main/java/com/ic/blood/fragment/JustHeartRateFragment.java index 2493f3a..60d8f2d 100644 --- a/app/src/main/java/com/ic/blood/fragment/JustHeartRateFragment.java +++ b/app/src/main/java/com/ic/blood/fragment/JustHeartRateFragment.java @@ -107,7 +107,7 @@ public class JustHeartRateFragment extends Fragment { private void initBloodModel() { //观察状态的变化 - BloodCheckModel.Factory factory = new BloodCheckModel.Factory(mApp); + BloodCheckModel.Factory factory = new BloodCheckModel.Factory(requireContext()); bloodModel = new ViewModelProvider(this, factory).get(BloodCheckModel.class); bloodModel.updateTestType(BloodPresenter.TestType.JUST_HEART_RATE); bloodModel.getObsStateTips().observe(this, value -> { diff --git a/app/src/main/java/com/ic/blood/fragment/OxygenFragment.java b/app/src/main/java/com/ic/blood/fragment/OxygenFragment.java index ab7e49a..06e3d0f 100644 --- a/app/src/main/java/com/ic/blood/fragment/OxygenFragment.java +++ b/app/src/main/java/com/ic/blood/fragment/OxygenFragment.java @@ -107,7 +107,7 @@ public class OxygenFragment extends Fragment { private void initBloodModel() { //观察状态的变化 - BloodCheckModel.Factory factory = new BloodCheckModel.Factory(mApp); + BloodCheckModel.Factory factory = new BloodCheckModel.Factory(requireContext()); bloodModel = new ViewModelProvider(this, factory).get(BloodCheckModel.class); bloodModel.updateTestType(BloodPresenter.TestType.JUST_OXYGEN); bloodModel.getObsStateTips().observe(this, value -> { diff --git a/app/src/main/java/com/ic/blood/model/BloodCheckModel.java b/app/src/main/java/com/ic/blood/model/BloodCheckModel.java index 9dac59c..74888f4 100644 --- a/app/src/main/java/com/ic/blood/model/BloodCheckModel.java +++ b/app/src/main/java/com/ic/blood/model/BloodCheckModel.java @@ -1,11 +1,9 @@ package com.ic.blood.model; import android.app.Activity; -import android.app.Application; import android.content.Context; import androidx.annotation.NonNull; -import androidx.lifecycle.AndroidViewModel; import androidx.lifecycle.LiveData; import androidx.lifecycle.ViewModel; import androidx.lifecycle.ViewModelProvider; @@ -13,7 +11,7 @@ import androidx.lifecycle.ViewModelProvider; import com.ic.blood.presenter.BloodPresenter; -public class BloodCheckModel extends AndroidViewModel { +public class BloodCheckModel extends ViewModel { private final BloodPresenter bloodPresenter; @@ -24,9 +22,8 @@ public class BloodCheckModel extends AndroidViewModel { private LiveData mObsTipsInfo; private LiveData mObsCheckEnd; - private BloodCheckModel(@NonNull Application application) { - super(application); - this.bloodPresenter = new BloodPresenter(application.getApplicationContext()); + private BloodCheckModel(Context context) { + this.bloodPresenter = new BloodPresenter(context); mObsBloodValue = bloodPresenter.getObsBloodValue(); mObsTipsInfo = bloodPresenter.getObsTipsInfo(); mObsCheckEnd = bloodPresenter.getObsCheckEnd(); @@ -62,7 +59,7 @@ public class BloodCheckModel extends AndroidViewModel { bloodPresenter.onCreate(); } - public void setActivity(Activity context){ + public void setActivity(Activity context) { bloodPresenter.setActivity(context); } @@ -73,17 +70,17 @@ public class BloodCheckModel extends AndroidViewModel { public static class Factory extends ViewModelProvider.NewInstanceFactory { @NonNull - private final Application mApplication; + private final Context context; - public Factory(@NonNull Application application) { - mApplication = application; + public Factory(Context application) { + context = application; } @SuppressWarnings("unchecked") @Override @NonNull public T create(@NonNull Class modelClass) { - return (T) new BloodCheckModel(mApplication); + return (T) new BloodCheckModel(context); } } } diff --git a/app/src/main/java/com/ic/blood/presenter/BloodPresenter.java b/app/src/main/java/com/ic/blood/presenter/BloodPresenter.java index a7bf4f4..ab6781a 100644 --- a/app/src/main/java/com/ic/blood/presenter/BloodPresenter.java +++ b/app/src/main/java/com/ic/blood/presenter/BloodPresenter.java @@ -2,7 +2,6 @@ package com.ic.blood.presenter; import android.app.Activity; -import android.app.Dialog; import android.content.BroadcastReceiver; import android.content.ComponentName; import android.content.Context; @@ -14,7 +13,6 @@ import android.os.Handler; import android.os.IBinder; import android.os.Looper; import android.os.Message; -import android.util.Log; import android.widget.TextView; import android.widget.Toast; @@ -46,7 +44,6 @@ public class BloodPresenter { private MutableLiveData mObsTipsInfo; private MutableLiveData mObsCheckEnd; private MutableLiveData mObsBloodTempValue; - private Dialog dialog; private IHeartRateSensorService mService; @@ -54,7 +51,7 @@ public class BloodPresenter { private boolean mHasWear = false; private TestType testType = TestType.ALL; - private AlertDialog alertShutdownDialog; + private AlertDialog tipsDialog; public enum TestType { ALL, JUST_OXYGEN, JUST_HEART_RATE @@ -129,7 +126,6 @@ public class BloodPresenter { private final BroadcastReceiver mAntiStateReceiver = new BroadcastReceiver() { - private AudioManager audioManager = null; @Override @@ -271,7 +267,6 @@ public class BloodPresenter { private IHeartRateSensorCallback.Stub bloodInterface = new IHeartRateSensorCallback.Stub() { - @Override public void onHeartRateGet(HeartRate heartRate) { IcLog.d(TAG, "final result -- > " @@ -280,16 +275,8 @@ public class BloodPresenter { + " oxygen == > " + heartRate.getOxygen()); mObsStateTips.postValue(mContext.getString(R.string.tips_finish_check)); //最终结果 - try { - if (dialog != null) { - dialog.dismiss(); - } - } catch (Exception e) { - Log.getStackTraceString(e.fillInStackTrace()); - } finally { - updateBoolValue(heartRate.getBloodHeight(), heartRate.getBloodLow(), - heartRate.getHeartRate(), heartRate.getOxygen()); - } + updateBoolValue(heartRate.getBloodHeight(), heartRate.getBloodLow(), + heartRate.getHeartRate(), heartRate.getOxygen()); } @Override @@ -341,7 +328,7 @@ public class BloodPresenter { private static final int RUNING_TASK_TYPE = 0x01; private static final int WAITING_TASK_TYPE = 0x02; - private Handler mUiRefreshHandler = new Handler(Looper.getMainLooper()) { + private final Handler mUiRefreshHandler = new Handler(Looper.getMainLooper()) { @Override public void handleMessage(@NonNull Message msg) { super.handleMessage(msg); @@ -352,15 +339,15 @@ public class BloodPresenter { case WAITING_TASK_TYPE: AlertDialog alertDialog = showDialog(); alertDialog.show(); - TextView contentText = dialog.findViewById(android.R.id.message); - contentText.setTextSize(26.0f); + TextView contentText = alertDialog.findViewById(android.R.id.message); + contentText.setTextSize(22.0f); break; } } }; private AlertDialog showDialog() { - if (alertShutdownDialog == null) { + if (tipsDialog == null) { AlertDialog.Builder builder = new AlertDialog.Builder(mContext); builder.setMessage(mContext.getString(R.string.background_wait)) .setPositiveButton(mContext.getString(R.string.dialog_confirm), (dialog, id) -> { @@ -369,9 +356,9 @@ public class BloodPresenter { mActivity.onBackPressed(); } }); - alertShutdownDialog = builder.create(); + tipsDialog = builder.create(); } - return alertShutdownDialog; + return tipsDialog; } private String getTestingString() { diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index b811768..bd23062 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -1,11 +1,12 @@ -