# TdTech_KitDemo **Repository Path**: licw007/TdTech_KitDemo ## Basic Information - **Project Name**: TdTech_KitDemo - **Description**: 本示例用于展示鼎桥鸿蒙单框架上相关kit能力,主要包括如下: AI场景:卡证识别,AI车牌识别,人像比对,图文提取,语音识别几个板块。 端云场景:PUSH,离线地图,日历开放能力 其他能力:服务卡片,NFC识别及二维码扫描。 通过本demo,可以帮助生态厂家接入相关能力更为方便快捷。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2025-07-29 - **Last Updated**: 2025-07-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # TdTech KitDemo #### 介绍 本示例用于展示鼎桥鸿蒙单框架上相关kit能力,主要包括如下: AI场景:卡证识别,AI车牌识别,人像比对,图文提取,语音识别几个板块。 端云场景:跨域消息,PUSH,离线地图,日历开放能力 其他能力:服务卡片,NFC识别及二维码扫描。 通过本demo,可以帮助生态厂家接入相关能力更为方便快捷。 #### 软件架构 软件架构说明 采用common,feature, product三层架构,单entry,多hap的架构设计,通过navigation进行界面跳转,展现多种设计能力。 #### 相关概念 三层架构模式,实现一次开发,多端部署: common(公共能力层):用于存放公共基础能力集合(如工具库、公共配置等)。 common层可编译成一个或多个HAR包或HSP包(HAR中的代码和资源跟随使用方编译,如果有多个使用方,它们的编译产物中会存在多份相同拷贝;而HSP中的代码和资源可以独立编译,运行时在一个进程中代码也只会存在一份),其只可以被products和features依赖,不可以反向依赖。 features(基础特性层):用于存放基础特性集合(如应用中相对独立的各个功能的UI及业务逻辑实现等)。 各个feature高内聚、低耦合、可定制,供产品灵活部署。不需要单独部署的feature通常编译为HAR包或HSP包,供products或其它feature使用,但是不能反向依赖products层。需要单独部署的feature通常编译为Feature类型的HAP包,和products下Entry类型的HAP包进行组合部署。features层可以横向调用及依赖common层。 products(产品定制层):用于针对不同设备形态进行功能和特性集成。 products层各个子目录各自编译为一个Entry类型的HAP包,作为应用主入口。products层不可以横向调用。 多HAP:一个应用工程中存在一个entry HAP和多个feature HAP的多包组合方式 效果预览: | 主页 | 主页 | |----------------------------------|------------------------------------| | ![](screenshot/device%E4%B8%BB%E7%95%8C%E9%9D%A2.png) | ![](screenshot/otherability.png) | #### 编译说明 需要使用ohos full sdk及td sdk才可以编译,td sdk及开发文档请联系鼎桥相关技术支持获取。 fullsdk获取:https://ci.openharmony.cn/workbench/cicd/dailybuild/detail/component 项目为“openharmony”,分支为“master”,时间可以调为最新一个月,流水线名称为“ohos-sdk-full”。 更换“full-sdk”,可以参考:https://docs.openharmony.cn/pages/v5.0/zh-cn/application-dev/faqs/full-sdk-switch-guide.md 本地运行时,修改对应的bundleName,并替换与bundleName相匹配的的签名文件后编译。 1. 第一步:点击Build->Build Hap(s)/APP(s)->Build Hap(s),构建模块的hap包。 2. 第二步:使用IDE安装多Hap包。 | 1、点击 entry -> Edit Configurations 打开编辑页 | 2、选择 Deploy Multi Hap 勾选 Deploy Multi Hap Packages 后勾选 AIDemo,点击 Apply 后运行项目 | |-----------------------------------------|---------------------------------------------------------------------------------------------------| | ![](screenshot/deviceedit.png) | ![输入图片说明](screenshot/devicedeploymulti%20hap.png) | 3. 第三步:安装后进入主页,点击各个功能选项进行相关功能体验 #### 使用说明 1. 卡证识别:点击卡证识别,拉起相机,相机对准卡证界面,可自动识别身份证,驾驶证,行驶证,银行卡类型的证件 2. AI车牌:可通过图库选择车牌图片或通过相机拍取车牌照片进行车牌识别 3. 人像比对:通过图库选择两张照片或通过相机拍照,对图片中的人脸进行识别并比对,返回图片人像相似度,是否同一个人 4. 图文提取:可通过拍照或图库选择带图文的图片,对图片中的文字进行提取 5. 语音识别:可通过录制您的语音,将您的语音以文字方式返回 6. 跨域消息:工作区消息跨域透传到生活区前台,及时提醒用户后台系统有消息 7. PUSH消息: 7.1 后台消息,通过申请token接口获取push token,通过该token与服务器对接,可通过网络发送后台消息 7.2 实况窗:实况窗展示能力,通过开始导航按钮,开启实况窗能力 7.3 VOIP:模拟VOIP消息能力 8. 离线地图:通过leaflet插件加载mbtiles格式的离线地图能力,具备撒点,清除撒点,定位,及经纬度定位等能力 9. 日历开放能力:展示用户或应用接入日历提醒的关键能力 10. 服务卡片:通过桌面长按图标,加载应用服务卡片,可通过日历能力新建日程,该日程会在卡片中刷新 11. NFC:通过NFC模拟一键登录 12. 二维码:通过扫描二维码进行快速登录 其中AI车牌,PUSH能力需要借助TdTech提供相关SDK后接入,该功能只能运行在鼎桥警鸿OS相关纯血鸿蒙系统中。 #### 工程目录 ``` ├─AppScope │ └─resources │ └─base │ ├─element │ └─media ├─common │ ├─libs │ └─src │ ├─main │ │ ├─ets │ └─framework │ ├─utils 工具类 │ └─voip VOIP工具类 ├─features │ ├─AIDemo │ │ └─src │ │ └─main │ │ └─ets │ │ ├─aidemoability feature类型的卡证识别样例 │ │ ├─application │ │ └─pages │ ├─AIDetector AI检测类相关API封装 │ └─NfcController NFC能力API封装 └─product └─phone └─src └─main ├─ets │ ├─AbilityStage │ ├─components │ │ └─VOIP │ ├─entryability 主界面UIAbility │ ├─entrybackupability │ ├─entryformability 服务卡片接入Ability │ ├─pages │ │ ├─AI AI能力界面 │ │ ├─calendar 日历能力界面 │ │ ├─CrossVpMessage 跨域消息界面 │ │ ├─MAP 离线地图界面 │ │ ├─NFC NFC能力界面 │ │ ├─PUSH PUSH能力界面 │ │ ├─ServiceCard 服务卡片能力界面 │ │ └─VOIP VOIP能力界面 │ ├─schedulewidget 卡片业务调度界面 │ │ └─pages │ └─views └─resources └─rawfile ├─assets 离线瓦片地图 │ └─icon └─leaflet leaflet插件 ``` ### 约束与限制 1.本示例仅支持标准系统上运行,支持设备:鼎桥安全系统定制设备, 2.编译依赖:需要使用full sdk及鼎桥SDK包。 3.HarmonyOS系统:HarmonyOS 5.0.0 Release及以上。 4.DevEco Studio版本:DevEco Studio 5.0.0 Release及以上。 5.HarmonyOS SDK版本:HarmonyOS 5.0.0 Release SDK及以上。