public static interface PluginRegistry.Registrar
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
Modifier and Type | Method and Description |
---|---|
Context |
activeContext()
Returns the active
Context . |
Activity |
activity()
Returns the
Activity that forms the plugin's operating context. |
PluginRegistry.Registrar |
addActivityResultListener(PluginRegistry.ActivityResultListener listener)
Adds a callback allowing the plugin to take part in handling incoming
calls to
Activity.onActivityResult(int, int, Intent) . |
PluginRegistry.Registrar |
addNewIntentListener(PluginRegistry.NewIntentListener listener)
Adds a callback allowing the plugin to take part in handling incoming
calls to
Activity.onNewIntent(Intent) . |
PluginRegistry.Registrar |
addRequestPermissionsResultListener(PluginRegistry.RequestPermissionsResultListener listener)
Adds a callback allowing the plugin to take part in handling incoming
calls to
Activity#onRequestPermissionsResult(int, String[], int[])
or android.support.v4.app.ActivityCompat.OnRequestPermissionsResultCallback#onRequestPermissionsResult(int, String[], int[]) . |
PluginRegistry.Registrar |
addUserLeaveHintListener(PluginRegistry.UserLeaveHintListener listener)
Adds a callback allowing the plugin to take part in handling incoming
calls to
Activity.onUserLeaveHint() . |
PluginRegistry.Registrar |
addViewDestroyListener(PluginRegistry.ViewDestroyListener listener)
Adds a callback allowing the plugin to take part in handling incoming
calls to
Activity.onDestroy() . |
Context |
context()
Returns the
Application 's Context . |
String |
lookupKeyForAsset(String asset)
Returns the file name for the given asset.
|
String |
lookupKeyForAsset(String asset,
String packageName)
Returns the file name for the given asset which originates from the
specified packageName.
|
BinaryMessenger |
messenger()
Returns a
BinaryMessenger which the plugin can use for
creating channels for communicating with the Dart side. |
PlatformViewRegistry |
platformViewRegistry()
Returns the application's
PlatformViewRegistry . |
PluginRegistry.Registrar |
publish(Object value)
Publishes a value associated with the plugin being registered.
|
TextureRegistry |
textures()
Returns a
TextureRegistry which the plugin can use for
managing backend textures. |
FlutterView |
view()
Returns the
FlutterView that's instantiated by this plugin's
activity . |
Activity activity()
Activity
that forms the plugin's operating context.
Plugin authors should not assume the type returned by this method
is any specific subclass of Activity
(such as
FlutterActivity
or
FlutterFragmentActivity
), as applications
are free to use any activity subclass.
When there is no foreground activity in the application, this
will return null. If a Context
is needed, use context() to
get the application's context.
This registrar is for Flutter's v1 embedding. To access an Activity
from a
plugin using the v2 embedding, see ActivityPluginBinding.getActivity()
. To obtain
an instance of an ActivityPluginBinding
in a Flutter plugin, implement the
ActivityAware
interface. A binding is provided in ActivityAware.onAttachedToActivity(ActivityPluginBinding)
and ActivityAware.onReattachedToActivityForConfigChanges(ActivityPluginBinding)
.
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
Context context()
Application
's Context
.
This registrar is for Flutter's v1 embedding. To access a Context
from a
plugin using the v2 embedding, see FlutterPlugin.FlutterPluginBinding#getApplicationContext()
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
Context activeContext()
Context
.
This registrar is for Flutter's v1 embedding. In the v2 embedding, there is no
concept of an "active context". Either use the application Context
or an attached
Activity
. See context()
and activity()
for more details.
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
Activity
, if not null, otherwise the Application
.BinaryMessenger messenger()
BinaryMessenger
which the plugin can use for
creating channels for communicating with the Dart side.
This registrar is for Flutter's v1 embedding. To access a BinaryMessenger
from
a plugin using the v2 embedding, see FlutterPlugin.FlutterPluginBinding#getBinaryMessenger()
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
TextureRegistry textures()
TextureRegistry
which the plugin can use for
managing backend textures.
This registrar is for Flutter's v1 embedding. To access a TextureRegistry
from
a plugin using the v2 embedding, see FlutterPlugin.FlutterPluginBinding#getTextureRegistry()
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
PlatformViewRegistry platformViewRegistry()
PlatformViewRegistry
.
Plugins can use the platform registry to register their view factories.
This registrar is for Flutter's v1 embedding. To access a PlatformViewRegistry
from a plugin using the v2 embedding, see FlutterPlugin.FlutterPluginBinding#getPlatformViewRegistry()
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
FlutterView view()
FlutterView
that's instantiated by this plugin's
activity
.
This registrar is for Flutter's v1 embedding. The FlutterView
referenced by
this method does not exist in the v2 embedding. Additionally, no View
is exposed
to any plugins in the v2 embedding. Platform views can access their containing
View
using the platform views APIs. If you have a use-case that absolutely
requires a plugin to access an Android View
, please file a ticket on GitHub.
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
String lookupKeyForAsset(String asset)
AssetManager
API.
TODO(mattcarroll): point this method towards new lookup method.asset
- the name of the asset. The name can be hierarchicalAssetManager
String lookupKeyForAsset(String asset, String packageName)
AssetManager
API.
TODO(mattcarroll): point this method towards new lookup method.asset
- the name of the asset. The name can be hierarchicalpackageName
- the name of the package from which the asset originatesAssetManager
PluginRegistry.Registrar publish(Object value)
The published value is available to interested clients via
PluginRegistry.valuePublishedByPlugin(String)
.
Publication should be done only when client code needs to interact with the plugin in a way that cannot be accomplished by the plugin registering callbacks with client APIs.
Overwrites any previously published value.
This registrar is for Flutter's v1 embedding. The concept of publishing values from plugins is not supported in the v2 embedding.
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
value
- the value, possibly null.PluginRegistry.Registrar
.PluginRegistry.Registrar addRequestPermissionsResultListener(PluginRegistry.RequestPermissionsResultListener listener)
Activity#onRequestPermissionsResult(int, String[], int[])
or android.support.v4.app.ActivityCompat.OnRequestPermissionsResultCallback#onRequestPermissionsResult(int, String[], int[])
.
This registrar is for Flutter's v1 embedding. To listen for permission results in the
v2 embedding, use ActivityPluginBinding#addRequestPermissionsResultListener(RequestPermissionsResultListener)
.
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
listener
- a PluginRegistry.RequestPermissionsResultListener
callback.PluginRegistry.Registrar
.PluginRegistry.Registrar addActivityResultListener(PluginRegistry.ActivityResultListener listener)
Activity.onActivityResult(int, int, Intent)
.
This registrar is for Flutter's v1 embedding. To listen for Activity
results
in the v2 embedding, use ActivityPluginBinding#addActivityResultListener(ActivityResultListener)
.
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
listener
- an PluginRegistry.ActivityResultListener
callback.PluginRegistry.Registrar
.PluginRegistry.Registrar addNewIntentListener(PluginRegistry.NewIntentListener listener)
Activity.onNewIntent(Intent)
.
This registrar is for Flutter's v1 embedding. To listen for new Intent
s in the
v2 embedding, use ActivityPluginBinding#addOnNewIntentListener(NewIntentListener)
.
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
listener
- a PluginRegistry.NewIntentListener
callback.PluginRegistry.Registrar
.PluginRegistry.Registrar addUserLeaveHintListener(PluginRegistry.UserLeaveHintListener listener)
Activity.onUserLeaveHint()
.
This registrar is for Flutter's v1 embedding. To listen for leave hints in the
v2 embedding, use ActivityPluginBinding#addOnUserLeaveHintListener(UserLeaveHintListener)
.
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
listener
- a PluginRegistry.UserLeaveHintListener
callback.PluginRegistry.Registrar
.PluginRegistry.Registrar addViewDestroyListener(PluginRegistry.ViewDestroyListener listener)
Activity.onDestroy()
.
This registrar is for Flutter's v1 embedding. The concept of View
destruction does not exist in the v2 embedding. However, plugins in the v2 embedding
can respond to ActivityAware.onDetachedFromActivityForConfigChanges()
and
ActivityAware.onDetachedFromActivity()
, which indicate the loss of a visual
context for the running Flutter experience. Developers should implement
ActivityAware
for their FlutterPlugin
if such callbacks are needed. Also,
plugins can respond to
FlutterPlugin.onDetachedFromEngine(FlutterPlugin.FlutterPluginBinding)
, which
indicates that the given plugin has been completely disconnected from the associated
Flutter experience and should clean up any resources.
For instructions on migrating a plugin from Flutter's v1 Android embedding to v2, visit http://flutter.dev/go/android-plugin-migration
listener
- a PluginRegistry.ViewDestroyListener
callback.PluginRegistry.Registrar
.