std::string GetDeviceId();
bool IsDeviceIdValid();
bool ValidateIMEIChecksum(const std::string& imei);
+
+ // IMEI状态管理函数
+ bool IsIMEIValid() const;
+ void CheckIMEIStatus();
+ void SetIMEIValid(bool valid);
// 对话状态相关函数
int GetConversationStatus();
bool m_countUpActive; // 计数定时器是否激活
int m_countUpValue; // 当前计数值
int m_countUpTarget; // 计数目标值
+
+ // IMEI状态管理
+ bool m_imeiValid; // IMEI是否有效标志位
+ bool m_imeiChecked; // IMEI是否已检查过
};
}
void ShowVolumeAdjustment(int volumeDelta);
bool HandleViewNavigation(int16_t currentView, int16_t currentSubView, bool isUpKey, KeyType keyType);
+ // 二维码相关函数
+ void UpdateQrcodeIfValid();
+
// 界面导航处理函数
bool HandleGuideViewNavigation(int16_t currentSubView, KeyType keyType);
bool HandleDialogueViewNavigation(int16_t currentSubView, KeyType keyType);
m_statusChangeTime(0), m_lastStatusCheckTime(0),
m_reminderHideActive(false), m_reminderHideTime(0),
m_otaCountdownActive(false), m_otaCountdownValue(0),
- m_countUpActive(false), m_countUpValue(0), m_countUpTarget(0)
+ m_countUpActive(false), m_countUpValue(0), m_countUpTarget(0),
+ m_imeiValid(false), m_imeiChecked(false)
{
// 初始化时加载提醒数据
// LoadRemindersFromFile();
}
}
+ // IMEI状态管理函数实现
+ bool ThunderBirdModel::IsIMEIValid() const
+ {
+ return m_imeiValid;
+ }
+
+ void ThunderBirdModel::CheckIMEIStatus()
+ {
+ // 如果已经检查过,直接返回
+ if (m_imeiChecked) {
+ return;
+ }
+
+ // 检查IMEI有效性
+ m_imeiValid = IsDeviceIdValid();
+ m_imeiChecked = true;
+
+ WEARABLE_LOGD("IMEI status checked: valid=%d", m_imeiValid);
+ }
+
+ void ThunderBirdModel::SetIMEIValid(bool valid)
+ {
+ m_imeiValid = valid;
+ m_imeiChecked = true;
+ WEARABLE_LOGD("IMEI status set: valid=%d", m_imeiValid);
+ }
+
}
\ No newline at end of file
}
else
{
- //判断二维码的有效性
- if(ThunderBirdModel::GetInstance()->IsDeviceIdValid())
- {
- //更新二维码
- ThunderBirdGuideView::GetInstance()->UpdateQrcode();
- }
+ //更新二维码
+ UpdateQrcodeIfValid();
}
}
//如果是在对话界面 需要根据对话状态去拿对话数据进行更新
return true;
}
+ // 更新二维码(如果设备ID有效)
+ void ThunderBirdPresenter::UpdateQrcodeIfValid()
+ {
+ // 确保IMEI状态已检查
+ ThunderBirdModel::GetInstance()->CheckIMEIStatus();
+
+ // 检查IMEI是否有效
+ if (!ThunderBirdModel::GetInstance()->IsIMEIValid()) {
+ return;
+ }
+
+ // 更新二维码 更新一次二维码 不能一直获取
+ ThunderBirdGuideView::GetInstance()->UpdateQrcode();
+ }
+
}