我目前在探索如何减少Android启动时间。对于iOS而言这不是问题,但对于Android来说,我看到的启动时间在6-10秒之间。目标是在3-4秒左右。
以下是我找到的研究摘要:
- createReactContext:初始化React桥并开始加载所有本地模块的地方
- getMethodDescriptors:使用反射(运行时)编译出一个所有公开方法列表,使用
ReactMethod
虽然有解决方案,但并不完美:
- LazyReactPackage(实验性的)https://github.com/facebook/react-native/commit/797ca6c219b2a44f88f10c61d91e8cc21e2f306e
- 移除所有暴露的反射
ReactMethods
https://github.com/facebook/react-native/pull/10084
我对这些解决方案的问题是需要使用注解处理生成类(编译时)。我正在努力弄清楚如何运行这些解决方案,但没有成功。
此外,针对减少Android启动时间的其他建议也将非常有用。
谢谢!