Android Gradle 개발 가이드 상세 설명

Gradle 소개
Gradle 은 플러그 인 을 통 해 사용자 정의 구축 논 리 를 만 들 수 있 는 우수한 구축 시스템 과 구축 도구 입 니 다.그것 은 다음 과 같은 몇 가지 특징 을 가지 고 있다.
  • Domain Specific Language(DSL 언어)를 사용 하여 구축 논 리 를 설명 하고 제어 합 니 다
  • 구축 파일 은 Groovy 를 기반 으로 하고 혼합 성명 DSL 요소 와 코드 를 통 해 DSL 요 소 를 제어 하여 사용자 정의 구축 논 리 를 제어 할 수 있 습 니 다
  • Maven 또는 Ivy 의 의존 관 리 를 지원 합 니 다
  • 4.567917.매우 유연 하 다.가장 좋 은 실현 을 허용 하지만 강제 적 으로 실현 되 지 는 않 는 방식
  • 플러그 인 은 파일 구축 에 사용 할 수 있 도록 자신의 DSL 과 API 를 제공 할 수 있 습 니 다
  • 좋 은 API 도 구 는 IDE 통합 을 제공 합 니 다Gradle 방식 으로 프로젝트 를 구축 하 는 것 은 주로 다음 과 같은 목적 을 달성 하기 위해 서 입 니 다.
    코드 와 자원 을 재 활용 하 는 것 이 더욱 쉬 워 집 니 다4.567917.같은 프로그램의 서로 다른 버 전 을 만 드 는 것 이 더욱 쉬 워 집 니 다.여러 개의 apk 발표 버 전이 든 같은 응용 프로그램의 서로 다른 맞 춤 형 버 전이 든 4.567918.
    4.567917.구축 과정 을 더욱 쉽게 설정 하고 확장 하 며 맞 춤 형 으로 만 듭 니 다우수한 IDE 를 통합 하 다.
    프로젝트 기반 구축
    파일 구축
    Gradle 프로젝트 의 구축 과정 은 build.gradle 파일 에 정의 되 어 있 으 며 프로젝트 의 루트 디 렉 터 리 에 있 습 니 다.가장 간단 한 Gradle 순수 자바 프로젝트 의 build.gradle 파일 은 다음 과 같은 내용 을 포함 합 니 다.
    
    apply plugin: 'java'
    위의 코드 는 Gradle 을 도입 한 자바 플러그 인 입 니 다.이 플러그 인 은 자바 응용 프로그램 을 구축 하고 테스트 하 는 데 필요 한 모든 것 을 제공 합 니 다.예 를 들 어 다음은 가장 간단 한 안 드 로 이 드 프로젝트 의 build.gradle 파일 의 소스 코드 입 니 다.
    
    buildscript {
     repositories {
      google()
      jcenter()
      
     }
     dependencies {
      classpath 'com.android.tools.build:gradle:3.4.1'
     }
    }
    
    allprojects {
     repositories {
      google()
      jcenter()
      
     }
    }
    
    task clean(type: Delete) {
     delete rootProject.buildDir
    }
    build.gradle 파일
    Android 프로젝트 에 서 는 보통 최소 2 개의 build.gradle 파일 이 나타 납 니 다.하 나 는 procject 의 gradle 파일 이 고 하 나 는 app module 의 gradle 파일 입 니 다.
    gradle 파일 에는 자주 사용 되 는 명령 과 코드 가 많이 포함 되 어 있 습 니 다.구체 적 인 의 미 는 다음 과 같 습 니 다.
    1.jcenter()
    코드 위탁 관리 라 이브 러 리,설정 후 프로젝트 에서 jcenter 의 오픈 소스 항목 을 참조 하여 build.gradle 파일 의 reposcories 패키지 에 설명 할 수 있 습 니 다.
    2.gradle 플러그 인 및 버 전 번호
    다음 코드 를 자주 볼 수 있 습 니 다.
    
    classpath 'com.android.tools.build:gradle:3.4.1'
    3.Android 패키지 설정
    build.gradle 의 Android 패키지 에서 자주 사용 하 는 설정 을 볼 수 있 습 니 다.다음 과 같 습 니 다.
  • copileSdkVersion:프로젝트 의 컴 파일 버 전 을 지정 합 니 다
  • buildToolsVersion:프로젝트 의 구축 도 구 를 지정 하 는 버 전 입 니 다
  • applicationId:프로젝트 의 가방 이름 을 지정 하 는 데 사 용 됩 니 다.프로젝트 를 만 들 때 가방 이름 을 지 정 했 습 니 다.전체 프로젝트 의 가방 이름 을 수정 하려 면 여기 서 변경 할 수 있 습 니 다
  • minSdk 버 전:프로젝트 의 가장 낮은 호 환 버 전.
  • targetSdkVersion:이 목표 버 전에 서 충분 한 테스트 를 했 음 을 나타 낸다.시스템 은 당신 의 응용 에 최신 기능 과 특성 을 열 어 줄 것 이다.targetSdkVersion 이 23 이상 이면 Android 6.0 에서 이 프로그램 을 실행 할 때 새로운 기능 과 기능 이 열 립 니 다.22 로 설정 하면 프로그램 이 안 드 로 이 드 5.1 시스템 에서 충분 한 테스트 를 했 음 을 설명 할 수 있 을 뿐 안 드 로 이 드 6.0 의 새로운 기능 은 사용 되 지 않 습 니 다
  • versionCode:프로젝트 의 버 전 번호
  • versionName:프로젝트 버 전 번호 의 버 전 이름 입 니 다.
  • 4.buildTypes 폐쇄
    이 설정 패 키 지 는 일반적으로 두 개의 패 키 지 를 포함 합 니 다.하 나 는 debug 이 고 하 나 는 release 입 니 다.물론 다른 폐쇄 도 가능 합 니 다.debug 패 키 지 는 테스트 판 설치 파일 을 만 드 는 데 사 용 됩 니 다.release 패 키 지 는 정식 설치 파일 을 만 드 는 데 사 용 됩 니 다.이 파일 의 설정 은 다음 과 같 습 니 다.
  • minifyEnabled:프로젝트 의 코드 를 혼동 할 지 설정 하 는 데 사 용 됩 니 다.true 는 오픈 을 의미 하고 false 는 닫 습 니 다
  • proguardFiles:헷 갈 릴 때 사용 할 파일 을 지정 합 니 다.
  • proguard-android.txt:Android SDK 디 렉 터 리 에 있 는 모든 항목 에서 통용 되 는 혼동 규칙 입 니 다
  • proguard-rules.pro:현재 프로젝트 루트 디 렉 터 리 에서 현재 프로젝트 특유 의 혼동 규칙 을 작성 합 니 다.
  • 5.dependencies 폐쇄
    Android Studio 프로젝트 개발 에는 로 컬 의존,라 이브 러 리 의존,원 격 의존 등 세 가지 의존 방식 이 있 습 니 다.
  • 로 컬 의존:로 컬 Jar 패키지 나 디 렉 터 리 에 의존 관 계 를 추가 할 수 있 습 니 다
  • 4.567917.라 이브 러 리 의존:프로젝트 의 라 이브 러 리 모듈 에 의존 관 계 를 추가 할 수 있 습 니 다원 격 의존:=jcenter 라 이브 러 리 의 오픈 소스 프로젝트 에 의존 관 계 를 추가 할 수 있 습 니 다.
    프로젝트 구조
    Gradle 은 설정 보다 우선 하 는 개념 에 따라 가능 한 한 합 리 적 인 기본 설정 파 라 메 터 를 제공 합 니 다.Android 의 기본 항목 은 main source code 와 test code 라 는 두 개의 구성 요소 에서 시 작 됩 니 다.각각 src/main/src/androidTest/파일 에 있 습 니 다.
    자바 plugin 과 Android plugin 에 있어 자바 소스 코드 와 자원 파일 경 로 는 다음 과 같 습 니 다.자바/resources/파일 디 렉 터 리 에 있 습 니 다.
    Android plugin 의 경우 다음 과 같은 특유 의 파일 과 폴 더 구 조 를 가지 고 있 습 니 다.
  • AndroidManifest.xml
  • res/
  • assets/
  • aidl/
  • rs/
  • jni/
  • 구성 구조
    기본 항목 구조 가 적용 되 지 않 을 때 사용자 정의 설정 이 필요 할 수도 있 습 니 다.Gradle 문서 에 따라 자바 프로젝트 에 sourceSets 를 다시 설정 하려 면 다음 과 같은 방법 을 사용 할 수 있 습 니 다.
    
    sourceSets {
     main {
      java {
       srcDir 'src/java'
      }
      resources {
       srcDir 'src/resources'
      }
     }
    }
    물론 다음 설정 방식 도 사용 할 수 있 습 니 다.
    
    sourceSets {
     main.java.srcDirs = ['src/java']
     main.resources.srcDirs = ['src/resources']
    }
    Android Plugin 은 유사 한 문법 을 사용 합 니 다.그러나 이 설정 은 자신의 sourceSets 를 사용 하기 때문에 안 드 로 이 드 대상 에 추 가 됩 니 다.
    다음은 오래된 프로젝트 구조의 main 소스 코드 를 사용 하고 안 드 로 이 드 TestsourceSet 구성 요 소 를 tests 폴 더 에 다시 표시 하 는 예제 입 니 다.
    
    android {
     sourceSets {
      main {
       manifest.srcFile 'AndroidManifest.xml'
       java.srcDirs = ['src']
       resources.srcDirs = ['src']
       aidl.srcDirs = ['src']
       renderscript.srcDirs = ['src']
       res.srcDirs = ['res']
       assets.srcDirs = ['assets']
      }
    
      androidTest.setRoot('tests')
     }
    }
    이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

    좋은 웹페이지 즐겨찾기