将Eclipse项目导入Android Studio后,我看到两个build.gradle文件:

1 - <PROJECT_ROOT>\build.gradle
2 - <PROJECT_ROOT>\app\build.gradle

第一个版本较短,第二个版本包含compileSdkVersion等的定义.

拥有两个独立文件的目的是什么?是否有单独的构建任务?

推荐答案

<PROJECT_ROOT>\app\build.gradle代表app module.

<PROJECT_ROOT>\build.gradle"Top-level build file",您可以在其中添加所有子项目/模块通用的配置选项.

如果您在项目中使用另一个模块,则作为本地库,您将拥有另一个build.gradle个文件: <PROJECT_ROOT>\module\build.gradle

对于顶级文件中的example,可以指定以下常见属性:

buildscript {
    repositories {
        mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0'
    }
}

ext {
    compileSdkVersion = 23
    buildToolsVersion = "23.0.1"
}

在你app\build.gradle岁的时候

apply plugin: 'com.android.application'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion rootProject.ext.compileSdkVersion
    buildToolsVersion rootProject.ext.buildToolsVersion
}

Android相关问答推荐

在Android Studio中陷入了不兼容的Gradle版本的循环

ENV变量在gradle进程中没有更新

Kotlin Gzip字符串未按预期工作

在卡片上创建圆角底部边框

Android Studio -未显示布局预览(不推荐使用安全管理器)

为什么当我在装有Firebase的安卓系统中登录苹果时,收到的邮箱为空?

如何阻止Gradle在编译时生成app-metadata.properties

使用Android Jetpack Compose,为子Composable定义ViewModel是不是一种糟糕的做法?

安卓喷气背包组成倒计时动画

如何在DownloadManager Android中显示ProgressBar和Complete Listener

触发PurchasesUpdatedListener回调时,billingClient.launchBillingFlow之前设置的成员变量丢失

在c中更新MVVMCross中TextView的Alpha#

从不可组合回调打开可组合屏幕

从 Jetpack Compose 中的 IconButton 中删除黑色色调

在 Jetpack Compose 中重用具有重复代码的列

插入查询室 OnConflictStrategy.REPLACE

我应该使用 Bluetooth Classic 还是 Bluetooth LE 与我的移动应用程序通信?

Google Play 控制台您的应用是否使用广告 ID?

compose FontFamily 错误:必须初始化变量

单个用户可以在 Firebase 身份验证中将多个电话号码链接到他的帐户吗?