Advanced app deployment
In Chapter 4, Creating Build Variants, we looked at several ways to create multiple versions of the same app, using build types and product flavors. However, in some cases, it might be easier to use a more specific technique, such as APK splits.
Split APK
Build variants can be seen as separate entities, that can each have their own code, resources, and manifest file. APK splits, on the other hand, only impact the packaging of an app. The compilation, shrinking, obfuscation, and so on are still shared. This mechanism allows you to split APKs based on either density or application binary interface (ABI).
You can configure splits by defining a splits
block inside the android
configuration block. To configure density splits, create a density
block inside the splits
block. If you want to set up ABI splits, use an abi
block.
If you enable density splits, Gradle creates a separate APK for each density. You can manually exclude certain densities if you do not need them, to speed...