diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/activity/OldPeopleMainActivity.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/activity/OldPeopleMainActivity.java
index 0326f83..bb97c57 100644
--- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/activity/OldPeopleMainActivity.java
+++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/activity/OldPeopleMainActivity.java
@@ -17,6 +17,7 @@ import android.support.v4.app.FragmentTransaction;
import android.view.MenuItem;
import android.view.View;
import android.widget.RelativeLayout;
+import android.widget.TextView;
import com.scorpiomiku.oldpeoplehome.R;
import com.scorpiomiku.oldpeoplehome.base.BaseActivity;
@@ -41,7 +42,6 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.Iterator;
-import java.util.List;
import java.util.Locale;
import butterknife.BindView;
@@ -59,12 +59,18 @@ public class OldPeopleMainActivity extends BaseActivity {
BottomNavigationView navigation;
@BindView(R.id.floating_button)
FloatingActionButton floatingButton;
+
private String step;
private String cal;
private String distance;
private String sportTime;
+ private String curHeartRate;
private String[] heartRates = new String[6];
private String sleepType;
+ private String bloodPressureShrink;
+ private String bloodPressureDiastole;
+ private String oxygen;
+
private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener;
private FragmentManager fragmentManager;
private BaseFragment[] fragments = {
@@ -94,6 +100,9 @@ public class OldPeopleMainActivity extends BaseActivity {
//蓝牙获取信息
loadData();
break;
+ case 2:
+ ((HeartRateFragment) fragments[2]).changeText(curHeartRate, bloodPressureShrink, bloodPressureDiastole, oxygen);
+ break;
}
}
};
@@ -328,8 +337,14 @@ public class OldPeopleMainActivity extends BaseActivity {
}
@Override
- public void onGetSenserData(int i, long l, int i1, int i2) throws RemoteException {
-
+ public void onGetSenserData(int result, long timestamp, int heartrate, int sleepstatu)
+ throws RemoteException {
+ Date date = new Date(timestamp * 1000);
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault());
+ String time = sdf.format(date);
+ curHeartRate = heartrate + "";
+ LogUtils.logd("onGetSenserData-" + "result: " + result + ",time:" + time + ",heartrate:" + heartrate + ",sleepstatu:" + sleepstatu);
+ handler.sendEmptyMessage(2);
}
@Override
@@ -400,8 +415,17 @@ public class OldPeopleMainActivity extends BaseActivity {
}
@Override
- public void onReceiveSensorData(int i, int i1, int i2, int i3, int i4) throws RemoteException {
-
+ public void onReceiveSensorData(int arg0, int arg1, int arg2, int arg3,
+ int arg4) throws RemoteException {
+ LogUtils.logd("onReceiveSensorData" + "result:" + arg0 + " , " + arg1 + " , " + arg2 + " , " + arg3 + " , " + arg4);
+ if (arg2 != 0) {
+ LogUtils.shortToast("测量成功");
+ }
+ curHeartRate = arg0 + "";
+ bloodPressureShrink = arg1 + "";
+ bloodPressureDiastole = arg2 + "";
+ oxygen = arg3 + "";
+ handler.sendEmptyMessage(2);
}
@Override
@@ -472,8 +496,8 @@ public class OldPeopleMainActivity extends BaseActivity {
@Override
public void onServiceConnected(ComponentName componentName, IBinder service) {
LogUtils.shortToast("Service connected");
-
mService = IRemoteService.Stub.asInterface(service);
+
try {
mService.registerCallback(mServiceCallback);
mService.openSDKLog(bSave, pathLog, "blue.log");
@@ -617,8 +641,7 @@ public class OldPeopleMainActivity extends BaseActivity {
private void getNewHandData() {
try {
mService.getCurSportData();
- mService.getDataByDay(2, 0); //获取心率
-// mService.getDataByDay(1, 0);
+// mService.getDataByDay(2, 0); //获取心率
for (int i = 5; i >= 0; i--) {
}
@@ -632,10 +655,34 @@ public class OldPeopleMainActivity extends BaseActivity {
getNewHandData();
}
+ /**
+ * 更新UI调用
+ */
private void loadData() {
for (int i = 0; i < fragments.length; i++) {
refreshUi(step, cal, distance, sportTime, heartRates, sleepType, fragments[i]);
}
}
+ private Boolean heartRateOpen = false;
+
+ /**
+ * 测试心率按钮点击事件
+ */
+ public void setHeartRateMode(TextView begin) {
+ if (heartRateOpen) {
+ //关闭
+ begin.setText("开启");
+ } else {
+ //开启
+ begin.setText("关闭");
+ }
+ heartRateOpen = !heartRateOpen;
+ try {
+ mService.setHeartRateMode(heartRateOpen, 120);
+ mService.setBloodPressureMode(heartRateOpen);
+ } catch (RemoteException e) {
+ e.printStackTrace();
+ }
+ }
}
diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/HeartRateFragment.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/HeartRateFragment.java
index 9b589cd..d725132 100644
--- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/HeartRateFragment.java
+++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/HeartRateFragment.java
@@ -11,6 +11,7 @@ import com.github.mikephil.charting.charts.LineChart;
import com.github.mikephil.charting.data.Entry;
import com.scorpiomiku.oldpeoplehome.R;
import com.scorpiomiku.oldpeoplehome.base.BaseFragment;
+import com.scorpiomiku.oldpeoplehome.modules.oldpeople.activity.OldPeopleMainActivity;
import com.scorpiomiku.oldpeoplehome.utils.ChartUtils;
import java.util.ArrayList;
@@ -35,6 +36,13 @@ public class HeartRateFragment extends BaseFragment {
@BindView(R.id.chart)
LineChart chart;
Unbinder unbinder;
+ @BindView(R.id.diastolic)
+ TextView diastolic;
+ @BindView(R.id.systolic)
+ TextView systolic;
+ @BindView(R.id.oxy)
+ TextView oxy;
+
@Override
protected Handler initHandle() {
@@ -89,4 +97,23 @@ public class HeartRateFragment extends BaseFragment {
super.refreshUi(step, cal, distance, sportTime, heartRate, sleepType);
heartRateText.setText(heartRate[5]);
}
+
+
+ @OnClick(R.id.begin)
+ public void onViewClicked() {
+ assert ((OldPeopleMainActivity) getContext()) != null;
+ ((OldPeopleMainActivity) getContext()).setHeartRateMode(begin);
+ }
+
+ /**
+ * 修改数值
+ *
+ * @param heart
+ */
+ public void changeText(String heart, String systolic, String diastolic, String oxy) {
+ heartRateText.setText(heart);
+ this.diastolic.setText(diastolic);
+ this.systolic.setText(systolic);
+ this.oxy.setText(oxy);
+ }
}
diff --git a/android/OldPeopleHome/app/src/main/res/drawable/ic_bloodpressure.xml b/android/OldPeopleHome/app/src/main/res/drawable/ic_bloodpressure.xml
new file mode 100644
index 0000000..b0e5d70
--- /dev/null
+++ b/android/OldPeopleHome/app/src/main/res/drawable/ic_bloodpressure.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
diff --git a/android/OldPeopleHome/app/src/main/res/drawable/ic_oxy.xml b/android/OldPeopleHome/app/src/main/res/drawable/ic_oxy.xml
new file mode 100644
index 0000000..d0ede30
--- /dev/null
+++ b/android/OldPeopleHome/app/src/main/res/drawable/ic_oxy.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
diff --git a/android/OldPeopleHome/app/src/main/res/layout/fragment_old_heart_rate.xml b/android/OldPeopleHome/app/src/main/res/layout/fragment_old_heart_rate.xml
index 369c0cb..7403214 100644
--- a/android/OldPeopleHome/app/src/main/res/layout/fragment_old_heart_rate.xml
+++ b/android/OldPeopleHome/app/src/main/res/layout/fragment_old_heart_rate.xml
@@ -147,13 +147,13 @@
+ android:src="@drawable/ic_bloodpressure" />
@@ -165,6 +165,7 @@
android:orientation="horizontal">
+
+ android:src="@drawable/ic_bloodpressure" />
@@ -211,6 +213,7 @@
android:orientation="horizontal">
+
+ android:src="@drawable/ic_oxy" />
@@ -257,6 +261,7 @@
android:orientation="horizontal">
@@ -284,6 +289,7 @@
android:layout_height="0dp"
android:layout_weight="1.2"
android:orientation="horizontal">
+