React Native 月刊 #2
React Native 月度会议继续进行!本次会议我们迎来了 Infinite Red,他们是 Chain React,React Native 大会 的幕后高手。由于这里大多数人都在 Chain React 做了演讲,我们将会议推迟了一周。大会中的演讲已发布到线上,我鼓励大家去看看。那么,让我们来看看我们的团队最近都在忙些什么。
团队
在第二次会议中,有 9 个团队参加了我们:
会议记录
以下是各团队的会议记录:
Airbnb
- 查看 Airbnb 仓库 获取与 React Native 相关的项目。
Callstack
- Mike Grabowski 一如既往地管理着 React Native 的月度发布,包括发布了一些 Beta 版本。尤其是在推进 v0.43.5 版本发布到 npm,因为它为 Windows 用户解除了阻碍!
- Haul 的开发进展缓慢但持续。已有一个 pull request 添加了热模块替换(HMR),其它改进也已发布。最近有几位业界领袖开始采用它。可能计划开始在这方面的全职付费工作。
- Michał Pierzchała 来自 Jest 团队,本月加入了 Callstack。他将帮助维护 Haul,并可能参与 Metro Bundler 和 Jest 的工作。
- Satyajit Sahoo 也加入了我们,太棒了!
- 开源部门有一堆很酷的项目即将发布。尤其是在将 Material Palette API 引入 React Native 上。计划最终发布我们面向 iOS 的原生组件包,旨在提供 1:1 的原生组件外观与体验。
Expo
- 最近推出了 Native Directory,帮助提高 React Native 生态中库的发现和评估效率。问题是:库太多,难以测试,需要手动判定,且并不明显哪些是最好该用的库,也很难判断是否兼容 CRNA/Expo。Native Directory 试图解决这些问题。欢迎查看并添加你的库。库列表见这里。这只是第一步,我们希望这个项目由社区来拥有和维护,而不仅仅是 Expo 的团队。如果你觉得有价值并希望参与改进,欢迎加入!
- 在 Expo SDK 19 的 Snack 中新增了安装 npm 包的初步支持。如果遇到任何问题请告诉我们,我们还在修复一些 bug。配合 Native Directory,这应能方便测试纯 JS 依赖或包含在 Expo SDK 里的库。试试这些示例:
- 发布了 Expo SDK19,带来了一系列提升,现在使用了更新版 Android JSC。
- 正在与 Alexander Kotliarskyi 一起在文档中制作指南,列出提升应用用户体验的技巧。欢迎参与贡献内容或帮忙撰写!
- 持续推进音频/视频、相机、手势(与 Software Mansion 合作开发的
react-native-gesture-handler)、GL 相机集成及希望在 SDK20(8 月)中首次推出部分功能,同时其他也会有重大改进。开始构建基础设施以支持 Expo 客户端的后台工作(地理位置、音频、通知等)。 - Adam Miskiewicz 在模仿 UINavigationController 转场效果的 react-navigation 中取得了不错进展。可以先看看他早期的版本,见他的推文——相关版本即将发布。还可关注他提上游的
MaskedViewIOS。如果你有能力且愿意实现 Android 版的MaskedView,那就太棒了!
Facebook
- Facebook 内部正在探索是否可以将原生的 ComponentKit 和 Litho 组件内嵌到 React Native 中。
- 欢迎为 React Native 贡献!如果你想知道如何贡献,我们的"贡献指南"详细描述了开发流程及提交首个 pull request 的步骤。除编写代码之外,还能通过 triaging issues(问题处理)或更新文档等方式贡献。
GeekyAnts
- 在 Chain React 上演示了 Designer 工具,它可处理 React Native 文件。许多参会者报名等候名单。
- 也在关注其他跨平台方案,如 Google Flutter(一个重要对比即将发布)、Kotlin Native 和 Apache Weex,以了解架构差异和学习它们如何提升 React Native 的整体性能。
- 大部分应用已切换到使用 react-navigation,显著提升了整体性能。
- 还宣布了 NativeBase Market——React Native 组件和应用的市场(由开发者为开发者打造)。
Infinite Red
- 希望介绍 Reactotron。查看介绍视频。我们很快会添加更多功能!
- 组织了 Chain React 大会。非常棒,感谢大家参与!视频现已上线!
Microsoft
- CodePush 已整合进 Mobile Center。现有用户的工作流程无变化。
- 有用户报告出现了重复应用的问题——因为他们已经在 Mobile Center 有应用。我们正努力解决,如果你有两个应用,请告知,我们能帮你合并。
- Mobile Center 现支持 CodePush 的推送通知功能。并演示了如何结合通知和 CodePush 来进行 A/B 测试——这是 React Native 架构的独特优势。
- VS Code 已知在调试 React Native 时出现问题,新版本扩展将在几天内修复。
- 鉴于微软内部还有许多团队也在致力于 React Native,我们将争取下一次会议时有更广泛团队的代表。
Shoutem
- 完成使 React Native 开发在 Shoutem 上更便捷的工作。开发应用时你可以使用所有标准的
react-native命令。 - 在解决如何最佳进行 React Native 性能分析上做了大量工作。许多文档已经过时,我们将尽力提交 PR 更新官方文档,或至少在博客中分享结论。
- 将导航方案切换到 react-navigation,可能很快会给出反馈。
- 发布了新的 HTML 组件,它能将原始 HTML 转换成 React Native 组件树。
Wix
- 开始向 Metro Bundler 提交包含 react-native-repackager 功能的 PR。已升级 react-native-repackager 以支持 RN 44(我们生产环境使用的版本)。用于我们的 detox 模拟测试框架。
- 过去三周一直在为 Wix 应用编写 detox 测试。这是一次极好的学习体验,了解如何减少如此规模(超 40 名工程师)的应用中的手动 QA。我们修复了若干 detox 问题,新版本刚发布。很高兴地报告,我们目前严格遵循“零闪烁政策”,测试稳定通过。
- Detox for Android 正在良好推进。社区大力协助,预计两周内发布初版。
- 我们的性能测试工具 DetoxInstruments 正在逐渐膨胀。计划将其变为独立工具,不再紧耦合 detox。它将支持一般 iOS 应用的性能分析,并与 detox 集成,实现自动化性能指标测试。
下次会议
下一次会议定于 2017 年 8 月 16 日。作为仅第 2 次会议,我们希望知道这些记录对 React Native 社区有何帮助。欢迎随时在 Twitter 上联系我,提供改进会议产出方式的建议。






