build.gradle 파일 구성
plugins {
id 'com.android.application'
id 'kotlin-android'
}
android {
compileSdk 31
defaultConfig {
applicationId "com.hdongle.android.hello"
minSdk 21
targetSdk 31
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
}
dependencies {
implementation 'androidx.core:core-ktx:1.7.0'
implementation 'androidx.appcompat:appcompat:1.4.1'
implementation 'com.google.android.material:material:1.5.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
* Android
- compileSdkVersion : Gradle이 앱을 컴파일 하기 위해 사용해야 하는 Android API 레벨 지정
- defaultConfig.applicationId : 패키지를 게시할때 식별하기 위한 속성. /
- defaultConfig.minSdkVersion : 앱을 실행하는데 필요한 최소 API 레벨
- defaultConfig.targetSdkVersion : 앱 구현에 사용되는 API 레벨
- defaultConfig.versionCode : 앱의 버전 정의
- defaultConfig.versionName : 앱의 버전 이름 정의
- defaultConfig.testInstrumentationRunner : 기본테스트 계측 실행기 설정
* dependency
- androidx.appcompat:appcompat : AppCompat 라이브러리, 하위버전에서도 최신 버전의 UI를 지원하기 위해 사용
- androidx.constraintlayout:constraintlayout : ConstraintLayout은 멀티 해상도를 좀 더 쉽게 지원하기 위해 추가된 layout
* 안드로이드 프로젝트는 '코드, 리소스, 매니페스트, 빌드 스크립트' 등으로 이루어짐
* 코드 : app / java
* 리소스 : app / res, 화면 레이아웃, 아이콘 이미지, 문자열
* AndroidManifest.xml : 안드로이드 시스템이 알아야 하는 필수 정보, application 권한 정보, Activity 정보 등
* 빌드 스크립트 : 앱설정(버전코드, 최소 sdk 버전), 의존 라이브러리