问题标签 [android-gradle-plugin]

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 投票
2 回答
7973 浏览

android - Android Gradle 合并字符串资源

我想使用 Gradle 创建 2 个不同的 APK(发布和调试),并且我想为它们使用不同的名称('appName' 和 'appName debug')。

我找到了一些解决方案,但对我不起作用:
链接 1
链接 2

我想在设备上安装两个 apk,但出现以下错误:

如果我从中删除config_app_name密钥,main\res\values\config.xml则 Gradle 会说找不到密钥。

我有 3 个清单文件:

是否可以在项目的主要部分使用一个通用键(字符串、整数、维度)并在发布/调试部分覆盖它?

提前致谢。

0 投票
1 回答
7394 浏览

gradle - 将所有依赖项从一个 Gradle 模块导入另一个

我的构建中有两个模块,一个 Android 应用程序和一个 Java 库。(顺便说一句,Java 库是针对 Android 应用程序中的类运行 jvm 测试。由于它需要 Gradle Java 插件并且与 Gradle Android 插件不兼容,因此我不得不将它们分开。)

在 java 模块中,我想自动导入其他模块的所有依赖项,以避免必须保持同步。

如何配置一个模块的compileTest依赖项以匹配另一个模块的compile依赖项?

(欢迎使用这两个插件的替代建议。)

0 投票
1 回答
1243 浏览

android - 使用 gradle 构建的 Android 项目因内存不足错误而崩溃

我有一个最初用 ADT 编码的 android 项目,它对库项目和 jar 文件(如 ActionBarSherlock 和 ViewPageIndicator)有几个依赖项,此时它运行得很好,但我不得不转移到 Android Studio 并从 Eclipse 导出项目以生成gradle 文件,经过一些努力以使其构建,其中包括从几个使用它的库项目中删除 android_support_v4.jar 的使用,并在工作室中创建一个依赖于 android_support_v4 的新空模块并让我的库依赖相反,我能够在我的设备上从 Android Studio 构建和运行项目,但是,一旦应用程序出现,它确实显示了我的主要活动,但它挂起,几秒钟后出现内存不足错误,堆栈跟踪中引用了我使用 ActionBarSherlock 的片段之一,但是我没有更改单个 .java 文件或任何文件另一段源代码,都是添加 .gradle 和 .iml 文件,并从我的库中删除 android_support_v4.jar 文件。

这是我的主模块的 build.gradle 和 settings.gradle 文件:

构建.gradle:

设置.gradle:

还有我的虚拟模块 AndroidSupport 的build.gradle文件:

我什至不知道要开始寻找,因为正如我所提到的,我没有更改任何源代码,任何指针将不胜感激。

编辑 1: 如果它对任何事情有帮助,这是我的 logcat 堆栈跟踪:

编辑 2: 我没有尝试过 Ray 的建议,我只是将 android:largeHeap="true" 添加到我的清单中,它不再因内存不足错误而崩溃,但仍然挂起,然后是 ANR

0 投票
1 回答
10590 浏览

android - 如何使 Android Studio 正确读取(minSdkVersion from)AndroidManifest.xml?

我有一个在 Eclipse 中创建的 Android 项目,导出为 Gradle 构建文件,然后在 Android Studio 中打开。(是的,在 AS 中创建一个干净的项目会容易得多,但我需要支持当前的项目结构。)

否则事情现在大部分都在工作,但仍有一些问题需要解决。在每个 Activity 类中,AS 都会显示此错误:Class requires API level 1 (current min is -1): Activity

在此处输入图像描述

Alt+Enter 提供了一个@TargetApi注释来解决这个问题......但是为什么我必须这样做,当在 中时AndroidManifest.xml,我们有:

AndroidManifest.xml位于项目根目录(Eclipse 默认?)。看起来 Android Studio 没有正确读取其中的设置。该项目仍然可以正常编译。

知道如何摆脱错误吗?

Eclipse 生成的build.gradle看起来像这样:

0 投票
1 回答
358 浏览

android - 特定于测试的应用程序子类

使用 gradle 构建时,是否可以有一个仅用于测试的Application子类?我过去在 gradle 构建系统之前做过类似的事情,但我现在找不到这样做的方法。问题似乎是无法自定义AndroidManifest.xml用于仪器测试的 APK。

0 投票
11 回答
52378 浏览

android - 需要 Gradle 版本 1.8。当前版本是 1.6

有一个新的 Android Studio 更新:https ://sites.google.com/a/android.com/tools/recent/androidstudio030released

链接说:

Gradle 1.8 和 Android Gradle 插件版本 0.6.+ 中的更改使改进的性能成为可能。

所以我像这样更改了我的依赖项:

但我不知道在哪里可以将 Gradle 1.6 更改为 1.8 ...

当我编译应用程序时,我遇到了这个错误:

Gradle:评估项目时出现问题。

需要 Gradle 版本 1.8。当前版本是 1.6

我在哪里可以更改版本?

提前致谢 :)

0 投票
3 回答
6494 浏览

android - 在 Android Studio 中创建新项目后的错误

刚才我将我的 android studio 从 build 130.737825 更新到 build 130.878379。第一次创建项目时,出现以下错误。

是什么原因?

0 投票
3 回答
2285 浏览

android - 无法使用 Android Studio 创建新的 Android 项目

我正在尝试使用 Android Studio 创建 Android 项目。

我已经安装了最新的 Android Studio 并使用help-check for updates.

然后我尝试创建我的第一个 Android 项目,但是在工作室下载之后gradle,它抛出了一个错误:

我不确定有什么问题。

任何人都可以帮我一个忙吗?

0 投票
10 回答
22855 浏览

gradle - Gradle 构建空控制台对象

我正在尝试使用堆栈溢出中的示例让我的 gradle 构建在控制台提示输入密码

当我有这样的陈述时:

当我运行时,我得到了错误

似乎控制台以null. 我读到的这需要 java 6,如果我进入命令提示符并键入java -version我正在运行 Java(TM) SE 运行时环境(build 1.6.0_27-b07)。

Gradle 的 Github 存储库中正在跟踪此问题:Can't use System.console() with the Gradle Daemon

0 投票
2 回答
925 浏览

android - Gradle 中的 Android 模块特定库

我有一个 android 模块 core,我在几个项目中使用它。核心模块具有单元测试(应该如此)。核心模块还依赖于一些外部 jar。模块本身构建良好,我得到了一个漂亮的闪亮 AAR,但我无法构建测试。Gradle(实际上是 dex)抱怨某些库被多次包含。测试使用自定义测试运行器,这是它们唯一的 jar 依赖项。

我的目录层次结构是

我的 build.gradle 是

我相信我的解决方案是拥有这个目录层次结构:

并在maininstrumentTest模块中分别包含罐子。但我不确定我必须在 build.gradle 文件中做什么。我尝试在sourceSets块内添加一个块,其中android包含maininstrumentTest块,每个块都有自己的dependencies部分:

但 gradle 似乎根本没有把它捡起来(很多未解决的名字)。

compileTest目标工作正常并成功完成,但产生以下connectedInstrumentTest错误:

我可以在这里做些什么来摆脱这些错误?