diff --git a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt index c6d7d77..390eded 100644 --- a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt @@ -72,57 +72,59 @@ private val callback = Handler.Callback { message -> if (message.what == 2022102003) { - val it = message.obj as DeviceBean - deviceStateView.text = if (it.isOnline) { - "设备在线" - } else { - "设备已离线" - } - titleView.text = it.name - Glide.with(context) - .load(it.iconUrl) - .apply(RequestOptions.circleCropTransform()) - .placeholder(R.mipmap.load_image_error) - .into(deviceLogoView) + if (!this.isDestroyed) { + val it = message.obj as DeviceBean + deviceStateView.text = if (it.isOnline) { + "设备在线" + } else { + "设备已离线" + } + titleView.text = it.name + Glide.with(this) + .load(it.iconUrl) + .apply(RequestOptions.circleCropTransform()) + .placeholder(R.mipmap.load_image_error) + .into(deviceLogoView) - /** - * {"11":0,"1":"2","15":100} - * - * 11 - 故障告警 - * 1 - CO检测状态 - * 15 - 电池电量 - * */ - val dataMap = HashMap() + /** + * {"11":0,"1":"2","15":100} + * + * 11 - 故障告警 + * 1 - CO检测状态 + * 15 - 电池电量 + * */ + val dataMap = HashMap() - val value = it.dps["15"].toString() - batteryView.setBackgroundResource(value.toBatteryImage()) - batteryValueView.text = "${value}%" + val value = it.dps["15"].toString() + batteryView.setBackgroundResource(value.toBatteryImage()) + batteryValueView.text = "${value}%" - val f = it.dps["11"] - faultAlarmView.text = if (f == 0) { - "正常" - } else { - "异常" - } - faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val f = it.dps["11"] + faultAlarmView.text = if (f == 0) { + "正常" + } else { + "异常" + } + faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - val c = it.dps["1"] as String - coAlarmView.text = if (c == "2") { - "正常" - } else { - "异常" - } - coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val c = it.dps["1"] as String + coAlarmView.text = if (c == "2") { + "正常" + } else { + "异常" + } + coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - dataLinkedList.add(dataMap) + dataLinkedList.add(dataMap) + } } true } diff --git a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt index c6d7d77..390eded 100644 --- a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt @@ -72,57 +72,59 @@ private val callback = Handler.Callback { message -> if (message.what == 2022102003) { - val it = message.obj as DeviceBean - deviceStateView.text = if (it.isOnline) { - "设备在线" - } else { - "设备已离线" - } - titleView.text = it.name - Glide.with(context) - .load(it.iconUrl) - .apply(RequestOptions.circleCropTransform()) - .placeholder(R.mipmap.load_image_error) - .into(deviceLogoView) + if (!this.isDestroyed) { + val it = message.obj as DeviceBean + deviceStateView.text = if (it.isOnline) { + "设备在线" + } else { + "设备已离线" + } + titleView.text = it.name + Glide.with(this) + .load(it.iconUrl) + .apply(RequestOptions.circleCropTransform()) + .placeholder(R.mipmap.load_image_error) + .into(deviceLogoView) - /** - * {"11":0,"1":"2","15":100} - * - * 11 - 故障告警 - * 1 - CO检测状态 - * 15 - 电池电量 - * */ - val dataMap = HashMap() + /** + * {"11":0,"1":"2","15":100} + * + * 11 - 故障告警 + * 1 - CO检测状态 + * 15 - 电池电量 + * */ + val dataMap = HashMap() - val value = it.dps["15"].toString() - batteryView.setBackgroundResource(value.toBatteryImage()) - batteryValueView.text = "${value}%" + val value = it.dps["15"].toString() + batteryView.setBackgroundResource(value.toBatteryImage()) + batteryValueView.text = "${value}%" - val f = it.dps["11"] - faultAlarmView.text = if (f == 0) { - "正常" - } else { - "异常" - } - faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val f = it.dps["11"] + faultAlarmView.text = if (f == 0) { + "正常" + } else { + "异常" + } + faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - val c = it.dps["1"] as String - coAlarmView.text = if (c == "2") { - "正常" - } else { - "异常" - } - coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val c = it.dps["1"] as String + coAlarmView.text = if (c == "2") { + "正常" + } else { + "异常" + } + coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - dataLinkedList.add(dataMap) + dataLinkedList.add(dataMap) + } } true } diff --git a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt index 2b3c75b..decde28 100644 --- a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt @@ -77,71 +77,73 @@ private val callback = Handler.Callback { message -> if (message.what == 2022102002) { - val it = message.obj as DeviceBean - deviceStateView.text = if (it.isOnline) { - "在线" - } else { - "离线" - } + if (!this.isDestroyed) { + val it = message.obj as DeviceBean + deviceStateView.text = if (it.isOnline) { + "在线" + } else { + "离线" + } - titleView.text = it.name - Glide.with(context) - .load(it.iconUrl) - .apply(RequestOptions.circleCropTransform()) - .placeholder(R.mipmap.load_image_error) - .into(deviceLogoView) + titleView.text = it.name + Glide.with(this) + .load(it.iconUrl) + .apply(RequestOptions.circleCropTransform()) + .placeholder(R.mipmap.load_image_error) + .into(deviceLogoView) - val dataMap = HashMap() + val dataMap = HashMap() - /** - * {"11":0,"1":"normal","15":100,"4":false} - * - * {"11":{"name":"故障告警"},"1":{"name":"烟雾检测状态"},"4":{"name":"防拆报警"},"15":{"name":"电池电量"}} - * */ + /** + * {"11":0,"1":"normal","15":100,"4":false} + * + * {"11":{"name":"故障告警"},"1":{"name":"烟雾检测状态"},"4":{"name":"防拆报警"},"15":{"name":"电池电量"}} + * */ - val b = it.dps["15"].toString() - batteryView.setBackgroundResource(b.toBatteryImage()) - batteryValueView.text = "${b}%" + val b = it.dps["15"].toString() + batteryView.setBackgroundResource(b.toBatteryImage()) + batteryValueView.text = "${b}%" - val f = it.dps["11"] - faultAlarmView.text = if (f == 0) { - "正常" - } else { - "异常" - } - faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val f = it.dps["11"] + faultAlarmView.text = if (f == 0) { + "正常" + } else { + "异常" + } + faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - val s = it.dps["1"] as String - fireAlarmView.text = if (s == "normal") { - "正常" - } else { - "异常" - } - fireAlarmTimeView.text = if (fireAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val s = it.dps["1"] as String + fireAlarmView.text = if (s == "normal") { + "正常" + } else { + "异常" + } + fireAlarmTimeView.text = if (fireAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - val t = it.dps["4"] as Boolean - tamperAlarmView.text = if (!t) { - "正常" - } else { - "异常" - } - tamperAlarmTimeView.text = if (tamperAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val t = it.dps["4"] as Boolean + tamperAlarmView.text = if (!t) { + "正常" + } else { + "异常" + } + tamperAlarmTimeView.text = if (tamperAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } // dataMap["temperature"] = temperatureView.text.toString().replace("°C", "") - dataLinkedList.add(dataMap) + dataLinkedList.add(dataMap) + } } true } diff --git a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt index c6d7d77..390eded 100644 --- a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt @@ -72,57 +72,59 @@ private val callback = Handler.Callback { message -> if (message.what == 2022102003) { - val it = message.obj as DeviceBean - deviceStateView.text = if (it.isOnline) { - "设备在线" - } else { - "设备已离线" - } - titleView.text = it.name - Glide.with(context) - .load(it.iconUrl) - .apply(RequestOptions.circleCropTransform()) - .placeholder(R.mipmap.load_image_error) - .into(deviceLogoView) + if (!this.isDestroyed) { + val it = message.obj as DeviceBean + deviceStateView.text = if (it.isOnline) { + "设备在线" + } else { + "设备已离线" + } + titleView.text = it.name + Glide.with(this) + .load(it.iconUrl) + .apply(RequestOptions.circleCropTransform()) + .placeholder(R.mipmap.load_image_error) + .into(deviceLogoView) - /** - * {"11":0,"1":"2","15":100} - * - * 11 - 故障告警 - * 1 - CO检测状态 - * 15 - 电池电量 - * */ - val dataMap = HashMap() + /** + * {"11":0,"1":"2","15":100} + * + * 11 - 故障告警 + * 1 - CO检测状态 + * 15 - 电池电量 + * */ + val dataMap = HashMap() - val value = it.dps["15"].toString() - batteryView.setBackgroundResource(value.toBatteryImage()) - batteryValueView.text = "${value}%" + val value = it.dps["15"].toString() + batteryView.setBackgroundResource(value.toBatteryImage()) + batteryValueView.text = "${value}%" - val f = it.dps["11"] - faultAlarmView.text = if (f == 0) { - "正常" - } else { - "异常" - } - faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val f = it.dps["11"] + faultAlarmView.text = if (f == 0) { + "正常" + } else { + "异常" + } + faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - val c = it.dps["1"] as String - coAlarmView.text = if (c == "2") { - "正常" - } else { - "异常" - } - coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val c = it.dps["1"] as String + coAlarmView.text = if (c == "2") { + "正常" + } else { + "异常" + } + coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - dataLinkedList.add(dataMap) + dataLinkedList.add(dataMap) + } } true } diff --git a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt index 2b3c75b..decde28 100644 --- a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt @@ -77,71 +77,73 @@ private val callback = Handler.Callback { message -> if (message.what == 2022102002) { - val it = message.obj as DeviceBean - deviceStateView.text = if (it.isOnline) { - "在线" - } else { - "离线" - } + if (!this.isDestroyed) { + val it = message.obj as DeviceBean + deviceStateView.text = if (it.isOnline) { + "在线" + } else { + "离线" + } - titleView.text = it.name - Glide.with(context) - .load(it.iconUrl) - .apply(RequestOptions.circleCropTransform()) - .placeholder(R.mipmap.load_image_error) - .into(deviceLogoView) + titleView.text = it.name + Glide.with(this) + .load(it.iconUrl) + .apply(RequestOptions.circleCropTransform()) + .placeholder(R.mipmap.load_image_error) + .into(deviceLogoView) - val dataMap = HashMap() + val dataMap = HashMap() - /** - * {"11":0,"1":"normal","15":100,"4":false} - * - * {"11":{"name":"故障告警"},"1":{"name":"烟雾检测状态"},"4":{"name":"防拆报警"},"15":{"name":"电池电量"}} - * */ + /** + * {"11":0,"1":"normal","15":100,"4":false} + * + * {"11":{"name":"故障告警"},"1":{"name":"烟雾检测状态"},"4":{"name":"防拆报警"},"15":{"name":"电池电量"}} + * */ - val b = it.dps["15"].toString() - batteryView.setBackgroundResource(b.toBatteryImage()) - batteryValueView.text = "${b}%" + val b = it.dps["15"].toString() + batteryView.setBackgroundResource(b.toBatteryImage()) + batteryValueView.text = "${b}%" - val f = it.dps["11"] - faultAlarmView.text = if (f == 0) { - "正常" - } else { - "异常" - } - faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val f = it.dps["11"] + faultAlarmView.text = if (f == 0) { + "正常" + } else { + "异常" + } + faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - val s = it.dps["1"] as String - fireAlarmView.text = if (s == "normal") { - "正常" - } else { - "异常" - } - fireAlarmTimeView.text = if (fireAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val s = it.dps["1"] as String + fireAlarmView.text = if (s == "normal") { + "正常" + } else { + "异常" + } + fireAlarmTimeView.text = if (fireAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - val t = it.dps["4"] as Boolean - tamperAlarmView.text = if (!t) { - "正常" - } else { - "异常" - } - tamperAlarmTimeView.text = if (tamperAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val t = it.dps["4"] as Boolean + tamperAlarmView.text = if (!t) { + "正常" + } else { + "异常" + } + tamperAlarmTimeView.text = if (tamperAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } // dataMap["temperature"] = temperatureView.text.toString().replace("°C", "") - dataLinkedList.add(dataMap) + dataLinkedList.add(dataMap) + } } true } diff --git a/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt index 944304f..adb9446 100644 --- a/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt @@ -83,35 +83,37 @@ private val callback = Handler.Callback { message -> if (message.what == 2022102001) { - val it = message.obj as DeviceBean - deviceStateView.text = if (it.isOnline) { - "设备在线" - } else { - "设备已离线" - } - titleView.text = it.name - Glide.with(context) - .load(it.iconUrl) - .apply(RequestOptions.circleCropTransform()) - .placeholder(R.mipmap.load_image_error) - .into(deviceLogoView) - - val value = it.dps["103"].toString() - batteryView.setBackgroundResource(value.toBatteryImage()) - batteryValueView.text = "${value}%" - - if (it.dps["101"] as Boolean) { - val time = (it.dpsTime["101"].toString().toLong()).timestampToTime() - timeLinkedList.add(time) - //需要判断当前最后一次时间喝上一次事件是否相同,相同就跳过 - if (timeLinkedList.size == 1) { - dataBeans.add(timeLinkedList.last) - } else if (timeLinkedList.last != timeLinkedList[timeLinkedList.size - 2]) { - dataBeans.add(timeLinkedList.last) + if (!this.isDestroyed) { + val it = message.obj as DeviceBean + deviceStateView.text = if (it.isOnline) { + "设备在线" + } else { + "设备已离线" } - motionAdapter.notifyDataSetChanged() - } else { - Log.d(kTag, "未检测到人体数据") + titleView.text = it.name + Glide.with(this) + .load(it.iconUrl) + .apply(RequestOptions.circleCropTransform()) + .placeholder(R.mipmap.load_image_error) + .into(deviceLogoView) + + val value = it.dps["103"].toString() + batteryView.setBackgroundResource(value.toBatteryImage()) + batteryValueView.text = "${value}%" + + if (it.dps["101"] as Boolean) { + val time = (it.dpsTime["101"].toString().toLong()).timestampToTime() + timeLinkedList.add(time) + //需要判断当前最后一次时间喝上一次事件是否相同,相同就跳过 + if (timeLinkedList.size == 1) { + dataBeans.add(timeLinkedList.last) + } else if (timeLinkedList.last != timeLinkedList[timeLinkedList.size - 2]) { + dataBeans.add(timeLinkedList.last) + } + motionAdapter.notifyDataSetChanged() + } else { + Log.d(kTag, "未检测到人体数据") + } } } true diff --git a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt index c6d7d77..390eded 100644 --- a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt @@ -72,57 +72,59 @@ private val callback = Handler.Callback { message -> if (message.what == 2022102003) { - val it = message.obj as DeviceBean - deviceStateView.text = if (it.isOnline) { - "设备在线" - } else { - "设备已离线" - } - titleView.text = it.name - Glide.with(context) - .load(it.iconUrl) - .apply(RequestOptions.circleCropTransform()) - .placeholder(R.mipmap.load_image_error) - .into(deviceLogoView) + if (!this.isDestroyed) { + val it = message.obj as DeviceBean + deviceStateView.text = if (it.isOnline) { + "设备在线" + } else { + "设备已离线" + } + titleView.text = it.name + Glide.with(this) + .load(it.iconUrl) + .apply(RequestOptions.circleCropTransform()) + .placeholder(R.mipmap.load_image_error) + .into(deviceLogoView) - /** - * {"11":0,"1":"2","15":100} - * - * 11 - 故障告警 - * 1 - CO检测状态 - * 15 - 电池电量 - * */ - val dataMap = HashMap() + /** + * {"11":0,"1":"2","15":100} + * + * 11 - 故障告警 + * 1 - CO检测状态 + * 15 - 电池电量 + * */ + val dataMap = HashMap() - val value = it.dps["15"].toString() - batteryView.setBackgroundResource(value.toBatteryImage()) - batteryValueView.text = "${value}%" + val value = it.dps["15"].toString() + batteryView.setBackgroundResource(value.toBatteryImage()) + batteryValueView.text = "${value}%" - val f = it.dps["11"] - faultAlarmView.text = if (f == 0) { - "正常" - } else { - "异常" - } - faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val f = it.dps["11"] + faultAlarmView.text = if (f == 0) { + "正常" + } else { + "异常" + } + faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - val c = it.dps["1"] as String - coAlarmView.text = if (c == "2") { - "正常" - } else { - "异常" - } - coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val c = it.dps["1"] as String + coAlarmView.text = if (c == "2") { + "正常" + } else { + "异常" + } + coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - dataLinkedList.add(dataMap) + dataLinkedList.add(dataMap) + } } true } diff --git a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt index 2b3c75b..decde28 100644 --- a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt @@ -77,71 +77,73 @@ private val callback = Handler.Callback { message -> if (message.what == 2022102002) { - val it = message.obj as DeviceBean - deviceStateView.text = if (it.isOnline) { - "在线" - } else { - "离线" - } + if (!this.isDestroyed) { + val it = message.obj as DeviceBean + deviceStateView.text = if (it.isOnline) { + "在线" + } else { + "离线" + } - titleView.text = it.name - Glide.with(context) - .load(it.iconUrl) - .apply(RequestOptions.circleCropTransform()) - .placeholder(R.mipmap.load_image_error) - .into(deviceLogoView) + titleView.text = it.name + Glide.with(this) + .load(it.iconUrl) + .apply(RequestOptions.circleCropTransform()) + .placeholder(R.mipmap.load_image_error) + .into(deviceLogoView) - val dataMap = HashMap() + val dataMap = HashMap() - /** - * {"11":0,"1":"normal","15":100,"4":false} - * - * {"11":{"name":"故障告警"},"1":{"name":"烟雾检测状态"},"4":{"name":"防拆报警"},"15":{"name":"电池电量"}} - * */ + /** + * {"11":0,"1":"normal","15":100,"4":false} + * + * {"11":{"name":"故障告警"},"1":{"name":"烟雾检测状态"},"4":{"name":"防拆报警"},"15":{"name":"电池电量"}} + * */ - val b = it.dps["15"].toString() - batteryView.setBackgroundResource(b.toBatteryImage()) - batteryValueView.text = "${b}%" + val b = it.dps["15"].toString() + batteryView.setBackgroundResource(b.toBatteryImage()) + batteryValueView.text = "${b}%" - val f = it.dps["11"] - faultAlarmView.text = if (f == 0) { - "正常" - } else { - "异常" - } - faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val f = it.dps["11"] + faultAlarmView.text = if (f == 0) { + "正常" + } else { + "异常" + } + faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - val s = it.dps["1"] as String - fireAlarmView.text = if (s == "normal") { - "正常" - } else { - "异常" - } - fireAlarmTimeView.text = if (fireAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val s = it.dps["1"] as String + fireAlarmView.text = if (s == "normal") { + "正常" + } else { + "异常" + } + fireAlarmTimeView.text = if (fireAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } - val t = it.dps["4"] as Boolean - tamperAlarmView.text = if (!t) { - "正常" - } else { - "异常" - } - tamperAlarmTimeView.text = if (tamperAlarmView.text.toString() == "异常") { - System.currentTimeMillis().timestampToCompleteDate() - } else { - "--:--:--" - } + val t = it.dps["4"] as Boolean + tamperAlarmView.text = if (!t) { + "正常" + } else { + "异常" + } + tamperAlarmTimeView.text = if (tamperAlarmView.text.toString() == "异常") { + System.currentTimeMillis().timestampToCompleteDate() + } else { + "--:--:--" + } // dataMap["temperature"] = temperatureView.text.toString().replace("°C", "") - dataLinkedList.add(dataMap) + dataLinkedList.add(dataMap) + } } true } diff --git a/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt index 944304f..adb9446 100644 --- a/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt @@ -83,35 +83,37 @@ private val callback = Handler.Callback { message -> if (message.what == 2022102001) { - val it = message.obj as DeviceBean - deviceStateView.text = if (it.isOnline) { - "设备在线" - } else { - "设备已离线" - } - titleView.text = it.name - Glide.with(context) - .load(it.iconUrl) - .apply(RequestOptions.circleCropTransform()) - .placeholder(R.mipmap.load_image_error) - .into(deviceLogoView) - - val value = it.dps["103"].toString() - batteryView.setBackgroundResource(value.toBatteryImage()) - batteryValueView.text = "${value}%" - - if (it.dps["101"] as Boolean) { - val time = (it.dpsTime["101"].toString().toLong()).timestampToTime() - timeLinkedList.add(time) - //需要判断当前最后一次时间喝上一次事件是否相同,相同就跳过 - if (timeLinkedList.size == 1) { - dataBeans.add(timeLinkedList.last) - } else if (timeLinkedList.last != timeLinkedList[timeLinkedList.size - 2]) { - dataBeans.add(timeLinkedList.last) + if (!this.isDestroyed) { + val it = message.obj as DeviceBean + deviceStateView.text = if (it.isOnline) { + "设备在线" + } else { + "设备已离线" } - motionAdapter.notifyDataSetChanged() - } else { - Log.d(kTag, "未检测到人体数据") + titleView.text = it.name + Glide.with(this) + .load(it.iconUrl) + .apply(RequestOptions.circleCropTransform()) + .placeholder(R.mipmap.load_image_error) + .into(deviceLogoView) + + val value = it.dps["103"].toString() + batteryView.setBackgroundResource(value.toBatteryImage()) + batteryValueView.text = "${value}%" + + if (it.dps["101"] as Boolean) { + val time = (it.dpsTime["101"].toString().toLong()).timestampToTime() + timeLinkedList.add(time) + //需要判断当前最后一次时间喝上一次事件是否相同,相同就跳过 + if (timeLinkedList.size == 1) { + dataBeans.add(timeLinkedList.last) + } else if (timeLinkedList.last != timeLinkedList[timeLinkedList.size - 2]) { + dataBeans.add(timeLinkedList.last) + } + motionAdapter.notifyDataSetChanged() + } else { + Log.d(kTag, "未检测到人体数据") + } } } true diff --git a/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt index 448861e..0a0d3a6 100644 --- a/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt @@ -87,39 +87,41 @@ private val callback = Handler.Callback { message -> if (message.what == 2022112001) { - val it = message.obj as DeviceBean - deviceStateView.text = if (it.isOnline) { - "设备在线" - } else { - "设备已离线" + if (!this.isDestroyed) { + val it = message.obj as DeviceBean + deviceStateView.text = if (it.isOnline) { + "设备在线" + } else { + "设备已离线" + } + titleView.text = String.format(it.name + "传感器") + + val dataMap = HashMap() + + val h = it.dps["101"].toString() + //温湿度的值需要缩小100倍 + humidityView.text = if (h.isBlank()) { + "0%" + } else { + "${h.toDouble() / 100}%" + } + dataMap["humidity"] = humidityView.text.toString().replace("%", "") + + val b = it.dps["102"].toString() + batteryView.setBackgroundResource(b.toBatteryImage()) + batteryValueView.text = "${b}%" + + val t = it.dps["103"].toString() + //{"unit":"℃","min":-2000,"max":10000,"scale":2,"step":1,"type":"value"} + temperatureView.text = if (h.isBlank()) { + "0${resources.getString(R.string.temperature_unit)}" + } else { + "${t.toDouble() / 100}${resources.getString(R.string.temperature_unit)}" + } + dataMap["temperature"] = temperatureView.text.toString().replace("°C", "") + + dataLinkedList.add(dataMap) } - titleView.text = String.format(it.name + "传感器") - - val dataMap = HashMap() - - val h = it.dps["101"].toString() - //温湿度的值需要缩小100倍 - humidityView.text = if (h.isBlank()) { - "0%" - } else { - "${h.toDouble() / 100}%" - } - dataMap["humidity"] = humidityView.text.toString().replace("%", "") - - val b = it.dps["102"].toString() - batteryView.setBackgroundResource(b.toBatteryImage()) - batteryValueView.text = "${b}%" - - val t = it.dps["103"].toString() - //{"unit":"℃","min":-2000,"max":10000,"scale":2,"step":1,"type":"value"} - temperatureView.text = if (h.isBlank()) { - "0${resources.getString(R.string.temperature_unit)}" - } else { - "${t.toDouble() / 100}${resources.getString(R.string.temperature_unit)}" - } - dataMap["temperature"] = temperatureView.text.toString().replace("°C", "") - - dataLinkedList.add(dataMap) } true }