我使用带有gradle插件的Android Studio来开发应用程序。我在DSL Reference上学习了一些android gradle插件的用法。但我发现有一件事是doc上的applicationVariants部分很难理解。它只给出了这样的描述:
DomainObjectSet< ApplicationVariant> applicationVariants
应用程序变体列表。由于集合是在评估之后构建的,因此它应该与Gradle的所有迭代器一起使用来处理未来的项目。
但ApplicationVariant中的属性是什么?我不知道。我没有找到任何引用链接来描述ApplicationVariant。
仅限于页面底部的Gradle Plugin User Guide。它记录了applicationVariants,libraryVariants和testVariants中的可用属性。但我发现其中一些属性已经被弃用了很长时间,Android并没有更新此页面。
那么我在哪里可以找到ApplicationVariant中最新的属性?
答案 0 :(得分:15)
我也很难找到它。这是它移动的界面: 它还将包含您在风格中定义的任何道具,例如versionName,applicationId等
public interface ApplicationVariant {
String getName()
String getDescription()
String getDirName()
String getBaseName()
VariantConfiguration getConfig()
boolean getZipAlign()
boolean isSigned()
boolean getRunProguard()
FileCollection getRuntimeClasspath()
FileCollection getResourcePackage()
Compile getCompileTask()
List<String> getRunCommand()
String getPackage()
AndroidBuilder createBuilder(AndroidBasePlugin androidBasePlugin)
}
打印任何物体的道具:
def filtered = ['class', 'active']
println theObject.properties
.sort{it.key}
.collect{it}
.findAll{!filtered.contains(it.key)}
.join('\n')
答案 1 :(得分:3)
@CaptRespect的答案中的链接指向特定的内部版本。以下是master分支中指向公共API的链接:
/gradle/api/ApplicationVariant.java
(源自于)
/gradle/api/ApkVariant.java
(源自于)
/gradle/api/BaseVariant.java
答案 2 :(得分:0)
有关这些的一些文档: