applicationVariants
。featureVariants
。 libraryVariatns
。 instantAppVariants
在哪里
更新:回溯故事:我想为应用程序和即时应用程序分别生成BuildConfig和versionCode / String,但是它没有用,所以我尝试使用变体来查看是否有帮助,但是后来发现没有任何帮助InstantAppVariant让我循环浏览。变体并更新数据。
答案 0 :(得分:1)
我想以不同方式生成BuildConfig和 versionCode / String 应用程序和即时应用程序
使用productFlavors
,例如:
application
模块:
productFlavors {
instant {
dimension rootProject.flavorDim
minSdkVersion rootProject.minSdkInstant
versionCode rootProject.versionCodeInstant
versionName rootProject.versionNameInstant
}
installed {
dimension rootProject.flavorDim
minSdkVersion rootProject.minSdk
versionCode rootProject.versionCode
versionName rootProject.versionName
}
}
feature
模块:
productFlavors {
instant {
dimension rootProject.flavorDim
minSdkVersion rootProject.minSdkInstant
}
installed {
dimension rootProject.flavorDim
minSdkVersion rootProject.minSdk
}
}
现在您的:
minSdk
/ versionCode/Name
minSdkInstant
/ versionCodeInstant/NameInstant
您可以将其用于其他属性,但这是一些相关文章:
还有Configure build variants上的文档
但是,如果这不是您想要的,那么您将不得不给出一个使用示例。
答案 1 :(得分:0)
基于此site
当一个应用使用
Instant Apps
时,该应用被分为一个或 更多功能模块,每个功能模块都包含在一个单独的模块中 功能APK文件。每个功能都包含一个特定的区域 应用内的功能,通常涉及一个或多个活动 实例。然后将各个功能APK捆绑到 即时应用APK,然后将其上传到Google Play开发者 控制台。
这意味着应用程序模块和即时应用程序模块均充当构成应用程序的功能模块的容器。一个应用程序必须至少包含一个功能模块,并且还可能包含其他功能的其他模块。
另一方面,即时应用程序模块的build.gradle
文件将使用com.android.instantapp
插件为依赖项部分中引用的功能构建单独的功能APK文件。请注意,使用实现project()声明来引用功能依赖项:
apply plugin: 'com.android.instantapp'
dependencies {
implementation project(':myappbase')
implementation project(':myappfeature')
}