从源码入手Android启动流程
从两个方面入手。一个Android 的App 对应一个Application ,然后每个RN的入口对应一个activity
先看activity,activity 首先继承自ReactActivity,这里和我们把项目导入我们自己的activity中也是一样。都是继承 ReactActivity
ReactActivity 只做了一件事 ,创建createReactActivityDelegate,并把
mDelegate和生命周期相关联。
之后 在ReactActivityDelegate中 创建ReactDelegate并在成功之后创建 ReactRootView
在ReactRootView创建成功后调用 mReactDelegate.loadApp(appKey);
最后调用setContentView 来渲染到Android页面。
attachRootView 通过manager 在调用getNativeModule (实现在c++层了的东西)
Application
启动创建ReactNativeHost调用 createReactInstanceManager
这里调用getJSBundleFile 来获取设置路径bundle文件等等操作
并在 getPackages 中 设置动态add包名