写点什么

企查查开源弹窗组件库“QuickDialog”  为鸿蒙应用开发复杂弹窗提供更优解

  • 2025-07-31
    北京
  • 本文字数:1218 字

    阅读完需:约 4 分钟

大小:578.22K时长:03:17

近日,企查查将其自研的鸿蒙弹窗组件库“QuickDialog”开源,并上线至 OpenHarmony 三方库中心仓。这是鸿蒙生态首个支持“弹窗堆栈暂存能力”的非侵入式弹窗解决方案,凭借其灵活、高效、可复用的设计理念,有望成为鸿蒙应用开发中管理复杂弹窗场景的最佳实践方案之一。

 

 

在当前鸿蒙应用开发中,弹窗能力主要依赖 @CustomDialog 或 promptAction.openCustomDialog 等方案实现。这些方式虽然基础能力齐全,但自定义弹窗的生命周期仅支持单次弹出与关闭,无法暂存弹窗堆栈状态,也无法同时满足弹窗模态、层级的互斥关系,较大程度上限制了弹窗定义的自由度。

 

企查查作为首批深耕鸿蒙平台的头部应用厂商,在自身 App 鸿蒙化过程中,历经多轮技术方案演进,最终打造出当前这套基于 Overlay 与 Node 双机制、支持弹窗状态暂存与组件复用的非侵入式弹窗方案 QuickDialog,并正式对外开源。

 

QuickDialog 以“可维护、可拓展”为设计理念,围绕复杂弹窗场景中的共性痛点,提供以下核心技术能力:

 

弹窗堆栈暂存能力:支持多个弹窗的层级管理与状态保持,用户可任意中断或恢复某一弹窗流转,大幅提升弹窗交互的灵活性;

 

无侵入式控件创建机制:采用 Node 方式动态生成弹窗内容,无需修改业务页面结构,减少耦合,便于维护;

 

Overlay 接管生命周期:通过将弹窗依附于自定义页面,自主接管生命周期管理,支持弹窗与页面双向通信;

 

装饰器与弹窗内容解耦,支持复用:支持将同一弹窗内容搭配多种装饰器结构,灵活适配不同交互场景,提升开发效率;

 

页面绑定式弹窗层级自由管理:每个弹窗基于页面结构进行绑定控制,实现清晰的显示/隐藏管理与模态规则控制。

 

在企查查鸿蒙 App 的开发实践中,QuickDialog 已全面替代传统弹窗方案,实现了弹窗体系的统一重构。在复杂用户操作流程中,用户可在不同页面中保留弹窗堆栈状态,实现从多任务中返回继续处理,大幅改善使用体验。对于开发者而言,QuickDialog 的接入完全基于组件调用与绑定机制,无需改动现有页面结构或状态流,大大降低弹窗系统的开发与维护成本,开发效率显著提升。

 

QuickDialog 现已上架 OpenHarmony 三方库中心仓,开发者可通过搜索“quickdialog”获取源码、使用指南与示例工程,快速集成到各类应用中,实现高效的弹窗管理。

 

企查查希望通过开源 QuickDialog,与开发者共同推动鸿蒙生态中弹窗基础能力的标准化与技术演进,降低高复杂交互场景的技术门槛,赋能更多应用实现体验创新。

 

未来,华为还将联合伙伴持续共建创新,面向底座技术、通用能力、垂类行业等场景推出系列开发者场景化解决方案,不断提升鸿蒙应用的创新体验和开发效率,与广大开发者共建繁荣的鸿蒙生态。

 

更多关于“QuickDialog”的详细信息和使用指南,请访问“OpenHarmony 三方库中心仓”,搜索“quickdialog”。

 

OpenHarmony 三方库中心仓- quickdialog 源代码:https://ohpm.openharmony.cn/#/cn/detail/quickdialog

场景化共建官网链接:

https://developer.huawei.com/consumer/cn/blog/topic/03185823567123093

2025-07-31 16:053838

评论

发布
暂无评论

对象存储手把手教七 | 存储空间授权策略 Bucket Policy

QingStor分布式存储

