国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

android studio中的build.gradle文件

2019-11-09 18:29:12
字體:
來源:轉載
供稿:網友

本人小白,大學期間,打算開始自學Android,準備用博客寫下所學所得,希望有所收獲,望大家互相幫助

Gradle是一個非常先進的項目構建工具,它使用了一種基于Groovy的領域特定語言(DSL)來聲明項目設置,摒棄了傳統基于xml(如Ant和Maven)的各種繁瑣配置。

在最基礎的HelloWorld項目中有兩個bulid.gradle文件,一個是在最外層目錄下的,一個是在app目錄下的。這兩個文件對構建Android Studio 項目都起到了至關重要的作用。

下面是最外層目錄下的build.gradle文件:

buildscript {    repositories {        jcenter()//這是一個代碼托管倉庫,很多android開源項目都會選擇將代碼托管到jcenter上
                 //聲明了這行配置之后,我們就可以在項目中輕松引用任何jcenter山的開源項目了。    }    dependencies {        classpath 'com.android.tools.build:gradle:2.2.3'//在這dependencies閉包中使用classpath聲明了一個Gradle插件。           }}allPRojects {    repositories {        jcenter()    }}task clean(type: Delete) {    delete rootProject.buildDir}

通常情況下我們并不需要修改這個文件中的內容,除非你想添加一些全局的項目構建配置。

下面是app目錄下的build.gradle文件:

apply plugin: 'com.android.application'           //應用了一個插件,一般有兩種值可選:
1.com.android.application 表示這是一個應用程序模塊
2.com.android.library 表示這是一顆庫模塊
兩個最大的區別是:一個可以之間運行,一個只能作為代碼庫依附于別的應用程序模塊來運行。android {//在這個android閉包中我們可以配置項目構建的各種屬性。
    compileSdkVersion 25  //用于指定項目的編譯版本    buildToolsVersion "24.0.3"  //用于指定項目構建工具的版本    defaultConfig {//在這個defaultConfig閉包中可以對項目的更多細節進行配置。        applicationId "com.example.simple.myapplication"  //用于指定項目的包名,在后面修改時在這里修改        minSdkVersion 21   //用于指定項目最低兼容的android系統版本        targetSdkVersion 25  //指定的值表示你在該目標版本上已經做過了充分的測試,系統將會為你的應用程序啟用一些最新的功能和特性
eg.指定成22,則表示在android 5.1系統上做過充分的測試,android 6.0的功能則不會啟用        versionCode 1  //用于指定項目的版本號        versionName "1.0" //用于指定項目的版本名        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"    }    buildTypes {//在這buildTypes閉包中用于指定生成安裝文件的相關配置,通常只會有兩個子閉包,一個debug,一個是release
1.debug閉包用于指定生成測試版安裝文件的配置(這個閉包可以忽略不寫)
2.release閉包用于指定生成正式版安裝文件的配置        release {            minifyEnabled false   //用于制定是否對項目的代碼進行混肴,true表示混肴            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
//用于指定混肴時使用的規則文件,這里指定了兩個文件,1.proguard—android.txt 這是在android SDK目錄下的,里面是所有項目通用的混肴規則
2.proguard-rules.pro 是在當前目錄的根目錄下的,里面可以編寫當前項目特有的混肴規則。
(通過android Studio 直接運行項目生產的都是測試版安裝文件)        }    }}dependencies {//這個dependencies閉包可以指定當前項目所有的依賴關系。
通常android studio 項目共有3種依賴方式1.本地依賴 2.庫依賴 3.遠程依賴
1.本地依賴可以對本地的jar包或目錄添加依賴關系
2.庫依賴可以對項目中的庫模塊添加依賴關系
3.遠程依賴則可以對jcenter庫上的開源項目添加依賴關系    compile fileTree(dir: 'libs', include: ['*.jar'])  //這是一個本地依賴聲明,它表示將libs目錄下所有.jar后綴的文件都添加到項目的構建路徑當中    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {        exclude group: 'com.android.support', module: 'support-annotations'    })    compile 'com.android.support:appcompat-v7:25.1.0'  //這是一個遠程依賴庫格式,其中com.android.support是域名部分;25.1.0是版本號,用于和同一個庫不同的版本做區分。
加上這句聲明后,Gradle在構建項目時會首先檢查一下本地是否已經有這個庫的緩存,如果沒有則會自動聯網下載,然后再添加到項目的構建路徑當中。
庫依賴聲明是:comple project (':庫名稱')后面加上要依賴的庫名稱    testCompile 'junit:junit:4.12'  //用于聲明測試用例庫}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 尉氏县| 修文县| 乌审旗| 依安县| 柳州市| 黎川县| 土默特左旗| 安吉县| 澎湖县| 新泰市| 宁远县| 息烽县| 连城县| 平阳县| 高邮市| 新平| 淅川县| 延寿县| 临沧市| 苍山县| 大足县| 石林| 夹江县| 吉林省| 张北县| 嘉鱼县| 塘沽区| 通州市| 淄博市| 丹江口市| 平和县| 南澳县| 铁力市| 蒲江县| 拉孜县| 大埔县| 武鸣县| 瑞安市| 商丘市| 郎溪县| 通江县|