Articles of android gradle

为什么我在将Google翻译客户端库添加到Android项目时遇到此错误?

我正在尝试按照这些说明将Google Translate客户端库添加到我的Android项目中,这会告诉我将此行添加到我的库项目的build.gradle中的依赖项(这是我的应用程序项目的依赖项): compile group: 'com.google.cloud', name: 'google-cloud-translate', version: '0.4.0' 但是当我这样做,我得到这个错误: Error:Execution failed for task ':typeSmart:transformResourcesWithMergeJavaResForDebug'. > com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/LICENSE File1: C:\Users\Barry\.gradle\caches\modules-2\files-2.1\com.google.auto.value\auto-value\1.1\f6951c141ea3e89c0f8b01da16834880a1ebf162\auto-value-1.1.jar File2: C:\Users\Barry\.gradle\caches\modules-2\files-2.1\org.codehaus.jackson\jackson-core-asl\1.9.11\e32303ef8bd18a5c9272780d49b81c95e05ddf43\jackson-core-asl-1.9.11.jar File3: C:\Users\Barry\.gradle\caches\modules-2\files-2.1\com.google.inject\guice\4.0\f990a43d3725781b6db7cd0acf0a8b62dfd1649\guice-4.0.jar 我明白这个错误在技术上意味着什么,而不是为什么在这种情况下出现。 我试图通过添加一个packagingOptions块到我的build.gradle每个这个答案 (和其他人),但它没有帮助(加上它是非法的)。 Google似乎不太可能发布内部不一致的API。 这个问题可能是特定于我的环境的。 我的应用程序包含一个库模块,其中包含我的大部分代码。 这是应用程序模块的依赖。 我怀疑这跟它有关系。 我正在使用:Gradle 2.14.1; Android Studio 2.2.2; 构build工具25.0.0。 您是否已成功将Google翻译客户端库添加到您的Android项目中? 如果是这样,怎么样? 提前致谢…

如何在build.gradle中包含多个存储库?

Android Studio不会让我build立这个。 它说com.mixpanel.blahblahblah没有find。 com.mixpanel.blahblahblah来自mavenCentral()我知道问题是因为它不承认mavenCentral(),因为它只承认其他回购。 我怎样才能包括这两个项目,并使这个项目工作? apply plugin: 'com.android.application' apply plugin: 'crashlytics' buildscript { repositories { maven { url 'http://download.crashlytics.com/maven' } } dependencies { classpath 'com.crashlytics.tools.gradle:crashlytics-gradle:1.+' } } repositories { maven { url 'http://download.crashlytics.com/maven' } mavenCentral() } android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { applicationId "co.dilmile.dilmile" minSdkVersion 9 targetSdkVersion 21 versionCode 1 versionName "1.0" } […]

Android Studio:检查自定义构buildtypes

