* @Author: luozheng 1732036298@qq.com
* @Date: 2024-07-08 09:39:31
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-07-10 21:20:02
+ * @LastEditTime: 2024-07-15 11:57:25
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aimodels/include/AiModelsModel.h
*/
void SetSelectAiModel(int index);
bool ChangeAiModel(void);
int GetAiModelTextId(void);
- void SetAiModelTextId(int textId);
private:
AiModelsModel();
~AiModelsModel();
AiModelsModel(const AiModelsModel &) = delete;
AiModelsModel &operator=(const AiModelsModel &) = delete;
-
- int selectAiModel; // 选择的ai模型
- int textId;
};
}
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-07-08 09:39:10
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-07-10 10:21:57
+ * @LastEditTime: 2024-07-15 11:57:50
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aimodels/include/AiModelsPresenter.h
*/
#include "Presenter.h"
#include "View.h"
#include "aimodels/include/AiModelsModel.h"
-
+#include "aimodels/include/AiModelsView.h"
namespace OHOS
{
+ static const int AimodelsTextId[AIMODES_MAX_NUM] = {STR_AIMODELS_DOUBAO, STR_AIMODES_WENXINYIYAN, STR_AIMODES_KIMI, STR_AIMODES_CHATGPT};
class AiModelsView;
class AiModelsModel;
class AiModelsPresenter : public Presenter<AiModelsView>,
int16_t GetSelectAiModel(void);
/*单击func key切换ai模型*/
void ChangeAiModel(void);
- void SetAiModelTextId(int16_t id);
void OnStart() override;
void OnResume() override;
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-07-08 09:38:50
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-07-10 10:11:28
+ * @LastEditTime: 2024-07-15 11:59:42
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aimodels/include/AiModelsView.h
*/
AIMODES_MAX_NUM,
} aimodels;
- static constexpr char *AIMODES_DOUBAO_BUTTONVIEWID = "doubao_button";
- static constexpr char *AIMODES_WENXINYIYAN_BUTTONVIEWID = "wenxinyiyan_button";
- static constexpr char *AIMODES_KIMI_BUTTONVIEWID = "kimi_button";
- static constexpr char *AIMODES_CHATGPT_BUTTONVIEWID = "chatgpt_button";
+ static constexpr const char *AIMODES_DOUBAO_BUTTONVIEWID = "doubao_button";
+ static constexpr const char *AIMODES_WENXINYIYAN_BUTTONVIEWID = "wenxinyiyan_button";
+ static constexpr const char *AIMODES_KIMI_BUTTONVIEWID = "kimi_button";
+ static constexpr const char *AIMODES_CHATGPT_BUTTONVIEWID = "chatgpt_button";
- static constexpr char *AiModels_Bg = AIMODELS_IMAGE_PATH "/aimodels_bg.bin"; /*整个模型背景*/
- static constexpr char *AiModels_title_Bg = AIMODELS_IMAGE_PATH "/aimodels_title_bg.bin"; /*标题背景*/
- static constexpr char *AiModels_select = AIMODELS_IMAGE_PATH "/aimodels_select.bin"; /*模型选中状态*/
- static constexpr char *AiModelsImagePath[AIMODES_MAX_NUM] = {
+ static constexpr const char *AiModels_Bg = AIMODELS_IMAGE_PATH "/aimodels_bg.bin"; /*整个模型背景*/
+ static constexpr const char *AiModels_title_Bg = AIMODELS_IMAGE_PATH "/aimodels_title_bg.bin"; /*标题背景*/
+ static constexpr const char *AiModels_select = AIMODELS_IMAGE_PATH "/aimodels_select.bin"; /*模型选中状态*/
+ static constexpr const char *AiModelsImagePath[AIMODES_MAX_NUM] = {
AIMODELS_IMAGE_PATH "/aimodels_doubao.bin", /*豆包*/
AIMODELS_IMAGE_PATH "/aimodels_wenxinyiyan.bin", /*文心一言*/
AIMODELS_IMAGE_PATH "/aimodels_kimi.bin", /*Kimi*/
AIMODELS_IMAGE_PATH "/aimode_lschatgpt_on.bin", /*ChatGPT*/
};
- static constexpr char *AiModelsButtonViewId[AIMODES_MAX_NUM] = {
+ static constexpr const char *AiModelsButtonViewId[AIMODES_MAX_NUM] = {
AIMODES_DOUBAO_BUTTONVIEWID, /*豆包*/
AIMODES_WENXINYIYAN_BUTTONVIEWID, /*文心一言*/
AIMODES_KIMI_BUTTONVIEWID, /*Kimi*/
UILabelExt *AiModelsTitle{nullptr}; // au模型标题
UIButton *AiModelsButtons[AIMODES_MAX_NUM]{nullptr};
UIImageView *AiModelsImages[AIMODES_MAX_NUM]{nullptr};
- static const int AimodelsTextId[AIMODES_MAX_NUM];
bool viewInitStatus{false};
};
}
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-07-08 09:39:58
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-07-10 21:20:06
+ * @LastEditTime: 2024-07-15 11:57:32
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aimodels/src/AiModelsModel.cpp
*/
#include "aimodels/include/AiModelsModel.h"
#include "aimodels/include/AiModelsPresenter.h"
#include "wearable_log.h"
-
+#include "ConfigModel.h"
namespace OHOS
{
AiModelsModel::AiModelsModel() {}
/*获取选择的ai模型*/
int AiModelsModel::GetSelectAiModel(void)
{
- return selectAiModel;
+ return ConfigModel::GetInstance()->GetSelectAiModel();
}
// 设置选择的ai模型
void AiModelsModel::SetSelectAiModel(int index)
{
- selectAiModel = index;
+ ConfigModel::GetInstance()->SetSelectAiModel(index);
}
/*单击func key切换ai模型*/
/*获取已选择的ai模型的textid*/
int AiModelsModel::GetAiModelTextId(void)
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AiModelsModel::GetAiModelTextId - textId = %d", textId);
- return textId;
- }
-
- void AiModelsModel::SetAiModelTextId(int id)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AiModelsModel::SetAiModelTextId - id = %d", id);
- textId = id;
+ return AimodelsTextId[GetSelectAiModel()];
}
}
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-06-20 15:11:17
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-07-10 10:22:18
+ * @LastEditTime: 2024-07-15 14:23:53
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiModelsPresenter.cpp
*/
#include "AppViewIDs.h"
#include <custom_utils.h>
#include "UiConfig.h"
#include "aimodels/include/AiModelsPresenter.h"
-#include "aimodels/include/AiModelsView.h"
namespace OHOS
{
void AiModelsPresenter::ChangeAiModel(void)
{
int index = GetSelectAiModel() + 1;
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AiModelsPresenter::index = %d", index);
if (index >= AIMODES_MAX_NUM)
{
index = AIMODES_DOUBAO;
}
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AiModelsPresenter::index = %d", index);
model->SetSelectAiModel(index);
view_->UpdateAiModelsSelectStateAndTitleId();
}
- void AiModelsPresenter::SetAiModelTextId(int16_t id)
- {
- model->SetAiModelTextId(id);
- }
-
// 启动时执行的逻辑
void AiModelsPresenter::OnStart()
{
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-05-07 11:25:58
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-07-10 10:24:57
+ * @LastEditTime: 2024-07-15 11:58:45
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/AiModels/src/AiModelsView.cpp
*/
#include "aimodels/include/AiModelsPresenter.h"
namespace OHOS
{
- const int AiModelsView::AimodelsTextId[AIMODES_MAX_NUM] = {STR_AIMODELS_DOUBAO, STR_AIMODES_WENXINYIYAN, STR_AIMODES_KIMI, STR_AIMODES_CHATGPT};
static AiModelsView *g_pAiModelsView{nullptr};
AiModelsView::AiModelsView()
{
{
int index = presenter_->GetSelectAiModel();
int textId = AimodelsTextId[index];
- presenter_->SetAiModelTextId(textId);
if (AiModelsTitle != nullptr)
{
AiModelsTitle->SetTextId(textId);
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-05-07 11:25:58
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-07-06 10:12:27
+ * @LastEditTime: 2024-07-12 16:05:22
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/AiVoice/src/AiVoiceView.cpp
*/
#include "aivoice/include/AiVoicePresenter.h"
#include "aivoice/include/AiVoiceView.h"
#include "wearable_log.h"
#include "ui_resource_string.h"
+#include "aimodels/include/AiModelsModel.h"
namespace OHOS
{
.height = 35,
.fontSize = 30,
.lineHeigh = 35,
- .textId = STR_AI_INTELLIGENT_ASSISTANT,
+ .textId = AiModelsModel::GetInstance().GetAiModelTextId(),
.lineBreakMode = UILabel::LINE_BREAK_OSCILLATION,
};
title = AiVoiceViewLabelInit(labelConfig);
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-05-07 11:25:58
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-07-12 11:14:36
+ * @LastEditTime: 2024-07-12 16:11:36
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/AiVoice/src/AivoiceReturnResultTextView.cpp
*/
#include "aivoice/include/AiVoicePresenter.h"
#include <UiConfig.h>
#include <iostream>
#include "string"
+#include "aimodels/include/AiModelsModel.h"
namespace OHOS
{
.height = 35,
.fontSize = 30,
.lineHeight = 35,
- .textId = STR_AI_INTELLIGENT_ASSISTANT,
+ .textId = AiModelsModel::GetInstance().GetAiModelTextId(),
.lineBreakMode = UILabel::LINE_BREAK_OSCILLATION,
};
title = AivoiceReturnResultTextLabelInit(labelconfig);
CONFIGMODEL_ITEM_24HOUR,//默认24小时模式显示
CONFIGMOFEL_ITEM_DMP_CHINA_MOBILE_ADDRESS,//移动入库地址默认测试是适配地址 b.fxltsbl.com 出正式需要修改商用地址 a.fxltsbl.com
+ CONFIGMODEL_ITEM_SELECT_AIMODEL,//ai模型
CONFIGMODEL_ITEM_MAX,
} ;
/* ---------------------------------- 运动识别相关set与get ---------------------------------- */
void SetMotionRecognition(bool state);
bool GetMotionRecognition(void);
+ /* ---------------------------------- ai模型相关set与get ---------------------------------- */
+ void SetSelectAiModel(int value);
+ int GetSelectAiModel(void);
/* --------------------------------- 用户配置信息 --------------------------------- */
void SetUserAge(int age);
int GetUserAge();
{ConfigDataType::DATATYPE_INT, "dmp_change_mode_old", "0" },//CONFIGMODEL_ITEM_DMP_CHANGE_MODE_OLD 默认值 1 要和新默认值一致
#endif
{ConfigDataType::DATATYPE_INT, "time_hour_show_model", "24" },//CONFIGMODEL_ITEM_24HOUR,//默认24小时模式显示 ,12 12小时显示 ,24 24小时显示
- {ConfigDataType::DATATYPE_STRING, "dmp_china_mobile_address", "b.fxltsbl.com"}//CONFIGMOFEL_ITEM_DMP_CHINA_MOBILE_ADDRESS 移动入库地址 测试使用适配地址 IP = b.fxltsbl.com 出正式使用商用地址 IP = a.fxltsbl.com
+ {ConfigDataType::DATATYPE_STRING, "dmp_china_mobile_address", "b.fxltsbl.com"},//CONFIGMOFEL_ITEM_DMP_CHINA_MOBILE_ADDRESS 移动入库地址 测试使用适配地址 IP = b.fxltsbl.com 出正式使用商用地址 IP = a.fxltsbl.com
+ {ConfigDataType::DATATYPE_INT, "select_aimodel", "0" },//CONFIGMODEL_SELECT_AIMODEL 0:豆包 1:文心一言 2:kimi 3:ChatGPT
};
ConfigModel(); // 私有构造函数,确保无法在外部实例化
ConfigModel(const ConfigModel &) = delete; // 禁止拷贝构造
{
return get_configData_bool(CONFIGMODEL_ITEM_MOTIONRECOGNITION);
}
+
+ void ConfigModel::SetSelectAiModel(int value)
+ {
+ set_condigData_Int(CONFIGMODEL_ITEM_SELECT_AIMODEL,value);
+ }
+
+ int ConfigModel::GetSelectAiModel(void)
+ {
+ return get_configData_int(CONFIGMODEL_ITEM_SELECT_AIMODEL);
+ }
/* -------------------------------------------------------------------------- */
/*设置用户年龄[后续使用结构体统一配置]*/
void ConfigModel::SetUserAge(int age)