From: Caisking <3449750381@qq.com> Date: Fri, 19 Jul 2024 03:52:15 +0000 (+0800) Subject: 修复电量显示异常 X-Git-Tag: release_V1.2.70_20241020_135402~702^2~31 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=refs%2Fchanges%2F551%2F3;p=mirrors%2FFD230.git 修复电量显示异常 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/include/dial/DialModelPower.h b/code/sdk/application/wearable/fd230app/nativeui/main/include/dial/DialModelPower.h index 67ad31942..247f6f445 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/include/dial/DialModelPower.h +++ b/code/sdk/application/wearable/fd230app/nativeui/main/include/dial/DialModelPower.h @@ -1,3 +1,9 @@ +/*** + * @Date: 2024-05-30 15:59:37 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-07-19 11:44:23 + * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/main/include/dial/DialModelPower.h + */ /*** * @Date: 2024-04-15 10:55:58 * @LastEditors: Caisking 3449750381@qq.com @@ -33,7 +39,7 @@ namespace OHOS void NotifyPowerUpdate(); private: - uint8_t power_ = 0; + int16_t power_ = 0; bool powerUpdated_{false}; }; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPower.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPower.cpp index dc126c89d..a6ef37793 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPower.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPower.cpp @@ -65,7 +65,7 @@ namespace OHOS if (onChangeListener_ != nullptr) { onChangeListener_->OnDialFloatDataUpdate(DialDataType::DATA_TYPE_POWER, power_); - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"[UpdatePower!]\r\n"); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[UpdatePower!]\r\n"); } } } diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPowerStandby.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPowerStandby.cpp index a69677379..a06e20346 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPowerStandby.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPowerStandby.cpp @@ -1,3 +1,9 @@ +/*** + * @Date: 2024-07-06 16:27:31 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-07-19 11:47:44 + * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPowerStandby.cpp + */ /*** * @Date: 2024-04-27 11:56:33 * @LastEditors: Caisking 3449750381@qq.com @@ -29,12 +35,27 @@ namespace OHOS if (!PowerStanbyUpdated_) { UpdatePowerStanby(); - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "UpdatePowerStanby %d", PowerStanby_); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "UpdatePower %d", PowerStanby_); return false; } + float voltage = 0.0F; PowerStanby_ = battery_get_voltage(&voltage); - out = static_cast(PowerStanby_); + + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Battery voltage obtained: %.2f", voltage); + + // 计算映射值 + float minPower = 0; // 最小电量映射值 + float maxPower = 100; // 最大电量映射值 + float mappedValue = static_cast(PowerStanby_ - minPower) / (maxPower - minPower); // 进行映射计算 + + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Raw power value: %d, Mapped value: %.2f", PowerStanby_, mappedValue); + + // 如果需要在 0 到 1 范围映射 + out = mappedValue; + + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Mapped value sent to caller: %.2f", out); + return true; }