企查查開源彈窗組件庫“QuickDialog” 為鴻蒙應用開發復雜彈窗提供更優解
近日,企查查將其自研的鴻蒙彈窗組件庫“QuickDialog”開源,并上線至?OpenHarmony 三方庫中心倉。這是鴻蒙生態首個支持“彈窗堆棧暫存能力”的非侵入式彈窗解決方案,憑借其靈活、高效、可復用的設計理念,有望成為鴻蒙應用開發中管理復雜彈窗場景的最佳實踐方案之一。
在當前鴻蒙應用開發中,彈窗能力主要依賴 @CustomDialog 或 promptAction.openCustomDialog 等方案實現。這些方式雖然基礎能力齊全,但自定義彈窗的生命周期僅支持單次彈出與關閉,無法暫存彈窗堆棧狀態,也無法同時滿足彈窗模態、層級的互斥關系,較大程度上限制了彈窗定義的自由度。
企查查作為首批深耕鴻蒙平臺的頭部應用廠商,在自身App鴻蒙化過程中,歷經多輪技術方案演進,最終打造出當前這套基于Overlay與Node雙機制、支持彈窗狀態暫存與組件復用的非侵入式彈窗方案QuickDialog,并正式對外開源。
QuickDialog以“可維護、可拓展”為設計理念,圍繞復雜彈窗場景中的共性痛點,提供以下核心技術能力:
彈窗堆棧暫存能力:支持多個彈窗的層級管理與狀態保持,用戶可任意中斷或恢復某一彈窗流轉,大幅提升彈窗交互的靈活性;
無侵入式控件創建機制:采用Node方式動態生成彈窗內容,無需修改業務頁面結構,減少耦合,便于維護;
Overlay 接管生命周期:通過將彈窗依附于自定義頁面,自主接管生命周期管理,支持彈窗與頁面雙向通信;
裝飾器與彈窗內容解耦,支持復用:支持將同一彈窗內容搭配多種裝飾器結構,靈活適配不同交互場景,提升開發效率;
頁面綁定式彈窗層級自由管理:每個彈窗基于頁面結構進行綁定控制,實現清晰的顯示/隱藏管理與模態規則控制。
在企查查鴻蒙App的開發實踐中,QuickDialog已全面替代傳統彈窗方案,實現了彈窗體系的統一重構。在復雜用戶操作流程中,用戶可在不同頁面中保留彈窗堆棧狀態,實現從多任務中返回繼續處理,大幅改善使用體驗。對于開發者而言,QuickDialog 的接入完全基于組件調用與綁定機制,無需改動現有頁面結構或狀態流,大大降低彈窗系統的開發與維護成本,開發效率顯著提升。
QuickDialog現已上架OpenHarmony三方庫中心倉,開發者可通過搜索“quickdialog”獲取源碼、使用指南與示例工程,快速集成到各類應用中,實現高效的彈窗管理。
企查查希望通過開源 QuickDialog,與開發者共同推動鴻蒙生態中彈窗基礎能力的標準化與技術演進,降低高復雜交互場景的技術門檻,賦能更多應用實現體驗創新。
未來,華為還將聯合伙伴持續共建創新,面向底座技術、通用能力、垂類行業等場景推出系列開發者場景化解決方案,不斷提升鴻蒙應用的創新體驗和開發效率,與廣大開發者共建繁榮的鴻蒙生態。
更多關于“QuickDialog”的詳細信息和使用指南,請訪問“OpenHarmony 三方庫中心倉”,搜索“quickdialog”。