Articles of gradle

无法在osx yosemite上从gradle在Android工作室上运行ndk-build

我想在MAC OSX Yosemite的Android Studio 1.0项目中从我的build.gradle运行ndk-build。 task ndkBuild(type: Exec) { commandLine ‘ndk-build’, ‘-C’, file(‘src/main’).absolutePath } 我在local.properties文件中指定了ndk-dir,但是我收到了这个错误 A problem occurred starting process ‘command ‘ndk-build’ 如果我从命令行运行gradle脚本,那么一切都成功构建 ./gradlew :myproject:assembleDebug 因此,由于某种原因,IDE无法调用ndk-build。 我在Android studio中启用了一些调试信息,我有以下错误 Caused by: java.io.IOException: error=2, No such file or directory 因此IDE无法findndk-build exe,但是从IDE内部的终端运行可以findndk-build exe。 谢谢

Android Studio 0.5.2 Gradle Refresh Project失败

更新了我的活动日志 最后编辑在尝试了所有可能的解决方案后,我发现我已经全面安装了Windows。 这样做我注意到这是一个防火墙问题,我的防病毒软件阻止了studio64.exe process. 我刚刚安装了Android Studio 0.4.2,然后立即更新到0.5.2而无需打开或创建任何新项目。 我更新了Android SDK,然后创建了一个新项目。 即使我试图更改本地gradle分发,我仍然收到Gradle Refresh失败的错误,似乎没有任何工作,我尝试Gradle回复的所有内容:“请修复您的Gradle配置”… 这件事发生在我身上,因为我从未更新到Android工作室5.1。 我尝试使用Gradle 1.10和1.11以及可从网站http://developer.android.com/sdk/installing/studio.html下载的安装工具包中包含的Gradle包装器 这是我的gradle文件: apply plugin: ‘android’ android { compileSdkVersion 19 buildToolsVersion “19.0.3” defaultConfig { minSdkVersion 8 targetSdkVersion 19 versionCode 1 versionName “1.0” } buildTypes { release { runProguard false proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.txt’ } } } dependencies { compile ‘com.android.support:appcompat-v7:+’ compile fileTree(dir: ‘libs’, include: […]

com.android.builder.packaging.DuplicateFileException:在APK META-INF / maven / com.fasterxml.jackson.core / jackson-databind / pom.xml中复制的重复文件

