Package io.flutter.embedding.engine.plugins

## Class FlutterPlugin.FlutterPluginBinding

- java.lang.Object
- - io.flutter.embedding.engine.plugins.FlutterPlugin.FlutterPluginBinding

- Enclosing interface:
    FlutterPlugin

      public static class FlutterPlugin.FlutterPluginBinding
      extends Object

  Resources made available to all plugins registered with a given `FlutterEngine`.

  The provided `BinaryMessenger` can be used to communicate with Dart code running in the Flutter context associated with this plugin binding.

  Plugins that need to respond to `Lifecycle` events should implement the additional `ActivityAware` and/or `ServiceAware` interfaces, where a `Lifecycle` reference can be obtained.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `FlutterPluginBinding​(Context applicationContext, FlutterEngine flutterEngine, BinaryMessenger binaryMessenger, TextureRegistry textureRegistry, PlatformViewRegistry platformViewRegistry, FlutterPlugin.FlutterAssets flutterAssets, FlutterEngineGroup group)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Context` | `getApplicationContext()` |
    `BinaryMessenger` | `getBinaryMessenger()` |
    `FlutterEngineGroup` | `getEngineGroup()` | Accessor for the `FlutterEngineGroup` used to create the `FlutterEngine` for the app.
    `FlutterPlugin.FlutterAssets` | `getFlutterAssets()` |
    `FlutterEngine` | `getFlutterEngine()` | Deprecated. Use `getBinaryMessenger()`, `getTextureRegistry()`, or `getPlatformViewRegistry()` instead.
    `PlatformViewRegistry` | `getPlatformViewRegistry()` |
    `TextureRegistry` | `getTextureRegistry()` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### FlutterPluginBinding

          public FlutterPluginBinding​(@NonNull
                                      Context applicationContext,
                                      @NonNull
                                      FlutterEngine flutterEngine,
                                      @NonNull
                                      BinaryMessenger binaryMessenger,
                                      @NonNull
                                      TextureRegistry textureRegistry,
                                      @NonNull
                                      PlatformViewRegistry platformViewRegistry,
                                      @NonNull
                                      FlutterPlugin.FlutterAssets flutterAssets,
                                      @Nullable
                                      FlutterEngineGroup group)

  - ### Method Detail

    - #### getApplicationContext

          @NonNull
          public Context getApplicationContext()

    - #### getFlutterEngine

          @Deprecated
          @NonNull
          public FlutterEngine getFlutterEngine()

      Deprecated.
      Use `getBinaryMessenger()`, `getTextureRegistry()`, or `getPlatformViewRegistry()` instead.

    - #### getBinaryMessenger

          @NonNull
          public BinaryMessenger getBinaryMessenger()

    - #### getTextureRegistry

          @NonNull
          public TextureRegistry getTextureRegistry()

    - #### getPlatformViewRegistry

          @NonNull
          public PlatformViewRegistry getPlatformViewRegistry()

    - #### getFlutterAssets

          @NonNull
          public FlutterPlugin.FlutterAssets getFlutterAssets()

    - #### getEngineGroup

          @Nullable
          public FlutterEngineGroup getEngineGroup()

      Accessor for the `FlutterEngineGroup` used to create the `FlutterEngine` for the app.

      This is useful in the rare case that a plugin has to spawn its own engine (for example, running an engine the background). The result is nullable since old versions of Flutter and custom setups may not have used a `FlutterEngineGroup`. Failing to use this when it is available will result in suboptimal performance and odd behaviors related to Dart isolate groups.