Module and Dependency attribution (Android)
Only compatible with Emerge Gradle plugin 4.0+
You must be using any 4.0.0+ version of Emerge's Gradle Plugin for module & dependency information to be available.
Emerge can attribute specific files and classes in your Android app back to the original module or dependency they originated from, allowing your team to better diagnose specific areas of concern for attributing app size.
Module & dependency attribution requires uploading from our Gradle plugin, as Emerge leverages Gradle's artifacts API to properly attribute files to their original source. This attribution is included with the package uploaded to Emerge.
Viewing module & dependency data
Emerge is actively rolling out module & dependency features across size, snapshots, reaper, and performance products.
By default, if a file or class cannot be attributed to a specific module or third-party dependency, it will be attributed to the primary app module of your app's project.
Size Analysis
X-Ray
Emerge will attempt to attribute all files and classes in the X-Ray to the original module or dependency they originated from. Hovering over an item in the x-ray will reveal the module or dependency the specific file/class belongs to.
Breakdown
Emerge lists the download size impact of all modules and dependencies ordered from largest to smallest in the breakdown tab of the Emerge UI.
Disabling module & dependency attribution
To attribute modules & dependencies, Emerge packages a mapping file with the upload from the Gradle plugin. The mapping file contains a list of all known modules & dependencies of your application along with all classes and other files they provide to the final build of your app.
You can disable uploading this mapping file by using the top-level includeDependencyInformation
property in the Emerge gradle plugin configuration block. By default, includeDependencyInformation
is true.
// build.gradle.kts (app module)
emerge {
includeDependencyInformation.set(false)
// ...
}
Updated 3 months ago