问题标签 [android-build-type]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
108 浏览

android - 如何在 Android 库中设置构建类型和产品风格

在我的项目中添加了一个 Android 库模块后,该应用程序已停止与 API 通信,并且 Android Studio 完全冻结并且无法调试,因此没有错误消息。

我猜我在库中实现构建类型和产品风格的方式应该改变。

我正在尝试继续运行StagingDebug build variant

这就是我的应用程序 build.gradle 的样子

库只有构建类型

Library buildTypes 和 productflavors 应该如何更改为。

谢谢

R

编辑

0 投票
0 回答
496 浏览

android - 在 android R 中替换 BUILD_BROKEN_PHONY 和 phony-rebuild

我正在尝试构建 android R,但在内核 makefile kernel/exynos/AndroidKernel.mk:155 中出现以下错误:错误:写入只读目录:“/data/home/sumkumar/work/workspace/R/out/. ./out/target/product/**/obj/KERNEL_OBJ/arch/arm64/boot/Image” 这是在 Android Q 中通过使用标志“BUILD_BROKEN_PHONY_TARGETS=true”处理的,但在 R 中这是贬值的,因此不能使用相同的。

查看以下链接后,从 google 为 android R https://android.googlesource.com/platform/build/+/master/Changes.md#phony_targets更改虚假规则

我已通过删除错误路径中的“../”并过去之前的错误,如下更新了我的 Makefile,#KERNEL_OUT ?= $(if $(filter /% ~%,$(TARGET_OUT_INTERMEDIATES)),,$(realpath $(OUT_DIR))/../)$(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ KERNEL_OUT ?= $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ

但现在我收到错误重建错误,如下所述 kernel/exynos/AndroidKernel.mk:139:错误:真实文件“out/target/product/**/obj/KERNEL_OBJ/.config”取决于 PHONY 目标“假-rebuild" 14:21:04 ckati 失败:退出状态 1

我理解为虚假目标总是很脏,因此每个文件都将被重建,这取决于该虚假,但在我的情况下,这种重建是必需的。附上描述相同文件的快照

KERNEL_CONFIG := $(KERNEL_OUT)/.config

KERNEL_CONFIG := $(KERNEL_OUT)/.config

.PHONY:假重建

$(KERNEL_CONFIG): 假重建

请让我知道是否有任何方法可以避免使用 phony-rebuild 并用替代机制替换它。

问候,

0 投票
1 回答
26 浏览

android - 如何将特定变量添加到不同的调试和发布风格

一些帮助找到如何做到这一点:我想创建一些 resValue 仅用于 1 风味,这些 resvalue 必须根据 buildtype 不同(并且只是为了安全,如果我稍后添加 buildType 并忘记管理它会生成错误以我的口味)

谢谢

0 投票
0 回答
184 浏览

android - Gradle - 根据特定 productFlavor 的 buildType 添加 applicationIdSuffix

在Android(Java/Gradle/Android Studio)应用程序中,我试图为我的调试版本设置一个applicationIdSuffix(“.dev”),但仅限于特定的产品风格(比如说flavorA)。例如我想要的是:

我确实知道如何在 buildTypes 调试块中设置所有风格的 .dev 后缀,并且我已经通过循环设置了一些依赖于风格和 buildTypes 的 buildConfigField 值applicationVariants.all { variant -> () }。我还没有设法使用这个循环来设置 applicationIdSuffix。

我也尝试productFlavors.flavorA.applicationIdSuffix ".dev"在 debug buildType 块中添加,但由于某种原因,它也适用于发布版本——我觉得这很奇怪。

最后,

似乎也不起作用。

有什么办法可以得到我想要的行为?

0 投票
0 回答
89 浏览

android - Android 4.1 FLAVOR 和 BUILD_TYPE 问题

我更新到 Android Studio 4.1,构建变体选项卡变得不同。

它没有提供我的应用程序及其构建模块选择,而是复制了两次应用程序。

我并没有想太多,并在发布版本中运行了 Flavor A。令我惊讶的是,它运行带有调试版本的 Flavor B。

为了测试,我尝试禁用 Flavor B,删除 .idea 文件夹,与 gradle 同步,重建并运行它以最终运行 Flavor A。它在 1 次运行后又回到了味道 B,即使它没有不存在。

