A Flutter plugin for Android to allow other Flutter plugins to access Android Lifecycle
objects in the plugin's binding.
The purpose of having this plugin instead of exposing an Android Lifecycle
object in the engine's Android embedding plugins API is to force plugins to have a pub constraint that signifies the major version of the Android Lifecycle
API they expect.
Add flutter_plugin_android_lifecycle
as a dependency in your pubspec.yaml file.
Use a FlutterLifecycleAdapter
within another Flutter plugin's Android implementation, as shown below:
import androidx.lifecycle.Lifecycle; import io.flutter.embedding.engine.FlutterEngine; import io.flutter.embedding.engine.plugins.FlutterPlugin; import io.flutter.embedding.engine.plugins.activity.ActivityAware; import io.flutter.embedding.engine.plugins.FlutterPlugin.FlutterPluginBinding; import io.flutter.embedding.engine.plugins.lifecycle.FlutterLifecycleAdapter; public class MyPlugin implements FlutterPlugin, ActivityAware { @Override public void onAttachedToActivity(ActivityPluginBinding binding) { Lifecycle lifecycle = FlutterLifecycleAdapter.getActivityLifecycle(binding); // Use lifecycle as desired. } //... }
Feedback welcome and Pull Requests are most welcome!