登录社区云,与社区用户共同成长
邀请您加入社区
设备形态持续演进,给跨端开发提出新命题:过去跨端框架主要解决"同一套页面如何跑在不同的操作系统上",现在还需要解决"同一个应用,如何持续适应持续变化的空间与交互方式"。Pura X Max 这类阔折叠设备,集中体现了这一类开发诉求。通用布局与交互逻辑继续沿用Flutter跨端复用能力而开源鸿蒙平台的设备差异化特性,全部沉淀至框架层•平行视界让高频的"列表 + 详情"业务实现零代码开启,仅一份 JS
Pura X Max 采用折叠形态:合上是一块外屏,展开是一块内屏,两块屏幕规格各异。对开发者来说,真正的变化在于:屏幕不再是固定尺寸,而是随形态伸缩的"弹性区间",页面需从静态布局走向动态重组。和直板机相比,折叠态的外屏更宽、更矮,展开后的内屏显示面积显著增大。折叠态系统默认不支持横竖屏旋转,展开态则跟随传感器自动旋转——应用需要针对不同的窗口尺寸与方向,做响应式的页面布局适配。
本原创文章帖发布在Pura X Max作为阔形态折叠设备,设备会在窄外屏、阔展开内屏、悬停半折姿态之间动态切换,同时还需要兼容分屏、自由窗口、键盘唤起等场景。窗口的宽度、可用高度、安全区、折痕位置都随设备姿态实时改变。传统适配方案普遍存在通过设备机型判定布局,从而导致窗口尺寸变化时页面体验割裂,同时存在适配后用户编辑状态、选中项丢失,以及挖孔、折痕容易遮挡关键交互控件等常见问题。
需求20 个动画同屏❌ 主线程卡死✅ 子线程渲染多动画加载⚠️ 排队✅ 并行加载滑回已看过的❌ 重新解析✅ 内存缓存滑出屏幕的⚠️ 继续渲染✅ 自动跳过绘制逐帧/片段播放⚠️✅ 完整控制。
uni-app x 生态组件库选型调研笔记:uvx-ui 的设计特点(UTS 强类型、原生渲染、主题与国际化)、easycom 接入体验与组件覆盖情况。
Panel 距离 2m 最舒适,1m 适合交互,0.5m 以内只适合短暂提示Panel 宽度按距离和 FOV 算,留 20% 余量保证不超出清晰视野视野清晰区中央 60°,Panel 占角不超 60° 不用转头每项内容占 0.4m×0.3m,Panel 尺寸按项数算交互 Panel 和阅读 Panel 距离分开设,不混放near/far 裁剪面默认 0.1m/10m,Panel 别贴近裁剪面会有渲
手势捏合 > 凝视(150ms 注视)> 手势悬停(500ms 长按升级)> 头动(不点选)时间窗口 200ms,连续操作时缩到 100ms凝视注视阈值 150ms,密集列表场景调到 250ms头动只控视角不产生点选焦点手势纯悬停不抢凝视焦点,需捏合或长按才算主动操作。
2D 界面排层级靠 z-index,数值大的盖小的,规则简单粗暴。到了空间界面,层级变成物理深度——一个组件在 Z 轴上离用户多远,决定了它被看见的先后、被交互命中的优先级。两套逻辑映射不好,要么该在上面的被挡住,要么该优先响应的收不到事件。我们做空间商品详情页第一版,信息卡和主商品的 depth 差设小了,转角度时信息卡时隐时现,QA 提了 14 个 bug 全是层级问题。这篇把 depth 值
进度条按阶段实际耗时占比分配段位,不要平均分高斯优化占 60%+ 耗时,是进度条设计的重点回调间隔可能超过 1 秒,加心跳动画防止"以为卡死"预估剩余时间用指数移动平均平滑,避免跳变进度回调在子线程,用 AppStorage 跨线程更新 UI必须处理失败回调,失败时进度条变红显示原因同一时刻只允许一个重建 session,重复触发要拦截进度体验跟芯片强相关,低端芯片上 UI 优化收益有限。
首发于华为开发者论坛:https://developer.huawei.com/consumer/cn/blog/topic/03226498246684304提醒、通知、日历事件这类功能,结果是系统侧异步兑现的,所以 API 的返回值说的是「请求已受理」,不是「事情已发生」。我把这两句话当成了一句话,同一个坑连踩了三次。三次都没有报错,没有异常,没有一行红色日志。能拿出来的"事故现场"就一句话:
HarmonyOS 端侧 AI 采用三层架构:MindSpore Lite(推理引擎)、CANN Kit(硬件加速)与格物推理服务(QoS调度),实现高效低耗推理。通过模型量化、剪枝等压缩技术优化大模型部署,结合意图框架、Skill 框架与端侧 A2A 协同机制,支持从端侧推理到动态 UI 的完整 AI 能力链路。开发者可基于配置文件或装饰器注册意图,利用智能体卡片与脚本引擎实现状态持久化与动态交
本文系统阐述了HarmonyOS应用安全开发的核心能力:基于HUKS实现密钥全生命周期管理,支持加密、签名等操作;通过HTTPS证书链校验与双向认证保障网络传输安全;遵循权限最小化原则,规范动态申请流程;结合隐私标签与政策配置满足合规要求;并利用ArkGuard进行代码混淆防护。最终构建覆盖数据加密、安全传输、权限管控与代码保护的完整安全体系,有效防范上架审核风险与安全漏洞。
HarmonyOS 7实现从“App亲和”到“Agent亲和”的架构跃迁,以小艺为系统智能体入口,依托HMAF 2.0与ArkAF框架,支持意图、Skill及端侧A2A三种能力开放机制。开发者可通过配置文件或装饰器快速注册标准/自定义意图,使用SKILL.md与ArkTS封装复杂任务为可调度技能,结合AgentCard与动态脚本引擎实现轻量级交互与状态持久化。应用可按四阶段演进:原子化→Skill
本文系统阐述HarmonyOS应用商业化与用户增长闭环策略,涵盖付费应用、IAP、订阅制、广告变现四大模式选型与IAP Kit、广告服务集成实践。依托AppGallery Connect数据服务,实现用户分群、A/B测试、漏斗分析等精细化运营;通过应用归因服务精准追踪渠道效果,结合Push推送的标签人群圈选、文案AB与智能时机,高效完成沉默唤醒与促激活。配合预约发布、精选提名、搜索优化等分发策略,
HarmonyOS 7星盾安全架构实现从“权限管控”到“意图执行”的范式跃迁,通过数据最小化、意图分级仲裁与行为沙箱监控构建意图级防护。结合应用沙箱、签名校验与强制访问控制,保障端侧AI模型的合规部署。依托ModelGuard API实现模型加密、签名与安全解密,配合HUKS密钥管理强化模型安全。A2A跨应用通信采用白名单鉴权、技能风险分级与会话隔离,确保智能体协作安全。通过pac.json5隐私
本文系统梳理了HarmonyOS应用上架全流程核心能力:涵盖审核规范(规避信息不符、名称雷同等高频驳回问题)、云测试与自检工具(AGC云测试、DevEco Testing)提升质量、AppGallery增长引擎与Push服务驱动用户增长、HAR/HSP/HAP组件化架构优化工程结构,并通过AGC Publishing API实现CI/CD自动化上架,最终构建从代码提交到运营增长的完整工程化闭环。
本课系统讲解HarmonyOS 7.0空间计算技术栈,涵盖ArkGraphics 3D的ECS架构、场景管理与自定义着色器,Spatial Recon Kit的3DGS渲染与端侧重建,结合空间音频与沉浸光感组件,实现从2D到3D的沉浸式体验。通过构建3D商品展示应用,掌握全链路开发实践,助力开发者打造高沉浸感的3D交互应用。
本文系统阐述HarmonyOS分布式技术架构,涵盖分布式软总线、设备管理与数据同步核心组件。通过distributedDeviceManager实现设备发现、认证与状态监听,支持跨设备选择;利用distributedDataObject完成多设备实时数据同步,保障状态一致性;结合分布式键值数据库与应用接续机制,实现任务迁移与一次开发多端部署。重点解析了设备流转、冲突处理及响应式布局设计,为开发者提
HarmonyOS端侧AI技术栈涵盖MindSpore Lite、CANN Kit等五大核心组件,构建了从硬件加速到应用层的完整体系。通过系统内置控件、MindSpore Lite推理与端侧大模型部署三类路径,开发者可依据场景灵活选型。重点掌握模型转换、上下文管理与性能优化策略,结合量化剪枝等压缩技术,实现低延迟、高安全、低成本的智能应用部署。
本文系统阐述了中大型 HarmonyOS 应用的工程化实践,涵盖模块拆分(按业务域、功能层、团队边界)、依赖治理(版本统一、依赖分析)、构建优化(增量编译、HSP 共享)、团队协作规范(分层、命名、提交、Code Review)及多环境配置管理。通过组合使用三种拆分维度与 ohpm 工具链,实现可维护、可扩展、可协作的工程架构,显著提升开发效率与代码质量。
本文系统阐述了HarmonyOS应用性能与稳定性治理的八大核心能力:通过Frame模板、ArkUI模板及Inspector精准定位卡顿丢帧根因;利用JSLeakWatcher检测并分析内存泄漏,修复定时器等常见泄漏场景;结合AppFreeze日志三步法(故障类型判断、队列积压排查、主线程阻塞分析)应对冻屏问题;构建try-catch、Promise.catch与全局异常监听的三层防御体系;借助Hi
本文系统阐述了HarmonyOS NDK在应用开发中的定位与核心能力,涵盖其架构组成、Node-API跨语言交互机制及C++侧UI组件创建。重点介绍了通过ArkUI_NativeNodeAPI_1实现动态组件树构建、复杂数据类型传递、线程安全通信与多线程性能优化,并结合实例演示了模块注册、调用流程及自定义渲染管线的实现方法,强调在必要场景下合理选用NDK方案并遵循内存与线程安全规范。
本文系统介绍了HarmonyOS应用性能治理全链路方案:基于DevEco Profiler的场景化分析模板(如Launch、Frame、Time等)实现精准问题定位;通过深度录制与跨语言调用栈分析优化关键路径;结合Test Kit与DevEco Testing构建白盒自动化测试与性能基线;利用HiAppEvent+AGC APMS实现线上启动耗时、崩溃率等指标监控;针对折叠屏等多设备形态,采用响应
本文系统讲解了HarmonyOS应用的国际化、无障碍与多设备适配核心能力。通过资源限定词机制实现多语言、深色模式管理,使用$r()引用资源并规范命名;掌握复数、日期/数字/货币的区域化格式化;实现运行时语言切换与偏好持久化。在无障碍方面,合理配置accessibilityText、accessibilityGroup、accessibilityDescription及accessibilityLe
本文系统讲解了HarmonyOS应用从签名配置到上架发布的全流程:明确调试与发布签名的区别,掌握AppGallery Connect中应用创建、隐私合规配置及发布证书申请;在DevEco Studio完成正式打包与签名;重点强调隐私政策一致性、权限最小化及敏感权限申请时机;梳理审核常见驳回原因并提供整改方案;介绍OTA全量、增量更新与热修复三种更新方式。通过典型习题强化核心知识点,助力开发者独立完
本文系统讲解 HarmonyOS 中 HAP、HAR、HSP 三种包类型的核心区别与适用场景,重点掌握 HAR 静态共享包的创建与引用,以及 HSP 动态共享包在资源复用与按需加载中的优势。结合分层架构设计思想,明确产品定制层、基础特性层与公共能力层的职责划分,落地 MVVM 模式于 ArkUI,遵循高内聚低耦合原则进行模块化拆分,避免“为拆分而拆分”的反模式,最终实现中型应用的合理架构设计。
本文系统讲解HarmonyOS中两种路由方案:Router(页面级路由)与Navigation(组件级路由)。重点对比了pushUrl与replaceUrl的跳转差异,介绍了命名路由、页面返回拦截、参数传递及返回值处理机制。深入解析Navigation组件架构,包括NavPathStack栈管理、NavDestination页面容器与导航栏联动能力。结合实际案例,阐述了组件级与页面级路由的本质区别
本文介绍了HarmonyOS应用开发的入门流程,涵盖Deveco Studio的下载安装、SDK与JDK配置,以及首个ArkTS工程的创建与运行。重点讲解了声明式UI的核心思想:描述结果、状态驱动视图更新,并掌握@Entry、@Component、@State等装饰器作用。通过Text、Button、Column、Row等组件及链式调用实现Hello World页面,结合习题巩固知识,为后续开发奠
API定位用途FrameNode声明式组件的底层节点在声明式外获取、操作组件节点,实现动态增删RenderNode渲染节点自定义绘制,绕过组件直接操作渲染属性构建节点把 Builder 内容挂到任意位置,动态插入 UIRenderNode@Entry@Component// 渲染命令:绘制一个圆形});build() {// RenderNode 挂载到组件上显示Stack() {}RenderN
最基础的封装用@Componentbuild()// 定义一个可复用的"评分条"组件@Component// 评分,0-5build() {Row() {// 小于等于 score 的星是实心的'★' : '☆')// 使用@Entry@Componentbuild() {RatingBar({ score: 4 }) // 4 星RatingBar({ score: 5, maxScore: 1
手势会拦截组件默认行为。给组件加了gesture可能影响其默认手势(如列表的滚动)。需要时用让手势优先,或用并行。拖动注意坐标累积。PanGesture的是单次增量,要累加到@State上。直接赋值会跳动不跟手。组合手势用对模式。并行、顺序、互斥三种模式语义完全不同,用错模式手势会互相冲突,出现"怎么都不触发"或"同时触发"的奇怪现象。触摸和手势别叠加混用。同一组件既用onTouch又用gestu
属性动画管的是"值怎么变",转场动画管的是"组件怎么出现、怎么消失"。元素插入界面、删除界面、页面之间切换,都需要转场来避免生硬的瞬间跳变。ArkUI 的转场分两类:组件转场(组件出现和消失)和页面转场(页面之间切换)。
静态界面能用,但缺了动画的过渡会显得生硬。ArkUI 提供了从简单到复杂的动画能力:属性动画、显式动画、路径动画,以及组件内置动画。这篇把常用动画类型讲清楚。
区分数据生命周期再选型。页面内临时数据用@State,组件树内共享用@Provide@Consume,全局共享用AppStorage,要持久化再加。别所有数据都往 AppStorage 里塞。的 key 要统一管理。持久化 key 散落各处容易冲突,建议集中定义常量。同步引用时注意 type。的类型要和声明一致,类型对不上会有隐式转换问题。持久化数据只存可序列化的。存的是可序列化数据,函数、回调、
资讯流、商品列表、聊天记录、通讯录,几乎每个应用都有列表。ArkUI 里列表用ListListItem构建,网格用GridGridItem,但真正决定性能的是懒加载机制。
ArkUI 的系统组件就是界面里的"零件"——文本框、图片、按钮、输入框、单选框、进度条这些。把它们组合起来,就拼出一个完整页面。这系列先讲最常用的几类:文本、图片、按钮、输入框,以及承载它们的通用属性。