我试图让一段代码检测一个BuildType,但我有点卡住了。 每当我为IF语句input代码时,就会这样说 不兼容的types。 必需:布尔值。 find:java.lang.String 当我想如果在最后有.toString()时它必须是一个string。 我的代码检测它是: String buildtype = BuildConfig.BUILD_TYPE.toString(); if (buildtype = "admin") { //Do some admin stuff here. } 我已经在我的build.gradle文件中设置了pipe理员BuildType,如下所示: admin { debuggable true jniDebuggable false renderscriptDebuggable false minifyEnabled false zipAlignEnabled true } 任何帮助是极大的赞赏。 谢谢

警告:忽略Android API工件com.google.android:android:4.1.1.4

今天上午,Android Studio将外部库添加到我的项目中。 现在当我build立我的项目时, Warning:Ignoring Android API artifact com.google.android:android:4.1.1.4 for debug 有谁知道这是什么意思?

Android构build不会合并库中的清单

我们有多个项目,取决于许多Android的lib模块。 为避免应用程序清单中出现重复的XML标记,我们将相关的接收者,服务和活动放在各自的模块中。 直到今天,我们使用: Android Studio:2.2.1 gradle:2.1.3 buildToolsVersion:23.0.3 今天我们已经更新到: Android Studio:2.3 gradle:2.3.0 buildToolsVersion:25.0.0 直到这个更新,一切正常,清单合并,我们有冲突,我们修复它们。 至于我们所做的更新,清单将不会合并! —更新1 — 我们使用了Merged Manifest视图,看到它并不包含合并中的清单,它从模块清单中合并的唯一东西就是权限,例如,如果我添加一个新的权限给模块显示它只会合并它,而不是其余的元素! 我保证有很多东西要合并! —更新2 — 看来,应用程序标签之外的所有东西都会合并到主清单中,而应用程序标签中的所有东西都不会。 —更新3 — 不合并的模块: 摇篮: apply plugin: 'com.android.library' android { compileSdkVersion 23 buildToolsVersion '25.0.0' defaultConfig { minSdkVersion 16 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' […]

Gradle编译错误“没有方法的签名”

当我尝试从terminal运行./gradlew build.gradle时,出现以下错误: > No signature of method: org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.compile() is applicable for argument types: (org.gradle.api.internal.project.DefaultProject_Decorated) values: [project ':TestMobile'] Possible solutions: module(java.lang.Object) 我已经尝试在root build.gradle文件和子项目上应用java插件。 但仍然有同样的错误。 我有以下项目结构: ProjectRepos ->build.gradle ->settings.gradle ->TestMobile (Android plugin) ->build.gradle ->ThirdParty/SlidingMenu (Android library) ->build.gradle 顶级build.gradle包含: // Top-level build file where you can add configuration options common to all sub- projects/modules. buildscript { repositories { […]

Android中每个dex文件的方法限制为64K

我遇到了这个问题java.lang.IllegalArgumentException: method ID not in [0, 0xffff]: 65536 ,我决定从dex文件中排除一些方法。 我的gradle.build: compile ('com.google.android.gms:play-services:+') { exclude group: "com.google.android.gms.analytics" exclude group: "com.google.android.gms.games" exclude group: "com.google.android.gms.plus" exclude group: "com.google.android.gms.drive" exclude group: "com.google.android.gms.ads" } 我认为这段代码是错误的,因为错误method ID not in [0, 0xffff]… 。 如何排除Google Play服务的不必要部分? 我只使用地图和GCM。 更新。 谢谢reVerse。 这是非常有用的代码。 有一个获取方法的脚本(也可以看到现有的软件包的名称) https://gist.github.com/JakeWharton/6002797 ( source ./dex.sh; dex-method-count-by-package test.apk ) 在使用reVerse的答案代码片段之前 Count of methods / […]

AndroidAnnotations找不到符号类

我在Android Studio gradle项目中使用AndroidAnnotations。 我目前在编译期间从AA中得到错误输出: cannot find symbol class MyActivity_ 错误输出并不妨碍构build应用程序 – 它不是一个真正的编译错误,因为类在那里,似乎这只是编译过程中的一个不幸的时机问题。 有什么我可以做的,以避免AA的这些假阳性错误? 每当我编译出现“假”错误时,很容易错过真正的错误。

编译appcompat v7:26. +为融合位置提供者添加播放服务时出错

我有一个问题,并已经看过可能重复的问题和答案,我认为这一个不被其他人回答,所以在这里问。 我更新了我的播放服务,以利用融合位置提供程序,现在我的gradle中的appcompat显示错误。 所以我创build了一个新项目,并检查了新项目上的build.gradle,并且具有完全相同的appcompat,但是我的项目显示错误。 apply plugin: 'com.android.application' android { compileSdkVersion 26 buildToolsVersion "26.0.0" defaultConfig { applicationId "au.com.itmobilesupport.sqltwo" minSdkVersion 17 targetSdkVersion 26 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) compile […]

使用不同的VersionCode进行Debug / Release android gradle build

我想申请不同的VersionCode来制作apk文件。 对于debugging只修复它为1 ,并释放defaultConfig中指定的任何数字。 下面的代码给出mypackage-release-1.apk文件为assembleRelease工件,这不是预期的。 我预计mypackage-release-10111.apk 。 为什么debug { defaultConfig.versionCode=1 }会影响assembleRelease工件? defaultConfig { versionCode 10111 versionName '2.5.4' minSdkVersion 10 targetSdkVersion 21 } signingConfigs { debug { project.ext.loadSign = false defaultConfig.versionCode = 1 // Why this value applied to assembleRelease? } release { project.ext.loadSign = true applicationVariants.all { variant -> variant.outputs.each { output -> def file = […]