Age | Commit message (Collapse) | Author |
|
First, this changeset creates lint-style projects for each Gradle model
app and library (and sets reporting flags) such that for example errors
in AAR libraries are no longer reported.
Second, it creates a new lint task which rather than depend on individual
lint tasks (for running lint on a given variant), runs lint through all
the variants on its own and then merges the errors together such that it
can report for each error whether it's specific to a set of variants and
if so which ones.
Change-Id: Ia2370d546515d4bcb104d1eec37a0394ac703704
|
|
Change-Id: I5598af8cb6300ffd67ea6f112a6868c338c8efbe
|
|
Change-Id: I38069666a4cc9f84c07337f26bd6dcdb0b253548
|
|
This fix the issue where two artifacts/modules have the same
artifactId or the same leaf folder name and override each other.
Change-Id: I4c3db658adf20e3720fbeb3747f47c3cab65d2f8
|
|
- rename all package scopes to apk since "package" is a reserved keyword
in Java/Groovy and build.gradle files are Groovy files!
- actually implement support for package-only dependencies.
Change-Id: I6c887320a2d70cf8fdd2d5bca64cbef3ff80e85d
|
|
Also add a new test project that use a fake implementation
of both to make sure they are correctly called.
Change-Id: I2a3dcd078a97fbeffedcf730adc59414afeb274d
|
|
Change-Id: I236458b4ae883481ff3afa9123f0167dbd270ac1
|
|
Change-Id: Id5e15ea3631225132dd4df3a74cba01b39172a29
|
|
To pass, this requires a fixed aapt that properly NOT put
final on styleable IDs when --non-constant-id is used.
Change-Id: If406633e67022291605472eea7c3f0d5374f9ce2
|
|
Change-Id: If19406b935965bde63a761236366137f6fb5d73f
|
|
Also fix some issues related to input detection of some tasks.
Change-Id: I38ac5a151fe1ac84c03fc0cafb8cab31117888a1
|
|
Change-Id: I4787cc88fddd23afdb7c8f6ac127318da7b0cff7
|
|
Support for customized results and report location.
Queries the IDevice to construct a name.
Copied the flavorlib samples to flavorlibWithFailedTests and
removed the failing tests from flavorlib as it's still useful to
have as a project with no failing test.
Change-Id: Iea3f2ab0828ab93c2ace3ed41b4a5dda7554bbe3
|
|
This will allow us to manually merge various resource folders.
This supports having multiple non-overlay folders while detecting
duplicates, as well as applying overlays.
The merger then creates a single resource folder that can be
fed to aapt.
This merger should be incremental (not yet) and be as efficient as possible.
Change-Id: I9e9b32954668160f97ff12fa70cd6078386b51c6
|
|
Also tweak the API a bit.
Change-Id: I6cb10b4d770f9054f269d600d41a24b7e2fdc2e1
|
|
Change-Id: I8686052470b71f9f61f83da360a205a2f04d5271
|
|
Move them into samples
Create folder tests for actual test projects.
Change-Id: I9e7c668ec7241d237f8aba8e539344f2f0800642
|
|
Read dependency graph and create list of JarDependency
and AndroidDependency for each configuration.
Set Jars and AndroidDependency on each VariantConfig
object.
Add a AndroidDependency report task (called androidDependency)
The prepareDependenciesTask will prepare the same artifact
multiple time if it's used by different variants and they
are all built. This will be fixed in the next patch.
Change-Id: I4f11565c3629a54f022ecc82f81d4900ef2bd0c9
|
|
This is a copy of multiproject but uploads the libs and jars to
a Maven repo and the app use those from the repo.
Change-Id: Ied5b3c51908b596184243b7974af2d7d52f4fbe8
|
|
Change-Id: I538c59d1712a2ea5caad9c88d6ae0fccdc29a967
|
|
Libraries weren't properly builds due to:
--non-constant-id was not used
--extra-packages was not used.
Also this creates a fake AndroidDependency for the tested
config so that it can be added to the dependency of the test
app.
Finally, this fixes some of the issues around classpath.
The Dex task receives separately the compiled code and the
library to planned for pre-dexing the libraries. The libraries
are handled through the AndroidDependency class provided
to the VariantConfig.
The compileTask setup is more precise in what is the
compiled *and packaged* classpath vs just a compile classpath
(this is different for test apps depending on if the test target
is a library or an app).
Change-Id: I0be9da2ce03bb48f40f4577e4323edf50062f2c0
|
|
The unarchived bundle is saved under build/bundle.
The generated manifest is directly saved under there
to avoid copying it.
The resources are copied there but the built-type
res folder is not properly merged in there. Need
to fix this.
The crunched resources are copied on top of it.
Also add a library test app.
Change-Id: Iab2d437b6f98ca5f842ca9720aafa206691fc1f0
|
|
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
|
|
Now uses package 'com.android.build.gradle' for source,
and group 'com.android.build'.
The packages for the test applications have not been changed, yet.
Change-Id: Id55eb9ea91295c72d989844b1f1cdee1ca9b58c3
|
|
The plugin implementation has moved to the gradle/ directory,
and the test applications have moved under the testapps/
directory. This change means that you now have to run
./gradlew uploadArchives in the root directory to make the
plugin available to the test application builds via a
local repository (in repo/).
See the readme.md for more details about building and using
the test applications.
Change-Id: Id9b268aa1d6d1a5621513fb788b2dc90ca2793e8
|
|
This is an initial prototype Gradle plugin that can build Android applications.
This is intended to demonstrate how such a plugin would be wired together. Most
of the tasks are placeholders for a real implementation. See the readme for
details.
Change-Id: I8f25493b9656c3919c0635c0e5363cdd9c8c171d
|