Package io.flutter.embedding.engine.plugins

## Interface PluginRegistry

-     public interface PluginRegistry

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `add​(FlutterPlugin plugin)` | Attaches the given `plugin` to the `FlutterEngine` associated with this `PluginRegistry`.
    `void` | `add​(Set<FlutterPlugin> plugins)` | Attaches the given `plugins` to the `FlutterEngine` associated with this `PluginRegistry`.
    `FlutterPlugin` | `get​(Class<? extends FlutterPlugin> pluginClass)` | Returns the instance of a plugin that is currently attached to the `FlutterEngine` associated with this `PluginRegistry`, which matches the given `pluginClass`.
    `boolean` | `has​(Class<? extends FlutterPlugin> pluginClass)` | Returns true if a plugin of the given type is currently attached to the `FlutterEngine` associated with this `PluginRegistry`.
    `void` | `remove​(Class<? extends FlutterPlugin> pluginClass)` | Detaches the plugin of the given type from the `FlutterEngine` associated with this `PluginRegistry`.
    `void` | `remove​(Set<Class<? extends FlutterPlugin>> plugins)` | Detaches the plugins of the given types from the `FlutterEngine` associated with this `PluginRegistry`.
    `void` | `removeAll()` | Detaches all plugins that are currently attached to the `FlutterEngine` associated with this `PluginRegistry`.

- - ### Method Detail

    - #### add

          void add​(@NonNull
                   FlutterPlugin plugin)

      Attaches the given `plugin` to the `FlutterEngine` associated with this `PluginRegistry`.

    - #### add

          void add​(@NonNull
                   Set<FlutterPlugin> plugins)

      Attaches the given `plugins` to the `FlutterEngine` associated with this `PluginRegistry`.

    - #### has

          boolean has​(@NonNull
                      Class<? extends FlutterPlugin> pluginClass)

      Returns true if a plugin of the given type is currently attached to the `FlutterEngine` associated with this `PluginRegistry`.

    - #### get

          @Nullable
          FlutterPlugin get​(@NonNull
                            Class<? extends FlutterPlugin> pluginClass)

      Returns the instance of a plugin that is currently attached to the `FlutterEngine` associated with this `PluginRegistry`, which matches the given `pluginClass`.

      If no matching plugin is found, `null` is returned.

    - #### remove

          void remove​(@NonNull
                      Class<? extends FlutterPlugin> pluginClass)

      Detaches the plugin of the given type from the `FlutterEngine` associated with this `PluginRegistry`.

      If no such plugin exists, this method does nothing.

    - #### remove

          void remove​(@NonNull
                      Set<Class<? extends FlutterPlugin>> plugins)

      Detaches the plugins of the given types from the `FlutterEngine` associated with this `PluginRegistry`.

      If no such plugins exist, this method does nothing.

    - #### removeAll

          void removeAll()

      Detaches all plugins that are currently attached to the `FlutterEngine` associated with this `PluginRegistry`.

      If no plugins are currently attached, this method does nothing.