Articles of android gradle

使用Gradle在Android Studio中添加Youtube Data API

Android Studio无法在我的应用程序中find必要的YouTube课程。 我正在回收以前项目的一些代码。 在之前的项目中,我刚刚导入了谷歌提供的jar文件。 但我想学习使用gradle的更好方法。 我成功之前使用过gradle。 当它工作时它很棒。 我之前已经能够使用gradle添加依赖项了。 但由于某种原因,我无法获得谷歌lib下载或激活或任何它需要做的事情,以便我的IDE可以find所有这些缺少youtube符号。 我已经完成了通常的gradle,重建和清洁同步,但它没有帮助。 这是我的build.gradle文件: apply plugin: ‘com.android.application’ repositories { mavenCentral() } android { compileSdkVersion 22 buildToolsVersion “22.0.1” defaultConfig { applicationId “dayspringwesleyan.org.dayspringwesleyanchurch” minSdkVersion 10 targetSdkVersion 22 versionCode 1 versionName “1.0” } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’ } } } dependencies { //compile fileTree(dir: ‘libs’, include: […]

生成的.aar文件提供空classes.jar

我建了一个android工作室项目。 我想在另一个项目中将它用作库。 我遵循以下步骤: 更改了应用插件: ‘com.android.application’到’com.android.library’ 从defaultConfig {}中删除了applicationId 点击同步 这给了我.aar文件在build – > outputs – > aar – > myapp.aar 我在我的其他测试项目中导入了这个.aar文件。 我按照以下步骤操作: 文件 – >新建 – >新模块 – >导入.jar / .aar包 – > myapp.aar 在build.grade中测试应用程序添加了编译项目(路径:’:myapp’) 点击同步。 这在外部库中生成了一个名为myapp-unspecified的文件夹。 我得到所有的res文件,但我没有得到classes.jar中的类文件。 在classes.jar里面我只有MANIFEST.MF 。 我做错了什么或者我错过了什么?

如何在Android Studio中使用forked git项目

我正在从Eclipse切换到Android Studio 。 我有几个第三方库,我添加了function或修改了一点。 由于Eclipse中的库也是项目,我们可以访问代码,所以我没有问题。 在Android Studio中, dependencies compile标记很棒,但在我的情况下,我不能不幸地使用它。 我分叉项目并进行必要的更改,并将项目添加为Android Studio中的模块。 由于库项目已经有settings.gradle和example和库模块,我的项目中有一个混乱,它根本不编译。 有没有人遇到过这样的问题? 怎么做以及分叉库的正确方法是什么?

Android Studio – Gradle – 具有嵌套依赖项的多项目构建

我很久以前就问过这个问题,现在我有时间(没有选择)我已经通过设置一些项目来解决问题。 结构类似于前一个问题中的结构,但有一个扭曲…… ┌Just a folder │ ├── Project 1 – (Pure Java Modules) │ │ │ ├── Module A1 │ ├── Module B1 │ : │ └── Module Z1 │ ├── Project 2 – (Android Libraries Modules) │ │ │ ├── Module A2 │ ├── Module B2 │ : │ └── Module Z2 │ └── […]

一个maven神器可以包含jar和aar吗?

我在Maven Central Repository中有一个库。 对于最新版本,除了正常的.jar之外,我还推了一个.aar存档。 但是我似乎无法让Android Studio使用该库的aar版本。 在我的build.gradle文件中,我有: dependencies { compile ‘com.android.support:appcompat-v7:19.+’ compile ‘com.mygroup:mylibrary:1.2.2’ } 这成功获取了jar文件,但是如何让它使用库的aar版本? 我尝试了很多东西,包括(但不限于): compile ‘com.mygroup:mylibrary:1.2.2@aar’ compile group: ‘com.mygroup’, name: ‘mylibrary’, version: ‘1.2.2’, type: ‘aar’ compile group: ‘com.mygroup’, name: ‘mylibrary’, version: ‘1.2.2’, packaging: ‘aar’ compile group: ‘com.mygroup’, name: ‘mylibrary’, version: ‘1.2.2’, extension: ‘aar’ 但它总是加载jar子。 Gradle是否期望工件仅包含AAR(与匹配的POM)? 我是否需要为lib的AAR版本创建单独的工件?

如何构建包含具有不同compileSdkVersion,targetSdkVersion和minSdkVersion的模块的Android gradle项目?

我的Android库项目由四个模块组成: 项目 基础 厂 V14 V18 以下是IntelliJ的此设置的屏幕截图: 我的模块使用非常特定的Android SDK级别设置: 基础 compileSdkVersion 19 minSdkVersion 14 targetSdkVersion 19 厂 compileSdkVersion 19 minSdkVersion 14 targetSdkVersion 19 V14 compileSdkVersion 17 minSdkVersion 14 targetSdkVersion 17 V18 compileSdkVersion 18 minSdkVersion 18 targetSdkVersion 18 随着Android的新版本的发布,基础和工厂模块可以跟随它们的compileSdkVersion和targetSdkVersion级别。 但是,v14和v18都绝对不能效仿。 我的模块以非常具体的方式相互依赖: 基础 不依赖于任何其他模块 厂 取决于base,v14和v18 V14 取决于基数 V18 取决于基数 所以当我去构建我的项目时,我收到了这个错误: Error:Gradle: Execution failed for task ‘:v14:processReleaseManifest’. […]

如何在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”, […]

Android studio – 执行任务失败’:app:preDexDebug’

当我试图通过Android studio在模拟器中运行应用程序时,我收到错误“执行失败的任务’:app:preDexDebug’” 完整堆栈跟踪: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ‘:app:preDexDebug’. > com.android.ide.common.internal.LoggedErrorException: Failed to run command: e:\developer\Android\sdk\build-tools\21.1.2\dx.bat –dex –output E:\developer\AndroidStudioProjects\OMGAndroid\app\build\intermediates\pre-dexed\debug\support-annotations-21.0.3-c91f7c2a85920982313a91e2dffb704ba92c7823.jar E:\developer\Android\sdk\extras\android\m2repository\com\android\support\support-annotations\21.0.3\support-annotations-21.0.3.jar Error Code: 1 Output: Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. * Try: Run with –info […]

错误:在任务collectDebugMultiDexComponents的配置中发现了一个问题

我已经将Android Studio更新为0.9,将工具更新为21.1.0并且gradle为0.14,因为我想使用新的multiDexEnabled truefunction。 目前我正在使用这种方法https://github.com/casidiablo/multidex管理multidex,一切正常,但multiDexEnabledfunction似乎更好。 但是使用gradle 0.14我得到了这个错误: uses-sdk元素不能有“tools:node”属性 ,我使用@Medo发布的解决方案 “解决”了这个属性 。 但是,如果我使用这种方法,multiDexEnabled将无法工作,我将收到此错误: 错误:find任务’:participantactclient:collectDebugMultiDexComponents’的配置问题。 为属性’manifest’指定的文件’/ Users / danielecampogiani /开发/ Android / Android Studio / Participact客户端/ participactclient / build / intermediates / manifests / full / debug / AndroidManifest.xml’不存在。 知道怎么解决这个问题吗?

错误:在Android gradle库模块unit testing中找不到符号

我在IntelliJ中有一个测试项目(使用Android Studio插件),我正在尝试设置unit testing,如此处所述。 在运行junit测试时,项目似乎无法在src> main> java下find我的源代码。 以下测试 package io.adaptiv.plzwrk.lib; import junit.framework.TestCase; import org.junit.Test; public class AdaptivTest extends TestCase { @Test public void testDoStuff() throws Exception { assertEquals(42, Adaptiv.doStuff()); } } 给出错误 error: cannot find symbol assertEquals(42, Adaptiv.doStuff()); ^ symbol: variable Adaptiv location: class AdaptivTest 我的’测试’课程 package io.adaptiv.plzwrk.lib; public class Adaptiv { public static int doStuff() […]