在 Android Studio 中,我希望每个应用程序变体都有自己的图标。
我尝试了各种方法,包括这里建议的方法 How to Provide different Android app Icons for different gradle buildTypes? 但它不起作用
这是我在 build.graddle 文件中编写的内容:
flavorDimensions "marketplaceA"
productFlavors {
koanFlavor {
dimension "marketplaceA"
resValue "string", "app_name", "Koan"
manifestPlaceholders = [
appIcon: "@mipmap/ic_launcher"
]
minSdkVersion 20
targetSdkVersion 27
versionCode 3
versionName '1.1'
}
koanSEFlavor {
dimension "marketplaceA"
resValue "string", "app_name", "Koan SE"
manifestPlaceholders = [
appIcon: "@mipmap/ic_launcher"
]
minSdkVersion 20
targetSdkVersion 27
versionCode 3
versionName '1.1'
}
}
Run Code Online (Sandbox Code Playgroud)
而且,因为我在每个变体中共享相同的资源:
我没有为每个变体创建一个 res 文件夹
我用2个版本的xml和png文件填充了主res文件夹的mipmapXXX文件夹
但是当我在模拟器中运行该应用程序时,该图标没有显示(奇怪的是,它仅在我的shield K1平板电脑上显示,我尝试过的所有其他智能手机都没有显示该图标)
更新: …
我正在尝试将Braze集成到我的应用程序中以进行推送通知。Braze 需要我们在其中添加 API 密钥和其他 braze 相关内容(这里是文档)创建一个braze.xml文件。src/main/res/values
现在我需要区分 prod 和 qa 环境,这意味着它们将有 2 个不同的 API 密钥。
我想知道如何使用不同的braze.xml口味来实现不同的效果。
我找到了这个:
sourceSets {
main {
java {
srcDirs = ['src']
}
}
test {
java {
srcDirs = ['test']
}
}
}
Run Code Online (Sandbox Code Playgroud)
我想知道如何使用它来替换我的 braze.xml 以适应不同的构建变体。
android source-sets build.gradle android-gradle-plugin android-variants
在使用GCM,ContentProvider,AccountType时,如何配置项目以便能够在发布版本旁安装调试版本?(不使用口味)
我一直收到错误,例如:INSTALL_FAILED_CONFLICTING_PROVIDER或INSTALL_FAILED_DUPLICATE_PERMISSION
android android-gradle-plugin android-productflavors android-build-type android-variants
在我的gradle(app)文件中,我设置了产品样式和构建类型,如下所示
productFlavors {
mock {
}
develop {
}
qa {
}
staging {
}
prod {
}
}
buildTypes {
debug {
//signingConfig signingConfigs.release
}
release {
minifyEnabled false
//signingConfig signingConfigs.release
}
Run Code Online (Sandbox Code Playgroud)
在Android Studio构建版本中,基于上述内容,我得到以下选项:
我在我的应用程序中放置了一个代码,以打印当前正在运行的Build变体,如下所示。但是以下代码始终显示为空。为什么会这样呢?如何在我的应用程序中获取确切的构建版本?任何帮助深表感谢。
System.out.println("Current build variant is"+BuildConfig.FLAVOR);
Run Code Online (Sandbox Code Playgroud)