gpt4 book ai didi

android - Wear App 和带有 applicationIdSuffix 的自定义构建类型

转载 作者:IT老高 更新时间:2023-10-28 22:26:35 28 4
gpt4 key购买 nike

我有一个应用,我想在其中添加 Android Wear 应用扩展。主应用程序具有三种构建类型(调试、测试和发布)。 Beta 版本有一个 applicationIdSuffix,它允许我在同一台设备上并行安装 play-store 版本和当前开发版本。这一切都很好,直到我添加了磨损应用程序。

主应用的 build.gradle 如下所示:

apply plugin: 'com.android.application'

android {
...
defaultConfig {
...
applicationId "com.example.mainApp"
...
}
buildTypes {
debug {
applicationIdSuffix '.debug'
}
beta {
applicationIdSuffix '.beta'
}
release {
}
}
}

dependencies {
...
wearApp project(':wear')
}

Wear-App 具有相同的构建类型和相同的 applicationIdSuffix 值。但是,当我构建 beta 应用程序(通过调用 gradle assembleBeta)时,构建过程会构建 :wear:assembleRelease 而不是 :wear:assembleBeta这就是为什么我在构建期间收到以下错误消息:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:handleBetaMicroApk'.
> The main and the micro apps do not have the same package name.

在使用构建类型beta打包主应用程序时,如何告诉构建过程构建正确的构建类型?

最佳答案

按照 Scott Barta (http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Library-Publication) 发布的链接,我想出了这个:

在wear app的build.gradle中,添加publishNonDefault true(发布所有变种):

android {
publishNonDefault true
}

在主应用的build.gradle中,
替换

wearApp project(':wear')

debugWearApp project(path:':wear', configuration: 'debug')
releaseWearApp project(path:':wear', configuration: 'release')

关于android - Wear App 和带有 applicationIdSuffix 的自定义构建类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25141039/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com