React Native 0.65 正式发布
本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →
今天我们发布 React Native 0.65 版本,带来了新版本的 Hermes、可访问性改进、包升级等多项更新。
Hermes 0.8 有哪些新特性?
专为 React Native 优化的开源 JavaScript 引擎 Hermes 已升级至 0.8.1 版本。本次更新的主要亮点包括:
-
全新的并发垃圾回收器 "Hades",在 64 位设备上将暂停时间缩短高达 30 倍。在 Facebook 内部测试中,某些 CPU 密集型工作负载性能提升了 20%-50%。点击此处了解 Hades 详情。
-
ECMAScript 国际化 API (ECMA-402,即
Intl) 现已内置到 Android 版 Hermes 并默认启用,每个 API 仅增加 57-62K 空间开销(相比 JSC 的 6MiB)。从此 Hermes 用户不再需要地区设置 polyfill。特别感谢 @mganandraj 和微软团队推动实现此功能! -
内存优化包括 SMI(小整数)和指针压缩技术,使 JS 堆内存缩减 30%。
-
对
Function.prototype.toString的改进修复了因不当功能检测导致的性能下降,同时支持源代码注入场景。
完整更新日志请参阅 Hermes 发布记录。
若尚未启用 Hermes,请按此步骤操作以获取新特性和性能提升!
可访问性修复与新增功能
去年 Facebook 作出 GAAD 承诺以改进 React Native 可访问性。0.65 版本兑现了该承诺并带来多项改进:
-
支持为 iOS 指定高对比度亮/暗色值,详见动态颜色文档。
-
Android 新增
getRecommendedTimeoutMillisAPI,可获取用户在无障碍设置中配置的超时值,适用于需要额外操作时间的场景。 -
多项基础修复确保 TalkBack/VoiceOver 正确播报组件状态(如
disabled禁用状态和unselected未选中状态)。
欢迎参与解决未完成的可访问性问题!
重要依赖更新与注意事项
-
需在
package.json中添加react-native-codegen版本0.0.7作为devDependency。 -
JCenter 已停止维护进入只读模式,我们已将其从 maven 仓库移除,依赖项更新至 MavenCentral 和 Jitpack。
-
已将 OkHttp 从 v3 升级至 v4.9.1。变更详情请参阅升级至 OkHttp 4。
-
升级至 Flipper 0.93 以支持 Xcode 12.5。请查阅Flipper 更新日志。
-
支持 Android Gradle Plugin 7
-
Apple Silicon 设备需要链接器变通方案。详情请参阅@mikehardy 的说明。
致谢!
此版本包含来自 61 位贡献者的 1100 多次提交。感谢所有为此版本做出贡献的开发者!您可在此处查看完整更新日志。
