Articles of gradle

如何设置Android库模块并被Android Studio中的多个项目引用?

我的公司正在Android Studio上制作几个Android项目,它们都共享一些类似的代码,例如自定义视图,自定义HTTP客户端和许多其他东西。 我面临的问题是,我是Android Studio的新手,我不知道如何将这些公共代码跨多个项目提取到这些项目将引用的单个Android库模块。 在Eclipse中它非常简单,只需创建一个新的Android库项目,然后在那里移动代码,并设置Android应用程序项目以引用公共库。 如何通过Android Studio进行重构?

Android AssertJ 1.0.0与Android gradle 1.1.1

这是我的build.gradle一部分,它有冲突: … dependencies { classpath ‘com.android.tools.build:gradle:1.1.1’ } … testCompile( ‘com.squareup.assertj:assertj-android:1.0.0’ ) … 我在日志中看到的问题: WARNING: Conflict with dependency ‘com.android.support:support-annotations’. Resolved versions for app (21.0.3) and test app (20.0.0) differ. 显然它从类路径中删除了冲突的依赖。 我不确定它是gradle还是android gradle插件。 我接下来试过了: testCompile( ‘com.squareup.assertj:assertj-android:1.0.0’ ) { exclude group: ‘com.android.support’, module: ‘support-annotations’ } 但我仍然有编译错误,因此排除了依赖。 我接下来试过了: configurations.all { resolutionStrategy { // fail eagerly on version conflict (includes […]

创建预构建事件以将文件复制到Android应用程序中的资源文件夹

我有这个项目结构: ProjectFolder / IosFolder,AndroidFolder,CommonFolder现在Android应用程序使用它的资产文件夹中的文件。 但我们决定为相同的文件制作Common文件夹。 你可以帮我制作function女巫会在应用程序构建之前将文件从Common文件夹(这个文件夹在我的项目中,所以在Android Studio中我看不到它)复制到android 资源文件夹吗? Common文件夹中将包含一些.json文件和字体文件。 据我所知,我需要在build.gradle文件中编写这样的函数: task copyFiles(type: Copy) copyFiles { description = ‘Copy files’ from ‘Common/’ into ‘Android/{projectName}/app/src/main/assets’ } 这是我的档案: apply plugin: ‘com.android.application’ repositories { mavenCentral() } android { compileSdkVersion 23 buildToolsVersion “23.0.2” defaultConfig { applicationId “amc.amc_mobile_promo2” minSdkVersion 17 targetSdkVersion 23 versionCode 1 versionName “1.0” //For Flurry multiDexEnabled = true […]

来自非活动更改列表的文件已修改

我早上打开了我的项目,这一行出现在Gradle app模块中。 有三个选项: Move changes , Save Changelist Move changes和Ignore 。 有人知道什么是错的,我该怎么办?

Gradle获取特定任务的当前风格

我正在尝试处理google-services.json和不同的风格。 文档说我们需要根文件夹中的文件。 我有一个任务,可以轻松地将文件从flavor文件夹复制到根文件夹: task CopyToRoot(type: Copy) { def appModuleRootFolder = ‘.’ def srcDir = ‘src’ def googleServicesJson = ‘google-services.json’ outputs.upToDateWhen { false } def flavorName = android.productFlavors.flavor1.name description = “Switches to $flavorName $googleServicesJson” delete “$appModuleRootFolder/$googleServicesJson” from “${srcDir}/$flavorName/” include “$googleServicesJson” into “$appModuleRootFolder” } 然后,在afterEvaluate I force afterEvaluate { processFlavor1DebugGoogleServices.dependsOn CopyToRoot processFlavor1ReleaseGoogleServices.dependsOn CopyToRoot } 这仅适用于1种风味(静态定义)。 如何为每种口味做到这一点? 我有4种口味。 […]

在Android中启用MultiDex支持以在Eclipse中实现65K +方法

我正在尝试在eclipse中构建Multidex apk,但无法成功。 我尝试了以下步骤,在Android应用程序中配置Multidex支持: 我已将位于/ extras / android / support / multidex /的Multidex库添加到我的项目中。 由于我的应用程序有自定义应用程序类,我已将android.support.multidex.MultiDexApplication类扩展到我的应用程序。 我仍然无法建立apk。 Android开发人员也没有任何关于在eclipse中构建Multidex apk的文档,它只有gradle和Android Studio的文档。

用于gradle的Android DSL文档

对于gradle,可以为dsl提供一组基本文档: http : //www.gradle.org/docs/current/dsl/ 也许我只是真的失明了,但我似乎无法为Androidfind一套等效的详细文档。 🙁 任何帮助将不胜感激。 🙂

Android Studio导入模块Gradle构建错误

我试图在Android Studio(GameBaseUtils)中添加一个目录作为依赖项。 我已经看到其他SO答案只是为他们的特定问题发布正确的gradle配置,但是我不明白我如何能够根据我的情况调整他们的答案。 这是我做的: 第一步:文件 – >导入模块 – >导航到目录并选择它。 第二步 – 文件 – >项目结构 – >模块 – >选择我的应用程序 – >依赖项 – >将模块添加为项目的依赖项。 现在我的代码没有任何红线表示导入模块时出错。 但是,当我选择构建时,我收到以下错误: Gradle: package com.google.example.games.basegameutils does not exist Gradle: cannot find symbol class BaseGameActivity Gradle: cannot find symbol variable super … 这是我的应用程序的build.gradle文件 buildscript { repositories { mavenCentral() } dependencies { classpath ‘com.android.tools.build:gradle:0.4’ } […]

如何复制调试资产以进行unit testing

我有一个android库gradle项目。 我需要将一些文件复制到资源文件夹以进行robolectricunit testing。 要做到这一点,我已经定义了一个复制任务: task copyDebugAssets(type: Copy) { from “${projectDir}/somewhere” into “${buildDir}/intermediates/bundles/debug/assets” } 但我无法将此任务添加为processDebugResources任务的依赖项: processDebugResources.dependsOn copyDebugAssets 因为这个错误: 无法为com.android.build.gradle.LibraryExtensiontypes的对象获取未知属性’processDebugResources’。 现在我必须在unit testing之前手动执行此任务: ./gradlew clean copyDebugAssets test 我该如何解决?

如何在AIDE中使用库

我对Gradle不太熟悉,但据我所知,你应该能够直接从互联网上提取图书馆? 我按照项目的指示,但收到了错误 AIDE不支持远程maven回购吗? 我确认有问题的图书馆确实存在于jcenter网站上。 我不确定如何制作本地maven存储库。 我试图从jcenter下载相关文件并将它们放入… / maven-repo / com / melnykov / floatingactionbutton / 1.0.3并在设置中将AIDE指向… / maven-repo,但这没有做任何事情。