
HarmonyOS AI辅助编程工具(CodeGenie)卡片生成
基于AI大模型理解开发者的卡片需求信息,通过对话式的交互智能生成HarmonyOS万能卡片工程。
一、使用约束
1. 建议从以下维度描述卡片需求:
序号 | 建议描述维度 | 说明 | 举例 |
1 | 卡片用途 | 卡片的用途/业务场景,比如电商购物、娱乐、生活服务类等。 | 例如“电商购物卡片”、“娱乐类卡片”。 |
2 | 卡片功能 | 卡片包含的组件,如图标、标题、按钮等;组件的状态信息,如图标主题、标题内容、按钮显示的文字等。 | 例如“新品上市主标题”、“商品搜索按钮”、“热门电影子板块入口”等。 |
3 | 卡片尺寸 | HarmonyOS官网提供的四种卡片尺寸:1*2(微卡片)、2*2(小卡片)、2*4(中卡片)、4*4(大卡片); 卡片尺寸非必选项,AI会根据前两个维度描述的信息,智能选择效果最佳的尺寸。 | 例如“2*2尺寸的卡片”、“中卡片”等。 |
2. 当前不支持在生成卡片预览图后继续描述需求进行增量修改。
二、万能卡片生成
1. 在对话区域输入"/",选择Service Widget,输入生成的万能卡片需求并发送,可以根据模型的提示进行多轮交互,不断完善需求。DevEco Studio 6.0.0 Beta1之前的版本,请在对话区域下拉框中选择Service Widget后输入需求。
2. 需求描述完成后,智能生成卡片(1~3张)及预览效果图。
生成效果示例:
三、保存生成的卡片
1. 点击
快捷键可查看生成卡片的UI代码、配置信息和下载静态资源文件。
2. 保存卡片工程有两种方式:
方式一:使用代码/配置查看窗口的“复制”、“插入”或“创建文件”等按钮手动保存卡片代码和配置信息。
方式二:点击“保存工程”按钮自动保存卡片工程,卡片代码、配置、静态资源文件等会自动保存到工程对应目录中。默认勾选保存逻辑代码,逻辑代码用于配置卡片事件及卡片数据等信息。
流程示例:
工程保存完成后,工程中会新增如下卡片相关文件:
四、自定义配置逻辑代码
逻辑代码包含实现卡片数据交互和卡片事件两类。
卡片数据交互:触发卡片页面刷新。应用工程生成的卡片数据交互,可通过数据库或网络请求两种方式来触发卡片页面刷新;对于元服务工程生成的卡片,数据交互为通过网络请求方式触发卡片页面刷新。
卡片事件:使用router事件跳转到指定的UIAbility、使用call事件拉起UIAbility到后台、使用message事件刷新卡片内容。
目录结构
在module > src > main > ets 路径下, formcommon目录用于存放生成卡片的逻辑代码。
formsetting:存放用户可配置的文件。
formsetting > formdbsetting:自定义配置以数据库方式进行卡片刷新的相关参数。
formdbsetting > formdbinfo:存放包含卡片信息的Info.ets文件,可在Info.ets文件中,添加卡片刷新所需要的具体的数据,后续会读取该文件并将数据存入数据库中。
UserSettings.ets:可以自定义卡片刷新时从数据库获取数据的规则、数据解析规则、message内容刷新规则。
formsetting > formhttpsetting:自定义配置以网络请求方式进行卡片刷新的相关参数。
formhttpsetting > formhttpinfo:存放包含卡片信息的Info.ets文件,可在Info.ets文件中添加获取卡片刷新数据的URL。
UserSettings.ets:可以自定义卡片刷新时从URL获取数据的规则、数据解析规则、message内容刷新规则。
说明
如需使用网络请求方式刷新卡片页面,需在EntryFormAbility.ets文件中将FormDbUpdate的接口注释掉,并将启用FormHttpUpdate接口。
formsetting > FormAction.ets:配置卡片事件。
utils:存放工具类的目录,用户不可修改,如果修改再次生成逻辑代码时utils目录会被刷新。
自定义配置卡片事件
1. 可以在FormAction.ets文件中配置触发卡片router事件时具体的页面分发规则。
2. 在EntryAbility.ets文件的onWindowStageCreate方法中会插入页面分发接口的调用,示例如下:
此接口默认插入到方法开头,可根据当前工程onWindowStageCreate逻辑来将此接口移动至合适的位置,保证页面能正常跳转。
以上材料主要参考引用HarmonyOS官方文档。
