Flutter FlutterRenderer

FlutterRendererFlutter 引擎在 Android 下的 Embedder 中的类。它代表了FlutterEngine的渲染职责。

FlutterRenderer与提供的RenderSurface一起工作,将 Flutter 的像素绘制到 Android 的View层次结构中。这里的RenderSurface提供了 Android 的SurfaceFlutterRenderer在这个Surface上进行绘制。

FlutterRenderer 管理用于渲染的纹理,并通过JNI将一些Java调用转发到原生的Flutter代码。这意味着FlutterRenderer是 Java 代码和原生 Flutter 代码之间的桥梁。

FlutterSurfaceViewFlutterTextureViewRenderSurface的实现。这意味着FlutterRenderer可以与这两种类型的视图一起工作,将Flutter的像素绘制到这些视图上。


渲染管理

在介绍中提到,Android 侧提供 RenderSurface,FlutterRenderer 向其上进行渲染,即渲染管理,这是 FlutterRenderer 的最核心功能。

isDisplayingFlutterUi 状态作为“当前 Flutter 是否正在渲染”的唯一事实。

启停方法:


纹理管理

两个方法返回值类型均为 SurfaceTextureRegistryEntry 这是 FlutterRenderer 的一层封装。

关于外接纹理基于,基于这里的方法实现。参考资料:


网络资源


本文作者:Maeiee

本文链接:Flutter FlutterRenderer

版权声明:如无特别声明,本文即为原创文章,版权归 Maeiee 所有,未经允许不得转载!


喜欢我文章的朋友请随缘打赏,鼓励我创作更多更好的作品!