|
|
|
@ -42,51 +42,48 @@ class HomeController extends GetxController { |
|
|
|
BluetoothDevice? get currentDevice => _bluetoothManager.currentDevice; |
|
|
|
Rx<DeviceInfo?> get deviceInfo => _bleManager.deviceInfo; |
|
|
|
|
|
|
|
static final leftEarBattery = 0.obs; |
|
|
|
static final rightEarBattery = 0.obs; |
|
|
|
static final RxInt leftEarBattery = 0.obs; |
|
|
|
static final RxInt rightEarBattery = 0.obs; |
|
|
|
final caseBattery = 0.obs; |
|
|
|
final leftEarCharging = false.obs; |
|
|
|
final rightEarCharging = false.obs; |
|
|
|
final caseCharging = false.obs; |
|
|
|
final firmwareVersion = ''.obs; |
|
|
|
|
|
|
|
void updateDeviceInfo(DeviceInfo? newDeviceInfo) { |
|
|
|
Logger.d(_tag, 'lxm--updateDeviceInfo被调用'); |
|
|
|
Logger.d(_tag, 'lxm--接收到的DeviceInfo: $newDeviceInfo'); |
|
|
|
|
|
|
|
if (newDeviceInfo != null) { |
|
|
|
// Logger.d(_tag, 'lxm--原始数据 - 左耳电量: ${newDeviceInfo.leftEarBattery}'); |
|
|
|
// Logger.d(_tag, 'lxm--原始数据 - 右耳电量: ${newDeviceInfo.rightEarBattery}'); |
|
|
|
// Logger.d(_tag, 'lxm--原始数据 - 充电仓电量: ${newDeviceInfo.caseBattery}'); |
|
|
|
// Logger.d(_tag, 'lxm--原始数据 - 左耳充电: ${newDeviceInfo.leftEarCharging}'); |
|
|
|
// Logger.d(_tag, 'lxm--原始数据 - 右耳充电: ${newDeviceInfo.rightEarCharging}'); |
|
|
|
// Logger.d(_tag, 'lxm--原始数据 - 充电仓充电: ${newDeviceInfo.caseCharging}'); |
|
|
|
// Logger.d(_tag, 'lxm--原始数据 - 固件版本: ${newDeviceInfo.firmwareVersion}'); |
|
|
|
Logger.d(_tag, 'lxm--原始数据 - 左耳电量: ${newDeviceInfo.leftEarBattery}'); |
|
|
|
Logger.d(_tag, 'lxm--原始数据 - 右耳电量: ${newDeviceInfo.rightEarBattery}'); |
|
|
|
Logger.d(_tag, 'lxm--原始数据 - 充电仓电量: ${newDeviceInfo.caseBattery}'); |
|
|
|
Logger.d(_tag, 'lxm--原始数据 - 左耳充电: ${newDeviceInfo.leftEarCharging}'); |
|
|
|
Logger.d(_tag, 'lxm--原始数据 - 右耳充电: ${newDeviceInfo.rightEarCharging}'); |
|
|
|
Logger.d(_tag, 'lxm--原始数据 - 充电仓充电: ${newDeviceInfo.caseCharging}'); |
|
|
|
Logger.d(_tag, 'lxm--原始数据 - 固件版本: ${newDeviceInfo.firmwareVersion}'); |
|
|
|
} else { |
|
|
|
Logger.d(_tag, 'lxm--接收到的DeviceInfo为null'); |
|
|
|
} |
|
|
|
|
|
|
|
// 只有当新数据不为0时才更新电池值,否则保持原值 |
|
|
|
if ((newDeviceInfo?.leftEarBattery ?? 0) != 0) { |
|
|
|
Logger.d(_tag, 'lxm--更新左耳电量: ${newDeviceInfo!.leftEarBattery}'); |
|
|
|
leftEarBattery.value = newDeviceInfo.leftEarBattery; |
|
|
|
} |
|
|
|
if ((newDeviceInfo?.rightEarBattery ?? 0) != 0) { |
|
|
|
Logger.d(_tag, 'lxm--更新右耳电量: ${newDeviceInfo!.rightEarBattery}'); |
|
|
|
rightEarBattery.value = newDeviceInfo.rightEarBattery; |
|
|
|
} |
|
|
|
leftEarBattery.value = newDeviceInfo?.leftEarBattery ?? 0; |
|
|
|
rightEarBattery.value = newDeviceInfo?.rightEarBattery ?? 0; |
|
|
|
caseBattery.value = newDeviceInfo?.caseBattery ?? 0; |
|
|
|
leftEarCharging.value = newDeviceInfo?.leftEarCharging ?? false; |
|
|
|
rightEarCharging.value = newDeviceInfo?.rightEarCharging ?? false; |
|
|
|
caseCharging.value = newDeviceInfo?.caseCharging ?? false; |
|
|
|
firmwareVersion.value = newDeviceInfo?.firmwareVersion ?? ''; |
|
|
|
|
|
|
|
// Logger.d(_tag, 'lxm--更新后的值 - 左耳电量: ${leftEarBattery.value}'); |
|
|
|
// Logger.d(_tag, 'lxm--更新后的值 - 右耳电量: ${rightEarBattery.value}'); |
|
|
|
// Logger.d(_tag, 'lxm--更新后的值 - 充电仓电量: ${caseBattery.value}'); |
|
|
|
// Logger.d(_tag, 'lxm--更新后的值 - 左耳充电: ${leftEarCharging.value}'); |
|
|
|
// Logger.d(_tag, 'lxm--更新后的值 - 右耳充电: ${rightEarCharging.value}'); |
|
|
|
// Logger.d(_tag, 'lxm--更新后的值 - 充电仓充电: ${caseCharging.value}'); |
|
|
|
// Logger.d(_tag, 'lxm--更新后的值 - 固件版本: ${firmwareVersion.value}'); |
|
|
|
Logger.d(_tag, 'lxm--更新后的值 - 左耳电量: ${leftEarBattery.value}'); |
|
|
|
Logger.d(_tag, 'lxm--更新后的值 - 右耳电量: ${rightEarBattery.value}'); |
|
|
|
Logger.d(_tag, 'lxm--更新后的值 - 充电仓电量: ${caseBattery.value}'); |
|
|
|
Logger.d(_tag, 'lxm--更新后的值 - 左耳充电: ${leftEarCharging.value}'); |
|
|
|
Logger.d(_tag, 'lxm--更新后的值 - 右耳充电: ${rightEarCharging.value}'); |
|
|
|
Logger.d(_tag, 'lxm--更新后的值 - 充电仓充电: ${caseCharging.value}'); |
|
|
|
Logger.d(_tag, 'lxm--更新后的值 - 固件版本: ${firmwareVersion.value}'); |
|
|
|
// rightEarCharging.refresh(); |
|
|
|
//update(); |
|
|
|
} |
|
|
|
|
|
|
|
Worker? _deviceInfoWorker; |
|
|
|
@ -131,7 +128,7 @@ class HomeController extends GetxController { |
|
|
|
} else { |
|
|
|
Logger.d(_tag, 'lxm--DeviceInfo为null,跳过更新'); |
|
|
|
} |
|
|
|
update(); |
|
|
|
//update(); |
|
|
|
}); |
|
|
|
|
|
|
|
_classicBluetoothWorker = |
|
|
|
@ -213,7 +210,7 @@ class HomeController extends GetxController { |
|
|
|
if (_isFullyConnected.value != isNowConnected) { |
|
|
|
_isFullyConnected.value = isNowConnected; |
|
|
|
_isFullyConnected.refresh(); |
|
|
|
update(); |
|
|
|
//update(); |
|
|
|
|
|
|
|
if (!wasConnected && isNowConnected) { |
|
|
|
// 连接成功后等待1秒再获取设备信息 |
|
|
|
@ -233,7 +230,7 @@ class HomeController extends GetxController { |
|
|
|
// 移除了根据连接状态控制定时器的逻辑 |
|
|
|
} |
|
|
|
|
|
|
|
update(); |
|
|
|
//update(); |
|
|
|
} catch (e) { |
|
|
|
Logger.e(_tag, '${'checkConnectionStatusFailed'.tr}: $e'); |
|
|
|
if (_isFullyConnected.value) { |
|
|
|
@ -241,7 +238,7 @@ class HomeController extends GetxController { |
|
|
|
_isFullyConnected.refresh(); |
|
|
|
// 移除了发生错误时停止定时器的逻辑 |
|
|
|
// 注意:不再重置OTA检查状态,因为现在由全局服务管理 |
|
|
|
update(); |
|
|
|
//update(); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|