Android v1 embedding app and plugin creation deprecation
Summary
The flutter create
templates for apps and plugins
no longer create Android wrapping based on the
v1 Android embedding as part of our gradual
Android v1 embedding deprecation process described in our
Android Migration Summary.
Application projects using the v1 Android embedding are encouraged to migrate following the steps described in Upgrading pre 1.12 Android projects.
Plugins targeting the v1 Android embedding are encouraged to migrate following the instructions in Supporting the new Android plugins APIs.
Context
In Flutter version 1.12, we launched a v2 set of
Android APIs based on the io.flutter.embedding
package in order to enable the add-to-app workflow
on Android.
Over time, we gradually deprecated the older
v1 Android embeddings based on the
io.flutter.app
package.
As of Q2 2020, only 26% of applications used the v1 embeddings.
Since the v2 embeddings were strongly established over the 7 months since the launch of Flutter v1.12, we disabled the creation of new app and plugin projects using the v1 embeddings.
Description of change
The flutter config
command no longer has a
togglable enable-android-embedding-v2
flag (which defaulted to true since v1.12).
All projects created with flutter create
and flutter create -t plugin
exclusively use the
Android v2 embedding.
Existing v1 applications continue to work.
Existing v1 applications consuming plugins now receive a warning prompt to migrate to v2 embedding.
Existing v1 applications consuming a plugin that targets only the v2 embedding won’t build and must migrate. This has been the case since v1.12. However, the likelihood of encountering this increases as plugin developers create and publish v2 only plugins.
Existing v2 applications continue to work with or without plugins.
Existing v2 applications consuming plugins that only target the v1 embedding continue to receive a warning prompt. The likelihood of encountering this decreases as plugin developers create and publish v2 plugins.
Migration guide
See the migration guide.
Timeline
Landed in version: 1.20.0-8.0
In stable release: 1.22