写点什么

RN/H5 多设备自适应组件库来了,高效实现鸿蒙原生应用多设备精致体验

  • 2025-03-12
    北京
  • 本文字数:1130 字

    阅读完需:约 4 分钟

RN/H5多设备自适应组件库来了,高效实现鸿蒙原生应用多设备精致体验

在原生鸿蒙应用开发中,华为针对 ArkUI 框架推出了一整套针对多设备适配的完善能力(如“一多”能力)以及高阶组件(如分栏、边看边评等),帮助开发者轻松实现“一次开发,多端部署”。然而,当前鸿蒙生态仍存在大量用跨平台框架开发的应用,部分页面采用 React Native(RN)和 H5 等框架开发,这些框架在系统级的多设备适配能力上相对有限,导致在折叠机、平板等设备上的适配效率不如 ArkUI 框架高效,从而影响了应用在不同设备上的体验一致性。

 

为了解决这一问题,华为 2D 场景化解决方案团队面向 RN/H5 多设备适配场景,推出了一系列自适应组件库、sample 等开发者场景化解决方案。该方案在 RN、H5 等框架上提供了接近原生多设备适配的断点机制和高阶 UI 组件库,帮助 RN、H5 应用的开发者更高效地进行多设备适配,为折叠屏、平板等多种设备的消费者带来精心打磨的精致体验。

 

针对基于 H5 框架的开发者,华为提供了包括断点能力封装和 H5 多设备组件在内的多设备适配方案。其中断点能力封装可根据屏幕尺寸将屏幕类型分为 xs、sm、md、lg、xl、xxl 六种,开发者可以通过预置的断点 hook,根据不同屏幕类型调整页面内容。H5 多设备组件则包括类挪移布局组件、页签栏组件、网格自适应布局组件等。这些组件采用 Web Component 技术开发,能够快速适配到 Vue2、Vue3、React 等多种 Web 框架,帮助开发者高效实现多设备布局适配。


 

针对 RN 框架的开发者,华为不仅提供了断点能力封装,还带来了针对折叠屏的自适应高阶组件以及获取折叠屏折痕区域、折叠状态、设备是否可折叠等 API 接口,使开发者能够高效应对各种设备的布局适配需求。

 

 

RN/H5 多设备/自适应组件库的推出,对鸿蒙原生应用开发意义重大。首先,它解决了鸿蒙原生应用在混合开发页面上多设备体验割裂的问题。有了这些组件库,无论是原生页面还是基于 RN 和 H5 等用跨平台框架的混合开发页面,开发者都可以通过它高效实现一致的多设备响应式体验,从而开发出更精致的、适配多设备的鸿蒙原生应用。

 

其次,通过预置的断点机制和自适应组件,开发者无需从头编写复杂的多设备适配代码,大大减少了开发成本和学习成本,尤其是在适配折叠屏、平板等多种设备时,开发者可以更加高效地完成布局调整。

 

目前这两款组件库都已开源到开源鸿蒙社区(OpenHarmony 社区)并上线 Gitee 平台,欢迎广大开发者到 Gitee 平台或开源鸿蒙社区直接搜索 rn_multidevice_layout_scenepkg(RN 多设备组件库)和 web_adaptive_ui(H5 多设备组件库)下载使用。未来华为将持续不断优化和扩展组件库的能力,欢迎广大开发者参与共建并提出需求和建议,共同推动鸿蒙生态的繁荣发展!

 

组件库链接:

RN 多设备适配:https://gitee.com/openharmony-sig/rn_multidevice_layout_scenepkg

H5 多设备适配:https://gitee.com/openharmony-sig/web_adaptive_ui

2025-03-12 14:261976

评论

发布
暂无评论

【开发利器Hutool】推荐一个超好用的本地缓存

JAVA旭阳

Java hutool 10月月更

@程序猿:旺链科技惊喜已到,请速速查收~

旺链科技

区块链 产业区块链 1024程序员节 企业号十月PK榜

Node.js实现大文件断点续传

coder2028

node.js

JS知识点梳理之作用域、作用域链、柯里化、闭包

hellocoder2029

JavaScript

几个常见的js手写题,你能写出来几道

helloworld1024fd

JavaScript

React生命周期深度完全解读

夏天的味道123

React

2022-webpack5实战教程

Geek_02d948

webpack

JUC中的AQS底层详细超详解

华为云开发者联盟

Java 开发 华为云 企业号十月 PK 榜

实现Promise的原型方法--前端面试能力提升

helloworld1024fd

JavaScript

Nodejs+Redis实现简易消息队列

coder2028

node.js

资源不准下的网络故障定位探索

鲸品堂

故障定位 企业号十月PK榜

Go Web 实战:如何创建项目及增加日志功能

宇宙之一粟

日志 Go web Go 语言 10月月更

一步一图带你深入理解 Linux 虚拟内存管理

bin的技术小屋

内存管理 Linux Kenel 虚拟内存

软件测试 | 测试开发 | 如何确保API的稳定性与正确性?你只需要这一招

测吧(北京)科技有限公司

测试

【1024】程序员节丨致敬所有技术布道师

MobTech袤博科技

1024程序员节 MobTech袤博科技

调度线程池ScheduledThreadPoolExecutor的正确使用姿势

JAVA旭阳

Java 线程池 10月月更

阿里云移动测试-远程真机篇

移动研发平台EMAS

性能测试 app测试 移动测试 远程真机

2022 XDR网络安全运营新理念峰会完整嘉宾阵容公布!

未来智安XDR SEC

网络安全

项目汇报复盘

Geek_XOXO

复盘 项目复盘

Vue3必会技巧-自定义Hooks

yyds2026

Vue

JS词法环境和执行上下文

hellocoder2029

JavaScript

React的5种高级模式

夏天的味道123

React

React性能优化的8种方式

xiaofeng

React

Vue3知识点之数据侦测

yyds2026

Vue

RocketMQ Flink Catalog 设计与实践

阿里云大数据AI技术

sql 大数据 flink 分布式计算 企业号十月PK榜

前端高频手写面试题

helloworld1024fd

JavaScript

融云直播SDK开路,给电商大促加点“魔法”

融云 RongCloud

直播 社交娱乐

“程”风破浪的开发者|元宇宙给我们带来了哪些机会

石云升

区块链 元宇宙 10月月更 “程”风破浪的开发者

怎么购买公有云?具体流程是怎样?

行云管家

云计算 公有云 企业上云 云管理

React核心工作原理

xiaofeng

React

Webpack中的plugin插件机制

Geek_02d948

webpack

RN/H5多设备自适应组件库来了,高效实现鸿蒙原生应用多设备精致体验_HarmonyOS_HarmonyOS_InfoQ精选文章