mro*_*avy 3 android kotlin react-native androidx
我正在为 React Native 开发一个本机模块,它包装了 CameraX API。CameraX API 是一个生命周期感知 API,因此它要求我将 androidx Lifecycle(或 androidx LifecycleOwner)传递到它的构造函数中。
由于这些是 androidx 类,因此无法从 React Native 上下文中获取Lifecycle( 或) 。LifecycleOwner
然而ReactContext::addLifecycleEventListener,它是由 React Native ( ) 实现的自定义生命周期事件监听器LifecycleEventListener,我现在正在尝试将其“转换”/映射到 androidx Lifecycle(或LifecycleOwner),但我不知道如何实现。
val lifecycle: Lifecycle = ???
reactContext.addLifecycleEventListener(object : LifecycleEventListener {
override fun onHostResume() {
TODO("Not yet implemented")
}
override fun onHostPause() {
TODO("Not yet implemented")
}
override fun onHostDestroy() {
TODO("Not yet implemented")
}
})
cameraProvider.bindToLifecycle(lifecycle, cameraSelector, preview)
Run Code Online (Sandbox Code Playgroud)
我现在的问题是:如何从我的 React 生命周期“创建”一个Lifecycle(或)实例?LifecycleOwner
我将不胜感激任何形式的帮助。
解决方案是从反应上下文中转换当前活动:
private val lifecycle: Lifecycle by lazy {
((context as ReactContext).currentActivity as AppCompatActivity).lifecycle
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1527 次 |
| 最近记录: |