Articles of gradlew

如何在Android测试中显示日志文件System.out.println()?

我做了很多搜索,但遗憾的是无法使用它。 根据我的搜索,我发现我需要在build.gradle文件中添加以下代码。 但是,Gradle似乎无法识别它,并且总是说Geadle DSL method not found: test() test { testLogging.showStandardStreams = true testLogging.events(“passed”, “skipped”, “failed”, “standardOut”, “standardError”) afterTest { desc, result -> println “Executing test ${desc.name} [${desc.className}] with result: ${result.resultType}” } } 更新 我可以确认上面的代码或者比以下代码更好,如果你创建一个测试项目并将所有测试用例移到其中而不是src/test/java和src/androidTest/java在主项目中。 这是因为你可以在build.gradle文件中应用java插件。 但是,在任何已定义com.android.* build.gradle文件中都不可能使用以下代码。 由于这两个库不兼容:( apply plugin: ‘java’ evaluationDependsOn(‘:YOUR-LIB’) test { testLogging.showStandardStreams = true testLogging { events “passed”, “skipped”, “failed”, “standardOut”, […]

“testBuildType”可以在Android项目的build.gradle文件中有条件吗?

我有两种构建types的应用程序:调试和发布。 我想对两种构建types执行测试。 但目前只测试了一种Build Type。 默认情况下,它是调试构建types,但可以使用以下命令重新配置:android {… testBuildType“release”} 我想逐个执行connectedDebugAndroidTest和connectedReleaseAndroidTest而不更改gradle文件。 是否有可能使“testBuildType”成为条件? 因此,根据gradle任务中的构建variables(connectedDebugAndroidTest和connectedReleaseAndroidTest),它将对该构建执行测试。

有没有办法将签名的apk上传到crashlytics?

我正在尝试将我的应用程序上传到crashlytics。 我已经尝试在Android Studio中构建应用程序,但我不断收到此消息。 见截图。 然后我尝试了命令行 ./gradlew assembleRelease crashlyticsUploadDistributionRelease :app:crashlyticsUploadDistributionRelease Uploading /Users/jgs/Projects/Personal/APP_NAME/app/build/outputs/apk/app-release-unsigned.apk to Crashlytics… WARN – Crashlytics halted compilation because it can’t distribute the unsigned APK: /Users/jgs/Projects/Personal/APP_NAME/app/build/outputs/apk/app-release-unsigned.apk :app:crashlyticsUploadDistributionRelease FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ‘:app:crashlyticsUploadDistributionRelease’. > Distribution upload failed. * Try: Run with –stacktrace option to get […]

gradlew build和gradlew assembleRelease之间有什么区别

我想在gradle的帮助下从命令行构建apk。 我应该使用哪个命令来构建仅用于发布版本的apks?

Gradle预处理资产

我想在构建阶段对资产做一些事情。 这是我的gradle脚本。 project.afterEvaluate{ prepareDependencies.dependsOn(“generateMyAssets”) } task generateMyAssets() { copy { from(‘/’) { include ‘**/*.html’ filter { line -> line.replaceAll(/(<img src=https://stackoverflow.com/questions/22366334/gradle-preprocess-assets/\")(?!(.*:.*))/, '<img src="assets:') } } into 'assetsRegxped/' } } 我的问题是,如果风味如何灵活检索资产文件夹的名称(路径)。 另外我怎么才能改变构建版本?

IllegalArgumentException:已添加:Landroid / support / v4 / accessibilityservice / AccessibilityServiceInfoCompat $ AccessibilityServiceInfoIcsImpl;

我在MyProject + Facebook api上使用Android Studio + gradle作为库。 请参阅以下设置。 我已经尝试删除support-v4的所有引用(r7或18.0.0)并用support-v13替换它们,但是带有v4的消息仍然存在。 我也注意到support-v4-r7出现在外部库中,即使它根本没有被引用。 那会是问题吗? MyProject build.gradle: buildscript { repositories { mavenCentral() } dependencies { classpath ‘com.android.tools.build:gradle:0.5.+’ } } apply plugin: ‘android’ repositories { mavenCentral() maven { url “https://raw.github.com/ark/ark/master/releases/” } } dependencies { compile ‘com.andreabaccega:android-form-edittext:1.0.3’ compile ‘com.astuetz:pagerslidingtabstrip:1.0.0’ compile ‘org.codehaus.jackson:jackson-mapper-asl:1.9.12’ compile ‘com.octo.android.robospice:robospice-spring-android:1.4.7’ compile ‘com.google.android.gms:play-services:3.1.36’ compile files(‘libs/imageloader-core-1.5.8.jar’) compile project(‘:libs:Facebook’) } android […]

从Android工作室和控制台构建的Android APK具有不同的SHA指纹

在构建签名发布APK时,我遇到了以下内容:如果我使用build.gradle文件(仅限相关部分)从android工作室(通过Build – > Generate Signed APK… )构建签名apk: signingConfigs { release { storeFile file(‘/keystore/location/mykeystore.keystore’) storePassword ‘storepassword’ keyAlias ‘key’ keyPassword ‘keypassword’ } } buildTypes { release { signingConfig signingConfigs.release } } 生成的apk指纹是YY:YY 。 但是,如果我从控制台构建我的APK,就像这里描述的build.gradle一样: buildTypes { release { } } 并使用相同的密钥库文件对其进行签名,生成的apk指纹为XX:XX 。 此外,两个SHA指纹都与我的调试证书SHA指纹不同。 这种行为的原因是什么? 我正在使用buildToolsVersion 23.0.0 android studio gradle版本1.3.0 android sdk工具版本24.3.4 android studio版本1.3.1

./gradlew lint说“没有问题”,但分析 – >检查代码发现问题

我在Android Studio中遇到了一个奇怪的问题:手动启动linter via Analyze -> Inspect Code -> “Whole project” find一些问题,但是如果我这样做的话 ./gradlew lint 它说,在控制台中 Ran lint on variant release:find0个问题 Ran lint on variant debug:find0个问题 我的gradle文件中没有lintOptins ,但使用lint.xml ,这里是: 我的问题:如何使控制台显示与android studio中的检查相同的错误?

一个gradlew做什么

我有一个项目,这是一个日食项目。 现在我正在使用带有gradle 2.2.1的Android Studio。 我发现当我使用Android Studio创建项目时,它将生成一个gradlew文件,它可能包含一些CLI函数。 但是当我将项目从eclipse转移到Android Studio时,我没有find我的gradlew文件。 所以,这是我的问题:gradlew文件究竟做了什么? 它可以定制吗?

Findbugs android gradle插件

我有一个android项目。 我想在我的项目中引入findbugs作为gradle插件。 我尝试编辑项目的build.gradle ,如下所示。 buildscript { repositories { mavenCentral() maven { url ‘https://maven.fabric.io/public’ } } dependencies { classpath ‘com.android.tools.build:gradle:1.0.0+’ classpath ‘io.fabric.tools:gradle:1.+’ } } apply plugin: “java” apply plugin: “findbugs” findbugs { toolVersion = “2.0.1” sourceSets = [sourceSets.main] ignoreFailures = false reportsDir = file(“$project.buildDir/findbugsReports”) effort = “max” reportLevel = “high” includeFilter = file(“$rootProject.projectDir/config/findbugs/includeFilter.xml”) excludeFilter = file(“$rootProject.projectDir/config/findbugs/excludeFilter.xml”) […]