irondash_engine_context

Crates.ioirondash_engine_context
lib.rsirondash_engine_context
version0.5.0
sourcesrc
created_at2022-11-10 18:16:58.232606
updated_at2023-12-26 15:00:26.927239
descriptionEasy access to FlutterView, FlutterBinaryMessenger and FlutterTextureRegistry for FFI.
homepage
repositoryhttps://github.com/irondash/irondash
max_upload_size
id712285
size44,362
Matej Knopp (knopp)

documentation

README

irondash_engine_context

Flutter plugin that provides access to Flutter engine components (like view or texture registrar) from native code.

Example

Dart code:

    import 'package:irondash_engine_context/irondash_engine_context.dart';

    final handle = await EngineContext.instance.getEngineHandle();
    // pass the handle native code (i.e. through FFI).
    nativeMethod(handle);

Rust code:

    use irondash_engine_context::EngineContext;

    let context = EngineContext::get().unwrap();
    let flutter_view = context.get_flutter_view(handle);
    let texture_registry = context.get_texture_registry(handle);

On Android, EngineContext can provide JavaVM instance and class loader that has loaded Flutter application:

let java_vm = EngineContext::get_java_vm()?;
let class_loader = EngineContext::get_class_loader()?;
Commit count: 141

cargo fmt