Base class for all Android plugins
Modifiers | Name | Description |
---|---|---|
static class |
BasePlugin.PostCompilationData |
Class to hold data to setup the many optional post-compilation steps. |
Modifiers | Name | Description |
---|---|---|
static java.lang.String |
DEFAULT_PROGUARD_CONFIG_FILE |
|
static java.lang.String |
DIR_BUNDLES |
|
static java.lang.String |
FILE_JACOCO_AGENT |
|
static java.lang.String[] |
GRADLE_SUPPORTED_VERSIONS |
|
static java.lang.String |
GRADLE_TEST_VERSION |
|
static java.lang.String |
INSTALL_GROUP |
|
static java.io.File |
TEST_SDK_DIR |
|
protected Task |
assembleTest |
|
protected Task |
connectedCheck |
|
protected Task |
deviceCheck |
|
protected Instantiator |
instantiator |
|
protected Copy |
jacocoAgentTask |
|
protected JacocoPlugin |
jacocoPlugin |
|
protected Task |
lintAll |
|
Task |
lintCompile |
|
protected Task |
lintVital |
|
protected PrepareSdkTask |
mainPreBuild |
|
protected DefaultAndroidSourceSet |
mainSourceSet |
|
protected Project |
project |
|
protected SdkHandler |
sdkHandler |
|
protected DefaultAndroidSourceSet |
testSourceSet |
|
protected Task |
uninstallAll |
Constructor and description |
---|
protected BasePlugin
(Instantiator instantiator, ToolingModelBuilderRegistry registry) |
Type | Name and description |
---|---|
java.lang.Object |
addDependency(ResolvedComponentResult moduleVersion, VariantDependencies configDependencies, java.util.Collection<LibraryDependency> bundles, java.util.Map<java.io.File, JarDependency> jars, java.util.Map<ModuleVersionIdentifier, java.util.List<LibraryDependencyImpl>> modules, java.util.Map<ModuleVersionIdentifier, java.util.List<ResolvedArtifact>> artifacts, Multimap<LibraryDependency, VariantDependencies> reverseMap) |
protected void |
apply(Project project) |
MergeResources |
basicCreateMergeResourcesTask(BaseVariantData<? extends BaseVariantOutputData> variantData, java.lang.String taskNamePrefix, java.lang.String outputLocation, boolean includeDependencies, boolean process9Patch) |
void |
checkTasksAlreadyCreated() |
protected void |
configureProject() |
void |
createAidlTask(BaseVariantData<? extends BaseVariantOutputData> variantData, java.io.File parcelableDir) |
void |
createAnchorTasks(BaseVariantData<? extends BaseVariantOutputData> variantData) |
void |
createAndroidTasks(boolean force) |
Task |
createAssembleTask(BaseVariantOutputData variantOutputData) |
Task |
createAssembleTask(BaseVariantData<? extends BaseVariantOutputData> variantData) |
void |
createBuildConfigTask(BaseVariantData<? extends BaseVariantOutputData> variantData) |
void |
createCheckManifestTask(BaseVariantData<? extends BaseVariantOutputData> variantData) |
void |
createCheckTasks(boolean hasFlavors, boolean isLibraryTest) |
void |
createCompileTask(BaseVariantData<? extends BaseVariantOutputData> variantData, BaseVariantData<? extends BaseVariantOutputData> testedVariantData) |
void |
createGenerateMicroApkDataTask(BaseVariantData<? extends BaseVariantOutputData> variantData, Configuration config) |
void |
createGenerateResValuesTask(BaseVariantData<? extends BaseVariantOutputData> variantData) |
void |
createJackTask(BaseVariantData<? extends BaseVariantOutputData> variantData, BaseVariantData<? extends BaseVariantOutputData> testedVariantData) |
BasePlugin.PostCompilationData |
createJacocoTask(GradleVariantConfiguration config, BaseVariantData variantData, BasePlugin.PostCompilationData pcData) |
void |
createLintCompileTask() |
void |
createLintTasks() |
void |
createMergeAppManifestsTask(BaseVariantData<? extends BaseVariantOutputData> variantData) |
void |
createMergeAssetsTask(BaseVariantData<? extends BaseVariantOutputData> variantData, java.lang.String outputLocation, boolean includeDependencies) |
void |
createMergeLibManifestsTask(BaseVariantData<? extends BaseVariantOutputData> variantData, java.lang.String manifestOutDir) |
void |
createMergeResourcesTask(BaseVariantData<? extends BaseVariantOutputData> variantData, boolean process9Patch) |
void |
createNdkTasks(BaseVariantData<? extends BaseVariantOutputData> variantData) |
void |
createPackagingTask(ApkVariantData variantData, Task assembleTask, boolean publishApk) Returns the platform number, or null if we can't determine it. |
void |
createPostCompilationTasks(ApkVariantData variantData) Creates the post-compilation tasks for the given Variant. |
void |
createProcessJavaResTask(BaseVariantData<? extends BaseVariantOutputData> variantData) |
void |
createProcessResTask(BaseVariantData<? extends BaseVariantOutputData> variantData, boolean generateResourcePackage) |
void |
createProcessResTask(BaseVariantData<? extends BaseVariantOutputData> variantData, java.lang.String symbolLocation, boolean generateResourcePackage) |
protected void |
createProcessTestManifestTask(BaseVariantData<? extends BaseVariantOutputData> variantData, java.lang.String manifestOurDir) |
void |
createProguardTasks(BaseVariantData<? extends BaseVariantOutputData> variantData, BaseVariantData<? extends BaseVariantOutputData> testedVariantData, BasePlugin.PostCompilationData pcData) Creates the proguarding task for the given Variant. |
void |
createRenderscriptTask(BaseVariantData<? extends BaseVariantOutputData> variantData) |
void |
createSplitAbiTasks(ApplicationVariantData variantData) |
void |
createSplitResourcesTasks(BaseVariantData<? extends BaseVariantOutputData> variantData) Creates the split resources packages task if necessary. |
void |
createTestApkTasks(TestVariantData variantData) Creates the tasks to build the test apk. |
ZipAlign |
createZipAlignTask(java.lang.String name, java.io.File inputFile, java.io.File outputFile) creates a zip align. |
void |
displayDeprecationWarning(java.lang.String message) |
static void |
displayDeprecationWarning(Logger logger, Project project, java.lang.String message) |
static void |
displayWarning(ILogger logger, Project project, java.lang.String message) |
static void |
displayWarning(Logger logger, Project project, java.lang.String message) |
protected void |
doApply() |
protected void |
ensureConfigured(Configuration config) |
void |
ensureTargetSetup() |
static BasePlugin |
findBasePlugin(Project project) Returns a plugin that is an instance of BasePlugin. |
AndroidBuilder |
getAndroidBuilder() |
java.util.List<java.io.File> |
getBootClasspath() |
java.util.List<java.lang.String> |
getBootClasspathAsStrings() |
ProductFlavorData<ProductFlavorDsl> |
getDefaultConfigData() |
BaseExtension |
getExtension() |
protected java.lang.Class<? extends BaseExtension> |
getExtensionClass() |
java.util.Collection<AndroidArtifact> |
getExtraAndroidArtifacts(java.lang.String variantName) |
java.util.Collection<ArtifactMetaData> |
getExtraArtifacts() |
java.util.Collection<SourceProviderContainer> |
getExtraBuildTypeSourceProviders(java.lang.String buildTypeName) |
java.util.Collection<SourceProviderContainer> |
getExtraFlavorSourceProviders(java.lang.String flavorName) |
java.util.Collection<JavaArtifact> |
getExtraJavaArtifacts(java.lang.String variantName) |
java.util.Collection<SourceProviderContainer> |
getExtraVariantSourceProviders(java.lang.String variantName) |
Instantiator |
getInstantiator() |
Copy |
getJacocoAgentTask() |
java.util.Set<java.io.File> |
getJniFolders(ApkVariantData variantData) Calculate the list of folders that can contain jni artifacts for this variant. |
static java.lang.Object[] |
getLocalJarFileList(DependencyContainer dependencyContainer) |
ILogger |
getLogger() |
protected java.util.List<ManifestDependencyImpl> |
getManifestDependencies(java.util.List<LibraryDependency> libraries) |
java.io.File |
getNdkFolder() |
protected static java.io.File |
getOptionalDir(java.io.File dir) |
Project |
getProject() |
java.io.File |
getSdkFolder() |
SdkInfo |
getSdkInfo() |
protected static java.util.List<SymbolFileProviderImpl> |
getTextSymbolDependencies(java.util.List<LibraryDependency> libraries) |
java.util.Collection<java.lang.String> |
getUnresolvedDependencies() |
java.util.List<BaseVariantData<? extends BaseVariantOutputData>> |
getVariantDataList() |
protected VariantFactory |
getVariantFactory() |
VariantManager |
getVariantManager() |
protected PrepareLibraryTask |
handleLibrary(Project project, LibraryDependencyImpl library) Handles the library and returns a task to "prepare" the library (ie unarchive it). |
boolean |
isVerbose() |
static void |
optionalDependsOn(Task main, Task... dependencies) |
static void |
optionalDependsOn(Task main, java.util.List<java.lang.Object> dependencies) |
void |
registerArtifactType(java.lang.String name, boolean isTest, int artifactType) |
void |
registerBuildTypeSourceProvider(java.lang.String name, BuildType buildType, SourceProvider sourceProvider) |
void |
registerJavaArtifact(java.lang.String name, BaseVariant variant, java.lang.String assembleTaskName, java.lang.String javaCompileTaskName, Configuration configuration, java.io.File classesFolder, SourceProvider sourceProvider) |
void |
registerMultiFlavorSourceProvider(java.lang.String name, java.lang.String flavorName, SourceProvider sourceProvider) |
void |
registerProductFlavorSourceProvider(java.lang.String name, ProductFlavor productFlavor, SourceProvider sourceProvider) |
void |
resolveDependencies(VariantDependencies variantDeps) |
void |
setAssembleTest(Task assembleTest) |
Methods inherited from class | Name |
---|---|
class java.lang.Object |
java.lang.Object#wait(), java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll() |
Returns the platform number, or null if we can't determine it.
Creates the post-compilation tasks for the given Variant. These tasks create the dex file from the .class files, plus optional intermediary steps like proguard and jacoco
variantData
- the variant data.Creates the proguarding task for the given Variant.
variantData
- the variant data.testedVariantData
- optional. variant data representing the tested variant, null if the
variant is not a test variantCreates the split resources packages task if necessary. AAPT will produce split packages for all --split provided parameters. These split packages should be signed and moved unchanged to the APK build output directory.
variantData
- the variant configuration.Creates the tasks to build the test apk.
variantData
- the test variantcreates a zip align. This does not use convention mapping, and is meant to let other plugin create zip align tasks.
name
- the name of the taskinputFile
- the input fileoutputFile
- the output fileReturns a plugin that is an instance of BasePlugin. Returns null if a BasePlugin cannot be found.
Calculate the list of folders that can contain jni artifacts for this variant.
variantData
- the variantHandles the library and returns a task to "prepare" the library (ie unarchive it). The task will be reused for all projects using the same library.
project
- the projectlibrary
- the library.Copyright (C) 2012 The Android Open Source Project