-[{"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
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
- <activity android:name=".Gh301Activity" />
- <activity android:name=".BloodActivity" />
+ <activity android:name=".Gh301Activity" android:theme="@style/AppTheme" />
+ <activity android:name=".BloodActivity" android:theme="@style/AppTheme"/>
</application>
</manifest>
\ No newline at end of file
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 -> {
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 -> {
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 -> {
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 -> {
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;
import com.ic.blood.presenter.BloodPresenter;
-public class BloodCheckModel extends AndroidViewModel {
+public class BloodCheckModel extends ViewModel {
private final BloodPresenter bloodPresenter;
private LiveData<String[]> mObsTipsInfo;
private LiveData<Integer> 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();
bloodPresenter.onCreate();
}
- public void setActivity(Activity context){
+ public void setActivity(Activity context) {
bloodPresenter.setActivity(context);
}
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 extends ViewModel> T create(@NonNull Class<T> modelClass) {
- return (T) new BloodCheckModel(mApplication);
+ return (T) new BloodCheckModel(context);
}
}
}
import android.app.Activity;
-import android.app.Dialog;
import android.content.BroadcastReceiver;
import android.content.ComponentName;
import android.content.Context;
import android.os.IBinder;
import android.os.Looper;
import android.os.Message;
-import android.util.Log;
import android.widget.TextView;
import android.widget.Toast;
private MutableLiveData<String[]> mObsTipsInfo;
private MutableLiveData<Integer> mObsCheckEnd;
private MutableLiveData<String[]> mObsBloodTempValue;
- private Dialog dialog;
private IHeartRateSensorService mService;
private boolean mHasWear = false;
private TestType testType = TestType.ALL;
- private AlertDialog alertShutdownDialog;
+ private AlertDialog tipsDialog;
public enum TestType {
ALL, JUST_OXYGEN, JUST_HEART_RATE
private final BroadcastReceiver mAntiStateReceiver = new BroadcastReceiver() {
-
private AudioManager audioManager = null;
@Override
private IHeartRateSensorCallback.Stub bloodInterface = new IHeartRateSensorCallback.Stub() {
-
@Override
public void onHeartRateGet(HeartRate heartRate) {
IcLog.d(TAG, "final result -- > "
+ " 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
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);
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) -> {
mActivity.onBackPressed();
}
});
- alertShutdownDialog = builder.create();
+ tipsDialog = builder.create();
}
- return alertShutdownDialog;
+ return tipsDialog;
}
private String getTestingString() {
<resources>
<!-- Base application theme. -->
- <style name="AppTheme" parent="Theme.MaterialComponents.Light.NoActionBar">
+ <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
+ <item name="android:background">@android:color/black</item>
</style>
<style name="bloodTextStyle">
-#Thu Sep 16 11:11:31 CST 2021\r
-VERSION_CODE=91\r
+#Thu Sep 16 17:06:11 CST 2021\r
+VERSION_CODE=93\r