分布式系统 对象存储 分布式存储 分布式,

大数据中不同文件格式的比较

吴脑的键客

大数据 云存储

Linux学习方法《Linux一学就会》Linux系统进程管理

侠盗安全

Linux linux运维 运维工程师 云计算架构师

Java中抽象类和接口的区别

编程江湖

JAVA开发 java编程

Flink CDC 系列 - 构建 MySQL 和 Postgres 上的 Streaming ETL

Apache Flink

大数据 flink 编程 后端 实时计算

「Spark从精通到重新入门(一)」Spark 中不可不知的动态优化

尔达Erda

云计算 大数据 spark 开发者 感悟

【量化】股市技术分析利器之TA-Lib(一)

恒生LIGHT云社区

量化投资 量化

12.7直播预告|「淼懂·观测云实践学堂」全新栏目上线!带你走进观测云的精彩世界!

观测云

可观测性 直播 可观测

如果还不懂如何使用 Consumer 接口,来公司我当面给你讲!

阿Q说代码

函数式接口 签约计划第二季 consumer 实战讲解 supplier

看了这么多年西游记,你可知道孙悟空是如何召唤土地公公的吗?

阿Q说代码

Java 观察者模式 签约计划第二季 事件通知机制

Spark从入门到精通

冇先生

IoT Stack 2.0升级物模型及数据交互协议, 大幅提升物联网方案交付速度

百度大脑

人工智能 百度 物联网

秒过!度目智慧通行让常态化防疫更高效

百度大脑

人工智能 人脸识别

实战篇:Security+JWT组合拳 | 附源码

阿Q说代码

spring security JWT 签约计划第二季 权限验证

PackML从会到不会——标签(3)

陈的错题集

标准化 PackML

用户登录设计之双token设计

CRMEB

看FusionInsight Spark如何支持JDBCServer的多实例特性

华为云开发者联盟

大数据 SQL语句 FusionInsight Spark JDBCServer 多实例

后端开发实战总结 | 签约计划第二季|后端

阿Q说代码

内容合集 签约计划第二季 技术专题合集

全程干货,用 python 下载某站全部【免抠图片】,图片背景透明,格式PNG

梦想橡皮擦

12月日更

如何在 ShardingSphere 中开发自己的 DistSQL

SphereEx

Java 数据库 ShardingSphere database SphereEx

【活动报名】Apache ShardingSphere Dev Meetup 重启!

SphereEx

开源项目 开源社区 ShardingSphere Meetup SphereEx

看了同事写的代码,我竟然开始默默的模仿了。。。

阿Q说代码

策略模式 多态 签约计划第二季 自定义参数解析器 统一验签

长连接网关技术专题(六):石墨文档单机50万WebSocket长连接架构实践

JackJiang

websocket 即时通讯 IM 网关

高校企业双向赋能,首届飞桨启航菁英计划圆满结束

百度大脑

人工智能 百度 飞桨

Flink 是如何统一批流引擎的

编程江湖

大数据 flink

Android技术分享| ViewPager2离屏加载,实现抖音上下视频滑动

anyRTC开发者

android 音视频 移动开发 ViewPager 视频滑动

实战篇:断点续传?文件秒传?手撸大文件上传

阿Q说代码

断点续传 签约计划第二季 文件秒传 文件分块 文件合并

语法糖甜不甜?巧用枚举实现“状态”转换限制

阿Q说代码

枚举 签约计划第二季 语法糖 订单状态转换

还在用BeanUtils拷贝对象?MapStruct才是王者!【附源码】

阿Q说代码

Java MapStruct 签约计划第二季 深拷贝与浅拷贝

恒源云(GPUSHARE)_GPU白嫖大法来袭!

恒源云

深度学习 gpu 算力加速

『上线』OpenSEC SIGs 终于成立了!

SphereEx

开源社区 ShardingSphere SphereEx 中文开源 OpenSEC

企查查开源弹窗组件库“QuickDialog”  为鸿蒙应用开发复杂弹窗提供更优解_HarmonyOS_HarmonyOS_InfoQ精选文章