登录社区云,与社区用户共同成长
邀请您加入社区
项目地址:选择了如下6个跨平台UI框架。
后来反而觉得这个"限制"是优点——它从容器层面杜绝了"H5 诱导运行时扩充导出列表"的可能,白名单天然只能冷启动确定。
在 Windows 上开发 React Native iOS App 的全流程:用 KXBuild 的模板或社区 CLI 新建项目、体检、在 ios 目录 pod install,接上 iPhone 按 F5,Metro 加载 JS、保存即 Fast Refresh 热更,Swift/OC 原生代码也能断点,已有的 xcodebuild 脚本原样兼容,最后用 Release 配置打出可上架 ipa
RNOH 版本升级、跨版本迁移与历史缺陷回溯的排查方法论与定位指南 在 RNOH 开发中,"升级到新版本后行为变化""同一代码在不同 RNOH 版本表现不一""历史崩溃在低版本偶现"是最容易误判的问题类型之一。本文档给出从现象到根因、从分类到处置的系统化定位方法。 一、问题概述 1.1 什么是"历史版本问题" RNO
RNOH 应用启动白屏/黑屏、组件渲染异常、运行期冻屏的排查方法论与定位指南 在 RNOH 开发中,"应用一片白/黑""组件不显示或显示错""滑动一会就卡死"是最常见、也最易误判的问题类型之一。本文档给出从现象到根因、从分类到处置的系统化定位方法。 一、问题概述 1.1 什么是"黑屏、白屏、渲染异常" RNOH 的渲
参考 flutter多设备适配指南 的 DFX 结构,并结合 rn-multidevice-adaptation 中的 RNOH/RN 多设备适配知识整理。 1. 概述 RN 多设备适配涉及窗口尺寸监听、断点系统、响应式布局、折叠屏状态、折痕/避让区、键盘、沉浸式、自然方向、外设输入、相机与传感器等链路。问题通常表现为布局不刷新、内容截断、折叠态误判、避让失效、方向残留、鼠标键盘交互缺失、硬件能
鸿蒙 DFX 资源泄漏(Resource Leak)检测能力用于监控 React Native for OpenHarmony(RNOH)框架及其接入应用运行期的资源未释放问题。资源泄漏分为句柄泄漏(FD_LEAK)、线程泄漏(THREAD_LEAK)、Native 对象泄漏和 JS 资源泄漏四类。本文聚焦 RNOH 场景下高频的句柄泄漏、线程泄漏与 Native 对象泄漏,JS 堆内存泄漏详见《
鸿蒙 DFX 踩内存(Memory Stomp / Misuse)检测能力用于监控 React Native for OpenHarmony(RNOH)框架及其接入应用运行期的内存误用问题。当发生堆/栈越界读写、释放后使用(UaF)、作用域后使用、重复释放时,可通过 ASAN(AddressSanitizer)/ HWASAN(HWAddressSanitizer) 两类编译期插桩检测器捕获故障,
本文面向 RNOH 应用开发者,用于在深入分析代码前先回答一个问题:页面卡顿丢帧、响应时延或完成时延异常,是否由 RNOH 框架引起。 定界只确定责任域和后续排查方向,不替代根因定位。完成定界后,请继续阅读: 页面滑动卡顿丢帧问题定位响应时延与完成时延性能分析 1. 定界结论应回答什么 一次有效定界至少给出以下结论之一: 责任域典型证据后续处理方HarmonyOS 系统或 Render Servi
本文档针对页面转场和页面滑动两大高频卡顿场景,提供详细的优化指南。 场景一:页面转场过程中的卡顿 1. 卡顿的案例描述 场景:在复杂业务场景中(如从商品列表跳转至详情页、Feed流进入沉浸式视频页),用户点击跳转按钮后: 响应延迟:点击按钮后无立即反馈,界面“假死”数十毫秒。 动画掉帧:转场动画(Push Animation)出现明显的卡顿或跳变(Jank)。 白屏时间长:新页面进入后,需等待较长
常见属性效果设置不正确的时候排查方法 方法 打开位于 DevEco Studio 底部的 ArkUI Inspecetor,选择出现问题的应用,具体的使用方法可以参考布局分析:在打开的页面上找到出现问题的组件,如果组件没有显示出来,也可以使用页面左侧的组件树,根据 Text 文本,组件类型,tag(如果没有设置过 nativeId 等属性,会默认设置为 id )等信息,找到对应的组件。选中该组件,
Metro热加载 React Native 使用Metro构建 JavaScript 代码和资源,本节介绍了配置步骤和使用方式。 配置Metro 您需要在项目的 metro.config.js 文件中配置 harmony 平台的 Metro 配置选项。它可以导出: 一个对象(推荐),将与Metro的内部配置默认值合并。一个函数,该函数将使用Metro的内部配置默认值被调用,并返回最终的配置对象。
产出一篇结构化分析文档,追踪行为差异在 RN/RNOH 调用栈中的传递路径,对比三端处理方式,仅在确有依据时提出可落地的对齐方案。核心价值是对比视角与判断——并非所有平台差异都是 bug。 按需加载:三种输出结构模板(Bug / 平台特性 / API 限制)与 Mermaid 图表规范 → references/output-templates.md;分析细则、方案设计原则、常见误区 → refe
本文面向 RNOH 应用开发者与运维人员,针对应用在鸿蒙系统上运行时出现的负载过高与功耗异常类问题,提供从现象识别、排查思路、根因定位到解决方案的完整指导。 负载与功耗类异常区别于崩溃、卡死等稳定性问题:应用通常不会直接退出,而是表现为持续高 CPU 占用、设备发烫、电池快速消耗、界面卡顿掉帧、后台待机耗电等。这类问题往往是"慢性病",在长时间运行或特定场景下才会暴露,定位难度
本文面向 RNOH 应用开发者,说明如何定位点击、滑动、页面切换和 RN 页面加载过程中的响应时延与完成时延。分析前请先阅读RNOH 框架性能问题定界;滑动过程的连续丢帧问题见页面滑动卡顿丢帧问题定位。 1. 先定义测量口径 1.1 响应时延 响应时延描述用户输入到首个可见反馈之间的时间,例如按钮按下态、页面开始移动或首个新内容上屏。 响应时延 = 首个响应帧上屏时间 - 输入起点 系统工具的输入
本文面向 RNOH 应用开发者,说明如何从 HarmonyOS 系统帧异常出发,沿 RNOH 滚动、JS 更新、Fabric 挂载、ArkUI 绘制和 Render Service 合成链路定位页面滑动卡顿。 在开始定位前,应先按照RNOH 框架性能问题定界确认问题属于应用侧,并区分 RN 业务、原生业务、三方组件和 RNOH 框架。响应时延与完成时延问题见响应时延与完成时延性能分析。 1. 问题
1 问题概述 1.1 什么是资源泄漏和OOM 资源泄漏是指应用在分配资源(内存、文件句柄、网络连接等)后,未能在适当时机释放,导致资源持续增长。当内存持续增长超过系统限制时,应用会被系统强制终止,即OOM(Out of Memory)。 1.2 RNOH应用资源泄漏的特点 RNOH应用涉及多层内存管理,资源泄漏可能发生在任何一层,且跨层引用关系复杂,定位难度较高: JS引擎堆(Hermes):JS
本文记录了将 react-native-file-logger 适配至 OpenHarmony 的实战过程。基于鸿蒙 7.0 模拟器,通过 5 个 TurboModule 方法实现日志落盘、轮转、列举与删除,采用 fileIo 实现核心功能,支持按大小和跨天轮转,归档文件命名精确至毫秒。邮件发送功能因平台限制按能力边界处理,明确拒绝并提示用户手动导出。验证通过,日志文件结构清晰,内容完整,产出 H
本文详解将 @d11/react-native-mqtt 适配至 OpenHarmony 的完整过程。基于鸿蒙无原生 MQTT 库,从零实现 MQTT 5.0 协议层,手写报文解析与构建,涵盖变长整数、UTF-8、二进制及属性字段处理。通过 @ohos.net.socket 实现 TCP/TLS 连接,7 个 TurboModule 方法统一封装,兼容 JS 层调用零改动。实测验证连接、订阅、断线
本文基于React Native 0.71+,通过npx react-native init初始化项目后,详细讲解如何使用TypeScript搭建两个页面:入口页(Entrance.tsx)和我的页面(Profile.tsx)。重点介绍了配置tsconfig.json、初始化TypeScript环境、集成React Navigation实现页面跳转,并通过创建共享类型文件(navigation.t
本文系统梳理了React Native Android开发的环境检测与项目搭建全流程。通过官方CLI初始化项目,配合CocoaPods管理原生依赖,实现从环境验收到首跑成功的闭环。基于React Navigation构建双Tab嵌套导航,结合AsyncStorage实现本地持久化,完成用户列表、详情页、我的页等核心功能。最后提供调试技巧与高频报错解决方案,助力开发者高效落地RN项目。
本文系统梳理了React Native iOS开发的环境检测与项目搭建全流程。强调环境问题占报错70%根因,需优先验证Node/npm、Watchman、Xcode工具链、模拟器运行时等关键项。通过官方CLI初始化项目,配合CocoaPods管理原生依赖,实现从环境验收到首跑成功的闭环。基于React Navigation构建双Tab嵌套导航,结合AsyncStorage实现本地持久化,完成用户列
本文详述在Apple Silicon Mac(macOS 26)+ 国内裸网环境下,实测搭建React Native 0.88.1开发环境的完整流程。从Homebrew镜像配置、Node与JDK安装(强调formula优于cask)、Xcode运行时下载、Android模拟器架构匹配,到Android 16专属的ACCESS_LOCAL_NETWORK权限授权等关键步骤,均以“做什么→为什么→如何
LoongForge是由百度智能云百舸团队打造的开源训练框架,它面向大语言模型(LLM)、视觉语言模型(VLM)、Diffusion 以及 VLA/WAM 等具身模型,覆盖预训练、监督微调和 LoRA 等训练形态,并同时支持 NVIDIA GPU 与昆仑芯 XPU。LoongForge 由 AIAK-Training-LLM 演进而来,将团队在企业级模型训练中沉淀的并行策略、通信优化、显存策略、算
让 AI 直接给 RN 三方库写鸿蒙适配代码,为什么常常编译不过、跑起来也不对?版本对不上、接口靠方法名猜、集成文件漏了一项,这些问题又该在哪一步被拦住?开源鸿蒙跨平台系列直播第 20 期将结合 react-native-device-info 的适配实践,分享用 @react-native-oh/kit 的 14 个 Skill 串起五步流水线的做法。官方 usage-docs 目前收录 290
设备语言与地区是应用国际化的基础信息。语言标识用于加载文案,地区用于确定区域默认值;两者可以由用户分别设置,不能把语言字符串中的某一段直接当作系统地区。例如,阅读器可以跟随首选语言列表选择内容,表单可以使用系统地区提供初始选项。业务仍应允许用户修改自己的偏好。每次查询都重新读取系统设置,不缓存旧值。返回原始 locale 标识,返回语言列表、语言码、地区码和完整标识。原生读取失败后,公开 JS 包
设备国家码存在不同来源:注册网络国家反映当前电话网络,系统地区来自用户设置。它们不一定相同,也都不能当作 GPS 实时位置。例如,地区选择器可以用配置来源提供默认值,网络相关业务可以显式请求 telephony;自动模式则在网络不可用时回退系统地区。any优先读取主卡注册网络,失败或为空时回退配置;telephony只读网络,失败拒绝 Promise;config只读系统地区。成功结果包含 cod
应用完成某些必须重启才能生效的配置后,可以通过明确的用户操作触发重启。重启之前需要先完成必要的持久化,不能依赖进程退出时再保存数据。鸿蒙实现读取当前宿主的 bundleName、moduleName 和 Ability 名称,避免把示例应用的身份硬编码到库中。默认导出 restartApp 与具名 restart 是同一函数,返回 void。系统仅允许顶部前台应用重启,成功重启间隔至少 3 秒;错
折叠适配既涉及是否支持折叠,也涉及当前状态、折痕方向以及折痕在应用窗口中的位置。本库保留上游单折痕模型,通过系统显示和窗口接口生成布局快照。例如,阅读页面可以根据窗口内折痕分栏,拍摄页面可以在可确认的桌面姿态下重新安排控件。没有折痕几何数据时应保留普通布局,不应凭屏幕尺寸虚构铰链位置。Provider 订阅 onLayoutInfoChange 后启动原生监听,事件负载为 {displayFeat
react native
——react native
联系我们(工作时间:8:30-22:00)
400-660-0108 kefu@csdn.net