Use AndroidBuilder to build basic APK.
Notable changes:
- AndroidBuilder now receives ProjectFlavorHolder and
BuildTypeHolder. This both contains the flavor/type
themselves but also implements PathProvider to
provide the needed path.
- The [ProductFlavor/BuildType]Dimension implements
the Holder classes to provide those paths
- Moved to using the AndroidBuilder. It is created
by the ConfigureVariant task and set in the plugin
through the AndroidBasePlugin (will be used by
both plugins) and queried by the tasks with a simple
AndroidBuilderProvider
- Updated the mergeManifest, crunchRes, processRes,
dex and packageApp tasks to use the AndroidBuilder.
The tasks to create test apps haven't been touched yet.
Known issues:
- AndroidBuilderProvider will not work for builds that
create more than one APK.
- Because some inputs are not explicit in some tasks
(they are figured out automatically on the
AndroidBuilder side, touching some files will not
trigger new builds. The task's TaskInputs object
needs to be manipulated to help with this. This
will be needed for the inputs coming from library
dependencies as well anyway.
Change-Id: I7f9ca428ce2048ce92ed780367db0aaf01f6350b
diff --git a/.gitignore b/.gitignore
index 6e31dc8..2c9c85e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@
testapps/*/build
testapps/multiproject/*/build
/repo
+/out