对于构建类型,更糟糕的是,我无法运行发布,无论我选择什么,它都只能运行调试。

当然我试过评论调试等等。无法运行释放。

有没有人遇到过同样的问题?关于如何解决这个问题的任何解决方案?

0 投票
0 回答
22 浏览

android - 为自定义构建类型(非调试)创建覆盖率报告不起作用

也许我遗漏了一些东西,但我找不到任何文档。我们有 3 种构建类型debugqarelease。该createDebugCoverageReport任务工作正常,但createQaCoverageReport任务没有。它完成了,但没有实际运行任何检测测试。我猜这是故意的,但有任何文档吗?

0 投票
0 回答
71 浏览

android-studio - android studio,如何跨多个构建变体共享类接口的不同实现

拥有一个具有几种不同构建类型的 android 应用程序:release, debug, amazon, facebook. 和风味:staging, prod 和构建变体是:

stagingRelease, stagingDebug, stagingAmazon, stagingFacebook,

prodRelease, prodDebug, prodAmazon, prodFacebook,

还具有一个 optionalClass 接口,该接口具有仅用于暂存构建的真实代码实现,以及它的存根版本用于生产构建。

有一个 main\src\java\ someClass.java(将用于所有变体构建),它将具有调用定义在OptionalVerifies

项目文件夹是:

所以构建类型共享的公共代码:release, debug, amazon, facebook在文件夹中app/src/main/

现在,因为有一个OptionalVerifiesImpl.java在用于暂存变体构建中具有真实代码doVerify(Context context),而另一个OptionalVerifiesImpl.java只是存根,没有实现doVerify(Context context)用于在 prod 变体构建中使用。

所以问题是:

OptionalVerifiesImpl.java真正的实现应该放在哪里/哪个文件夹中?以及存根OptionalVerifiesImpl.java应该放在哪里,以便在制作阶段变体时构建OptionalVerifiesImpl.java带有代码实现的代码实现,而当制作产品变体构建存根时,OptionalVerifiesImpl.java将构建其中的一个?

0 投票
0 回答
27 浏览

android - 为发布/调试 arm/x86 aar 库定义自定义构建类型

我有以下进口:

我希望我的应用程序能够在我选择 arm/x86 的平台上运行,基于我从 Android Studio 中选择的构建变体。

如何在 Gradle 中进行设置,以便能够为 x86 和 arm 进行 x86 调试构建或 arm 调试构建或发布构建。

我只有 2 个库来包括 mavapi-x86.aar 和 mavapi-arm.aar。是否可以将它们都包含在内并在两个平台 arm/x86 中正确运行?

0 投票
0 回答
33 浏览

android - 在android中的firebase上处理firestore的构建类型和productFlavors

我有一个 android 应用程序,我们在其中同时使用 buildType 和 productFlavors。目前我们有 3 种 buildType(QA、RC 和 Production)和 15 种不同的 productFlavor(com.companyname.employee.general、com.companyname.employee.domain1、com.companyname.employee.domain2.. 等)。我们根据具有唯一应用程序 ID(generalQa、generalRc、generalProduction、domain1Qa、domain1RC 等)的不同风格来分离不同的应用程序。

但是现在我们还没有在 firebase 上分离任何东西,并且在一个 singleProject 中接收每个 buildType 和 flavor 的所有数据(已经为不同的 Application ID 注册了不同的应用程序。主要是我们使用 firebase 进行分析和崩溃分析)。但是现在我们将使用 firestore,为此我想在我的 buildType 上将它分离出来,它可以支持所有的 buildFlavour。

谁能建议在android中执行此操作的最佳方法以及如何在android文件系统中构造它?

0 投票
0 回答
33 浏览

android - 基于构建类型生成 Javadoc?

我在 Android 库项目 (build.gradle) 中定义了一些构建类型:

而且,我们在同一个 build.gradle 中提供了 Javadoc 任务:

现在,我会从 Javadoc 中排除一些高级课程:

我想创建一个额外的 Gradle 任务,这将有助于保留上述排除的 class_name.java(用于高级构建)。

是否可以使用自定义 gradle 任务?