io.flutter.plugin.common

## Interface PluginRegistry

- All Known Implementing Classes:
    FlutterActivity, FlutterActivityDelegate, FlutterFragmentActivity, FlutterPluginRegistry, ShimPluginRegistry

      public interface PluginRegistry

  Container class for Android API listeners used by `ActivityPluginBinding`.

  This class also contains deprecated v1 embedding APIs used for plugin registration.

  In v1 Android applications, an auto-generated and auto-updated plugin registrant class (GeneratedPluginRegistrant) makes use of a `PluginRegistry` to register contributions from each plugin mentioned in the application's pubspec file. The generated registrant class is, again by default, called from the application's main `Activity`, which defaults to an instance of `FlutterActivity`, itself a `PluginRegistry`.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `PluginRegistry.ActivityResultListener` Delegate interface for handling activity results on behalf of the main `Activity`.
    `static interface` | `PluginRegistry.NewIntentListener` Delegate interface for handling new intents on behalf of the main `Activity`.
    `static interface` | `PluginRegistry.PluginRegistrantCallback` Deprecated. See https://flutter.dev/go/android-project-migration for migration details.
    `static interface` | `PluginRegistry.Registrar` Deprecated. This registrar is for Flutter's v1 embedding. For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
    `static interface` | `PluginRegistry.RequestPermissionsResultListener` Delegate interface for handling result of permissions requests on behalf of the main `Activity`.
    `static interface` | `PluginRegistry.UserLeaveHintListener` Delegate interface for handling user leave hints on behalf of the main `Activity`.
    `static interface` | `PluginRegistry.ViewDestroyListener` Deprecated. See https://flutter.dev/go/android-project-migration for migration details.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `hasPlugin(String pluginKey)` Deprecated. See https://flutter.dev/go/android-project-migration for migration details.
    `PluginRegistry.Registrar` | `registrarFor(String pluginKey)` Deprecated. See https://flutter.dev/go/android-project-migration for migration details.
    `<T> T` | `valuePublishedByPlugin(String pluginKey)` Deprecated. See https://flutter.dev/go/android-project-migration for migration details.

- - ### Method Detail

    - #### registrarFor

          @Deprecated
          PluginRegistry.Registrar registrarFor(String pluginKey)

      Deprecated. See https://flutter.dev/go/android-project-migration for migration details.
      Returns a `PluginRegistry.Registrar` for receiving the registrations pertaining to the specified plugin.
      Parameters:
        `pluginKey` - a unique String identifying the plugin; typically the fully qualified name of the plugin's main class.

    - #### hasPlugin

          @Deprecated
          boolean hasPlugin(String pluginKey)

      Deprecated. See https://flutter.dev/go/android-project-migration for migration details.
      Returns whether the specified plugin is known to this registry.
      Parameters:
        `pluginKey` - a unique String identifying the plugin; typically the fully qualified name of the plugin's main class.
      Returns:
        true if this registry has handed out a registrar for the specified plugin.

    - #### valuePublishedByPlugin

          @Deprecated
          <T> T valuePublishedByPlugin(String pluginKey)

      Deprecated. See https://flutter.dev/go/android-project-migration for migration details.
      Returns the value published by the specified plugin, if any.

      Plugins may publish a single value, such as an instance of the plugin's main class, for situations where external control or interaction is needed. Clients are expected to know the value's type.

      Parameters:
        `pluginKey` - a unique String identifying the plugin; typically the fully qualified name of the plugin's main class.
      Returns:
        the published value, possibly null.