Quick Notes On Dockter’s 2015 BABBQ Talk on the Android Gradle Build System
Dockter addresses the issue of Android build performance in the last half of the talk. A few of my takeaways, for what they’re worth:
- Android developers should try an upgrade to Gradle 2.8
- Build times are slow mostly because of dexing and pre-dexing. There’s nothing Gradle can do to improve dexing time, per se.
- Right now, a clean build deletes your pre-dexed libraries. So, they must be re pre-dexed each time. But, in the future, there will be an optimization where pre-dexed versions of libraries necessary to your project are cached resiliently. So, even if you clean your project, their dexed versions persist.
- Future improvements in the Android toolchain or Gradle for Android will include incremental dexing and concurrent dexing.
Dockter also mentioned the possibility of caching pre-dexed libraries on a CI Server so they’d be available to all developers in the organization. (Or something like that.)
I wonder if teams that use a third party, CI server in the cloud will also be able to take advantage of this sort of optimization.