Removal of v1 Android embedding Java APIs
Summary
#Android's v1 embedding has been removed in Flutter 3.29.0. This follows the deprecation described in Android v1 embedding app and plugin creation deprecation. The following is a full list of classes removed.
io.flutter.app.FlutterActivity
io.flutter.app.FlutterActivityDelegate
io.flutter.app.FlutterActivityEvents
io.flutter.app.FlutterApplication
io.flutter.app.FlutterFragmentActivity
io.flutter.app.FlutterPlayStoreSplitApplication
io.flutter.app.FlutterPluginRegistry
io.flutter.embedding.engine.plugins.shim.ShimPluginRegistry
io.flutter.embedding.engine.plugins.shim.ShimRegistrar
io.flutter.view.FlutterMain
io.flutter.view.FlutterNativeView
io.flutter.view.FlutterView
If your project references any of the above classes, consult the following list for instructions on migration.
io.flutter.app.FlutterActivity
was replaced withio.flutter.embedding.android.FlutterActivity
.io.flutter.app.FlutterActivityDelegate
was replaced withio.flutter.embedding.android.FlutterActivityAndFragmentDelegate
.io.flutter.app.FlutterActivityEvents
was removed.io.flutter.app.FlutterApplication
was removed. Flutter projects with customApplication
implementations should instead extend the baseandroid.app.Application
.io.flutter.app.FlutterFragmentActivity
was replaced withio.flutter.embedding.android.FlutterFragmentActivity
.io.flutter.app.FlutterPlayStoreSplitApplication
was replaced withio.flutter.embedding.android.FlutterPlayStoreSplitApplication
.io.flutter.app.FlutterPluginRegistry
was removed, as it only served to let plugins support apps using the v1 embedding.io.flutter.embedding.engine.plugins.shim.ShimPluginRegistry
was removed, as it only served to support let plugins support apps using the v1 embedding.io.flutter.embedding.engine.plugins.shim.ShimRegistrar
was removed, as it only served to support let plugins support apps using the v1 embedding.io.flutter.view.FlutterMain
was replaced byio.flutter.embedding.engine.loader.FlutterLoader
.io.flutter.view.FlutterNativeView
was replaced byio.flutter.embedding.android.FlutterView
.io.flutter.view.FlutterView
was replaced byio.flutter.embedding.android.FlutterView
.
Plugin authors
#Plugins should remove the registerWith
method from their FlutterPlugin
interface implementation:
public static void registerWith(@NonNull io.flutter.plugin.common.PluginRegistry.Registrar registrar);
For an example of this migration, check out the pull request to remove this method from the Flutter team-owned plugins: https://github.com/flutter/packages/pull/6494.
Timeline
#Landed in version: 3.28.0-0.1.pre
In stable release: 3.29
Unless stated otherwise, the documentation on this site reflects the latest stable version of Flutter. Page last updated on 2025-02-28. View source or report an issue.