본문 바로가기

나의 플랫폼/안드로이드

[Kotlin] Kotlin을 사용하기 위한 기본 설정

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

Kotlin을 android studio에서 사용하기 위해 gradle 기본 설정을 어떻게 해야 하는지 공유 하고자 합니다.



이 설정은 Android Studio에서 Empty Project를 먼저 만든 상태에서 gradle을 설정 하는 부분만 추가한 소스 입니다.

참고로 현재 블로그에 올린 소스는 Android Studio 2.2.3. 버전 입니다.


0. Android Studio에서 Kotlin 플러그인 설치


File -> Settings 를 선택 합니다.


Plugins -> Install JetBrains plugin... 버튼을 클릭 합니다.


Kotlin으로 검색 한 후 Kotlin 을 선택 합니다.

Install 버튼을 누르면 설치가 되고

Android Studio를 Restart 하면 플러그인 설치가 완료 됩니다.




1. build.gradle (최상위)


아래 소스가 기본 소스와 틀린 부분은 kotlin 플러그인을 추가하는 부분 입니다.

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
ext.kotlin_version = '1.0.6'
ext.android_plugin_version = "2.2.3"

repositories {
jcenter()
}
dependencies {
classpath "com.android.tools.build:gradle:$android_plugin_version"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}

ext {
compileSdkVersion = 25
buildToolsVersion = "25.0.1"

minSdkVersion = 16
targetSdkVersion = 22

versionCode = 1
versionName = '1.0.0'
}

allprojects {
repositories {
jcenter()
}
}

task clean(type: Delete) {
delete rootProject.buildDir
}



2. app/build.gradle


app/build.gradle 부분에 Kotlin 추가된 소스 입니다.

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt' // Use experimental kapt implementation

android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
applicationId "com.youandjo.basekotlin"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode rootProject.ext.versionCode
versionName rootProject.ext.versionName
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}

sourceSets {
// Main source set is Kotlin!
main.java.srcDirs += 'src/main/kotlin'

// Unit tests live in src/unitTest.
test.java.srcDir 'src/unitTests/kotlin'

// Integration tests live in src/integrationTest.
test.java.srcDir 'src/integrationTests/kotlin'

// Unit tests for debug build type specific code live in src/debugUnitTest.
testDebug.java.srcDir 'src/debugUnitTests/kotlin'

// Unit tests for release build type specific code live in src/releaseUnitTest.
testRelease.java.srcDir 'src/releaseUnitTests/kotlin'

// Functional tests live in src/functionalTests.
androidTest.java.srcDir 'src/functionalTests/kotlin'
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.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.1'
testCompile 'junit:junit:4.12'

// Kotlin
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}


3. MainActivity.kt


아래 소스는 ctrl + alt + shift + k 를 눌러 MainActivity.java 파일을 Kotlin 파일로 변경한 소스 입니다.

package com.youandjo.basekotlin;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}


위와 같이 설정된 풀 소스는 아래 github에서 받아가세요.

https://github.com/gorchg/BaseKotlin


즐거운 코딩 되세요.