Dining Table, td{
border: .5px solid black;

As of Android Gradle plugin 3.4.0 (included in Android Studio 3.4), we’re starting the deprecation process of the feature plugin (com.android.feature) and instant app plugin (com.android.instantapp) as a means to build your instant app. When building your app, you will receive a warning flagging com.android.feature as deprecated. If you have an present instant program built with the attribute plugin, then migrate your current program to an instant-enabled app package when possible.

What’s changing?

Posted by Miguel Montemayor and Diana García Ríos
Last year, we introduced Android App Bundles–a new way to construct and release your own Android apps. App bundles simplify delivering APKs, including instant delivery, by unifying uploads. Google Play handles distribution by serving the correct APKs for your own instant and installed program users–that is called Dynamic Delivery. To find out more about app packages, visit the documentation site.

If you don’t have an instantaneous encounter added to your program and you’d love to make one, then use Android Studio 3.3+ to make an instant-enabled program package .

Together with the newest app bundle implementation, your base feature module takes the role as your program module (com.android.application), hosting the code and resources common to all features (instantaneous and set up ). You arrange additional, modular attributes as one of 3 types of feature modules that are dynamic, based on if you want to deliver them. The instant app module vanishes, because the dist:instant attributes in the manifest are enough to identify which attributes will be included as part of their instantaneous experience.

By migrating your app to an instant-enabled app bundle with dynamic attributes, you will be ready to leverage the power of this paradigm and you will be able to simplify the modular layout of your app.

The migration

Dynamic Delivery is based on the idea of shipping lively features (com.android.dynamic-feature) to app users when they want them and only as long as they need them. There are currently three shipping kinds, based on the different values you will give the dist:module tag features on the lively feature module’s manifest file:


dist:instant="false" dist:instantaneous ="true"
dist:onDemand="false" Dynamic feature delivered at install time Dynamic feature delivered immediately and also at install time
dist:onDemand="true" Dynamic feature delivered on demand (beta) N/A

Previously, instant programs required creating a feature module that acted as the base module. This base feature module comprised the code and resources to both installed program and your prompt. The rest of your codebase was comprised of:

  • multiple non-base contain modules, which included the instant app entry points,
  • an application module, which included the code and actions required just to your main installed program, along with
  • an instant app module, which represented the instantaneous app and mapped its own dependencies.