把一款 AI agent 应用搬上鸿蒙,通常只有两条老路:要么用 ArkUI 把界面重写一遍,从此背上一个永久 fork;要么把整个 Electron 塞进 HAP 里,为 JIT 去申请一个受限权限。
在存储硬件快速涨价的行业背景下,用户对应用存储空间占用大小是否合理变得更加关注,应用过于臃肿、侵占存储空间的舆情也随之增多,用户倾向于保留存储空间使用更高效、管理更透明的应用。换言之,对于开发者,提升应用的设备存储空间使用效率迫在眉睫,也是提升用户体验和留存的重要手段。
01 篇做接入底座时,我们给 LlmClient 配了 RetryPolicy:超时或 5xx 就重试一次,退避再试。这在「网络偶尔抖一下」的场景够用。但真机上你会遇到三种性质完全不同的失败:偶尔抖动(重试就好)、下游持续不可用(重试只会雪上加霜)、以及彻底连不上(必须给用户一个交代)。把它们混在一套「无条件重试」里,轻则白烧...
做 Agent 应用最怕的不是「写不出第一版」,而是「改了第三版之后,发现第一版明明答对的题现在答错了」。大模型有随机性、提示词有耦合、工具调用有边界,靠人肉聊天抽查既覆盖不全又无法回放。这一篇我们给 Agent 配上一套离线评测集:用一份写死的黄金用例,把「模型这次答得对不对」变成可以重复跑、可以量化、可以...
所以「把一款 Electron 应用搬到鸿蒙」,标准答案基本只有一个:用 ArkUI 把界面重写一遍。壳是新写的,逻辑重新接一遍,界面照着截图复刻——用户看着差不多,代价是维护者从此背上一个永久的 fork。
在「HarmonyOS 7 Agent 开发实战」系列里,第 01 篇我们已经搭好了 llmclient,让模型能够稳定地"吐文字";第 03 篇讲了 Tool Calling,让模型能"发起工具调用"。本篇(第 08 篇)聚焦一个看似微小、却贯穿所有落地的环节:当模型吐出的不是散文,而是一段 JSON 时,你怎么把它变成可信、可校验、可落库的字段? 这就是"...
前几篇我们一直在打磨"单个 Agent":01 篇搭好统一的 LLM 底座与重试策略,02 篇补上对话记忆,03 篇让模型学会调工具,04 篇用检索增强让它有据可答。但真实任务往往一句话里塞了三件事——"调研竞品,输出对比报告,给出落地建议"。让一个 Agent 一口气全做完,中间步骤会被压缩,错了也不知道错在哪。这一篇把镜头拉远...
书籍是人类进步的阶梯,在手机上阅读电子书,既可以学习又可以娱乐。早在2022年出版的《Android Studio开发实战:从零基础到App上线(第3版)》中,笔者就基于Android实现了一个具备翻页浏览功能的电子书APP,不仅支持常见的PDF格式,还支持开放标准EPUB格式,还支持古籍数字化的DJVU格式,可谓小巧的电子书架。
上一篇 02 把「对话怎么存、系统提示怎么常驻、上下文怎么裁剪」收敛成了 ConversationStore。但当 Agent 需要陪你聊二三十轮甚至跨会话时,仅仅「丢最旧」会直接把关键信息(用户偏好、待办、身份)一起丢掉。06 这一篇在 02 的基础上再叠一层:把超窗的旧对话摘要进长期记忆,后续按关键词把它召回、重新注入模型上下...
前两篇已搭好底座:01 抽象了 LlmClient,02 用 Agent + ConversationStore + ChatUIMessage 做出对话页。本篇在其上叠加一层流式解析与打字机 UI,让答案逐字增量渲染。
前三篇把云端大模型接进了 HarmonyOS 7(API 26),搭好了对话脚手架,也让模型学会了用 Tool Calling 查订单查库存。但企业落地还有一大块硬需求没解决:员工问"年假怎么申请""报销单十五日内交还是十日内",模型要么答不上,要么凭训练语料编一个"像那么回事"的答案——制度是你们公司定的,模型根本没见过,它答得越流...
前两篇把云端大模型接进了 HarmonyOS 7(API 26),也搭好了 Agent 脚手架和对话 UI。但只要把这套东西拿去做点真实业务,问题立刻暴露:用户问"我的订单到哪了",模型张口就是一句"您的订单正在派送中,请耐心等待"——听着像模像样,其实一个字的真数据都没有。模型根本不知道订单状态,它只是在按语言概率编一个"像答案...
这篇不是卖惨。是想把「安全评估」这道最容易被低估的墙讲清楚——它到底查什么、个人开发者死在哪一格、以及我最终为什么放弃。如果你也打算以个人身份上架一个 AI 应用,希望这篇能让你在动手前,先把最致命的那个岔路口看清楚。
上篇把云端大模型接进了 HarmonyOS 7(API 26),底座能稳定返回一段文本。但真实业务里的 Agent 是多轮、有记忆、有界面的:用户问一句,Agent 结合上下文答一句;历史越长,上下文管理越要精细。不少团队的第一步,是把消息数组、系统提示词、网络调用全混进 Index.ets——改一处崩三处,第二个人接手根本不敢动。
做 Agent 开发,第一步不是急着写提示词,而是先把"大模型接入底座"打牢。很多团队在 HarmonyOS 7 上接云端大模型时,都会在同一批坑里反复栽跟头:鉴权头写错导致 401、没设超时界面直接卡死、遇到 429 限流不重试直接失败、各家响应格式不统一解析散落一地。底座不稳,上层 Agent 再加花哨也随时崩。
本文基于 HarmonyOS 7(API 26)官方《星盾机密风控引擎》开发指导、RiskControlEngine API 参考与官方最佳实践整理。文中代码改写自官方示例并加了V哥自己的注释,接口名均为官方文档核验过的真实名称;选题原标"⚠️ 待核实(安全类能力可能仅对特定类目开放)",V哥动笔前专门做了核验,结论见正文第一节——能力公开,但...
本文基于 HarmonyOS 7(API 26)官方"新能力一览"与 Audio Kit 音频编创(OHAudioSuite)开发指导整理。文中 ArkTS 代码是为说明问题自写的示意实现——官方开放的是 C/C++ 接口(native_audio_suite_engine.h),实际编码请以官方 SDK 与接口参考为准;API 名称、起始版本等事实性信息均标注官方出处;音质、功耗等真机表...
本文主线落在 HarmonyOS 6.1.0(23) 的调用策略扩展,并顺带讲清算 6.0.0(20) 新增的视频选择器。文中的 API 名称、枚举取值与版本号来自华为官方文档;结构、代码示例、调用方向矩阵与自检清单为本人整理编写,未在真机逐行验证,涉及真机表现的部分以真机实测为准。
在金融转账、企业网银、电子签章等高可信场景中,传统物理U盾一直是核心安全屏障,但长期存在诸多痛点:硬件成本高、随身携带易遗失损坏;网页端使用需适配各类浏览器插件,兼容性差、运维成本高。
项目快结束了才发现竟然这个阉割版的OpenHarmory5.0没有中文输入法,板子自带了KikaInput,去官方论坛找了一圈,发现也就提供了这唯一的输入法,没有中文,继续寻找,幸亏在这里找到了这个applications_inputmethod: 基于KikaInput移植Pinyin IME实现简易中文输入 ,但是发行版的hap仍然无法正常运行在这块板子的系统上...