我正在创建一个使用RestAPI来获取数据的应用程序,对于该操作,我使用改造2,okhttp3和jackson将json解析为对象,我的应用程序也使用Firebase云消息传递 当我编译我的代码时,它给了我以下错误,我无法运行它 错误:任务’:app:transformResourcesWithMergeJavaResForDebug’的执行失败。 com.android.build.api.transform.TransformException:com.android.builder.packaging.DuplicateFileException:在APK META-INF / maven / com.fasterxml.jackson.core / jackson-databind / pom.xml File1中复制的重复文件: /Users/silent/work/silentinfotech/DoorEye/app/libs/jackson-databind-2.7.2.jar文件2:/Users/silent/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson。芯/jackson-数据绑定/ 2.2.2 / 3c8f6018eaa72d43b261181e801e6f8676c16ef6 /jackson-数据绑定-2.2.2.jar 我正在使用Android Studio 2.1.1和OS X EI Capitan 10.11.2 一些库添加在项目libs文件夹中 转换器-jackson-2.0.2.jar jackson的注解- 2.7.0.jar jackson核心2.7.2.jar jackson-数据绑定- 2.7.2.jar 我的build.gradle文件 apply plugin: ‘com.android.application’ android { compileSdkVersion 23 buildToolsVersion “23.0.2” defaultConfig { applicationId “com.silentinfotech.dooreye” minSdkVersion 17 targetSdkVersion 23 versionCode 1 versionName “1.0” […]

Android用于发布和调试版本的单独字符串值

每次我发布我的应用程序时,我都会将所有的url字符串和一些键从测试更改为生产。 我这样做的方法就是在发布之前注释掉测试字符串。 有没有更好的方法来处理基于构建types的字符串?

如何使用Gradle配置Proguard?

我最近切换到Android Studio / Gradle,我想知道如何在build.gradle脚本中配置ProGuard。 我是Gradle的新手,但我认为,配置Proguard任务将是一个好主意(如Proguard项目文档中所述)。 我想配置Proguard使用’printmapping’设置将映射保存在不同文件中,以用于不同的产品风格 task myProguardTask(type: proguard.gradle.ProGuardTask) { printmapping file(“test.txt”) } 但它在执行任务时崩溃了 Gradle: Execution failed for task ‘:module:proguardFlavorVariant’. > proguard.ConfigurationParser.(Ljava/io/File;Ljava/util/Properties;)V 在较新版本的Gradle’android‘插件中,似乎包含Proguard,我认为这可能是原因,为什么按照Proguard文档中的说明配置Proguard任务不起作用。 但我没有find关于如何使用较新的android-gradle-plugin执行此操作的任何文档。 谢谢你的帮助!

如何在运行Android Studio gradle build时使用所有CPU核心/线程?

我正在寻找Android Studio / Gradle中的参数或配置,它可以设置构建,以便在构建期间使用我的所有CPU核心。 即如果我有一个四核CPU并且每个核心运行8个线程,我如何优化构建,以便它将使用它可以获得的每个资源(当然并行)? 谢谢!

如何使用gradle生成签名和未签名的APK?

我需要使用gradle命令行生成unsigned和signed release apks( gradlew assembleRelease是我现在使用的命令) apks必须对齐。 我检查了这个: 使用Gradle构建未签名的APK,但它似乎是一种旧方法来实现这一点,现在它不起作用,并且在最新版本的android和gradle编译中发生了一些变化。 而且我还需要同时生成两个apks,不仅仅是发布模式或无符号模式

为每个资源文件夹构建Gradle

是否可以配置Gradle来构建几个android apk文件,其中每个只使用一个资源types文件夹? 我的意思是: 集结hdpi.apk 集结mdpi.apk 集结xhdpi.apk 我知道我可以在构建之前简单地删除某些文件夹,但如果我能“自动化”它会很好。 是否可以使用gradle“flavors”?

assembleRelease任务依赖 – 请求密钥库密码

为了避免以纯文本forms写入密钥库密码,我正在尝试为android Gradle插件创建的assembleRelease任务添加依赖项。 我已经检查了Gradle文档操作现有任务但我无法将依赖项放在应该的位置 这是我的任务,在android插件上方的$ root $ / myApp / build.gradle中定义。 task readPasswordFromInput < Enter keystore password: ‘) } apply plugin: ‘android’ 然后,我尝试了Gradle提供的两种可能性: task.dependsOn和task.doFirst ,但都没有效果。 后者似乎被忽略了,而dependsOn确实添加了依赖关系,但在依赖关系链中为时已晚。 运行./gradlew任务 – 都会打印出来 :assembleRelease – Assembles all Release builds [libs:ActionBarSherlock:bundleRelease, libs:DataDroid:bundleRelease, libs:SlidingMenu:bundleRelease] :compileRelease … [SEVERAL TASKS] … :packageRelease … [SEVERAL TASKS] … :readPasswordFromInput 问题是,任务packageRelease中需要密钥库密码 正如旁注,这是我想要的 buildTypes { release { def […]

Android Studio忽略–core-library标志

我有一个项目,我想在我的计算机上配置。 在其他计算机上它可以工作,但每当我使用0.5.2时,使用旧版Android Studio 0.4.0 问题是我启动应用程序后显示错误 构建脚本错误,找不到支持的Gradle DSL方法:’coreLibrary()’! 可能的原因可能是: – 您正在使用Gradle版本,其中方法不存在 – 您没有应用提供方法的Gradle插件 – 或者构建脚本中存在错误 但为了使它工作,我必须使用这个标志! 我已经尝试在设置> Android编译器>“添加 – 核心库”标志中启用它,但它没用… 在gradle我有下一部分代码: dexOptions { coreLibrary true; } 此错误仅在激活此行后显示…如果没有它们,则无效… 我应该如何修复这个? 也许这是因为不同的版本..如果是的话那么我应该如何写它才能使它工作? 更改为coreLibrary = true之后它会在运行–core-library标志使用后编译Gradle fine BUt stille需要….但我已经在设置中将其设置为true … 它显示不是几乎相同的错误: Error:Execution failed for task ‘:BusKg:preDexDebug’. > com.android.ide.common.internal.LoggedErrorException: Failed to run command: D:\Programms\Programms\adt-bundle-windows-x86_64-20131030\sdk\build-tools\android-4.4\dx.bat –dex –output D:\Android2\BUS.kg\marshrutka\BusKg\build\pre-dexed\debug\annotations-api-6.0.26-27e56569b50edbdd453f9bc0e568cde1fbfa621b.jar C:\Users\Viacheslav\.gradle\caches\modules-2\files-2.1\org.apache.tomcat\annotations-api\6.0.26\50aeafa144ed17913ed44d18ac61afd505a9e3e\annotations-api-6.0.26.jar Error Code: 1 […]