在 Android 应用中使用 React Native 组件而不创建新的 Activity

Use react native components in Android app without creating a new Activity

我正在考虑跨移动平台(iOS 和 Android)使用 react-native 组件。我见过的将 react-native 组件添加到 Android 应用程序的唯一方法是创建一个扩展 ReactActivity.

的 activity

是否有任何方法 adding/using 以较低的粒度级别响应本机组件,例如 View

没有必要扩展 ReactActivity class。但是:如果您不这样做,您的 activity 必须做某些 ReactActivity 本来会为您做的事情。特别是,您必须将一些生命周期事件转发到 ReactInstanceManager:

  • onPause,转发到reactInstanceManager.onHostPause
  • onResume,转发到reactInstanceManager.onHostResume
  • onDestroy,转发到 reactInstanceManager.onHostDestroy,然后卸载您的 React 应用程序。

...等等。有关详细信息,请参阅 ReactActivity and (in particular) ReactActivityDelegate 的源代码(它完成了大部分繁重的工作)。

(没关系 ReactFragmentActivity,它已被弃用。)