In Titanium 9.0.0, we are changing our app/module build system to use "gradle". This build system allows us to do the following with modules:
- Build modules as *.aar files. (Self contained file containing all *.jar/*.so libraries, res files, AndroidManifest.xml, etc. that gradle can automatically merge into app for us.)
- Provide a *.pom XML file declaring all library dependencies the module uses. (This solves dependency version conflicts for us, but only if all other modules do the same.)
- Improve build times and reduces module release size. (Dependencies are no longer bundled within module release zip and are instead downloaded via gradle/maven.)
In particular, we want to solve the library dependency version conflicts that has been known to happen. This frequently happens when we update our "ti.playservices" libraries. We can only solve this problem if all modules opt-in to using gradle and define their dependencies via a "build.gradle" file (ie: must agree to using same version management system).