상세 컨텐츠

본문 제목

코틀린 프로젝트03

JSP·자바·코틀린

by 김일국 2022. 3. 14. 12:57

본문

지난 포스트에 이어서 스프링부트 API 프로젝트에서 h2 데이터베이스 설정 후 h2콘솔을 사용해 보았다.(아래)

신규작업소스(스프링부트API): https://github.com/kimilguk/shop-api

신규작업소스(안드로이드앱): https://github.com/kimilguk/shop-app

안드로이드 앱 생성(아래)

관리하기 편하게 저장위치를 스프링부트 프로젝트가 있는 곳으로 지정한다.(위)

- 주의) 최신 androidx 플러그인을 기본으로 사용하기 때문에 체크하지 않는다. 위 화면에서 Use legacy android.support libraries 체크하는 이유는 지금 안드로이드 마시멜로(API 23,갤럭시S5) 이상에서 작동되는 코드로 작성할 때 구형 키캣(API 19,갤럭시S1)에서도 정상 작동가능하게 지원하기 위해서 이다. 

- 주의) Language 언어를 Kotlin(코틀린)으로 선택한 것에 주의 한다.

- 주의) 패키지 이름은 본인 이름 kimilguk 처럼 고유한 값이 들어가야 한다. 구글 플레이 스토어에 등록시 중복된 패키지 이름이 있으면, 등록이 되지 않는다.

 

# 그래들 7.x 이상 부터는 외부 모듈을 다운받는 repositories 설정 파일 위치가 루트의 settings.gradle 로 변경 되었다. 아래는 settings.gradle 의 내용이다. anko 라이브러리 모듈을 추가하려면, 아래처럼 주석부분 2줄을 각각 추가해야 한다.

pluginManagement {
    repositories {
        gradlePluginPortal()
        google()
        mavenCentral()
        maven { url 'https://jitpack.io' }//깃기반 라이브러리를 사용하기 위해서 추가
        jcenter() //앙코 라이브러리 다운받기 위해서 추가
    }
}
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven { url 'https://jitpack.io' }//깃기반 라이브러리를 사용하기 위해서 추가
        jcenter() //앙코 라이브러리 다운받기 위해서 추가
    }
}
rootProject.name = "Shop"
include ':app'

- 아래는 build.gradle 의 의존성 라이브러리 부분이다. 기존 xml 디자인을 사용하지 않고, 코드에서 쉽게 코틀린 특화 언어인 DSL로 화면을 구성할 수 있는 anko 라이브러리를 의존성에 추가한다.(아래)

ext {
    anko_version = '0.10.8'
}
dependencies {
    implementation 'androidx.core:core-ktx:1.7.0'
    implementation 'androidx.appcompat:appcompat:1.3.0'
    implementation 'com.google.android.material:material:1.4.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
    testImplementation 'junit:junit:4.13.2'
    androidTestImplementation 'androidx.test.ext:junit:1.1.3'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
    //기존 xml 사용하지 않고 코드에서 레이아웃 쉽게 구성하는 라이브러리 추가(아래)
    implementation "org.jetbrains.anko:anko:$anko_version"
    implementation "org.jetbrains.anko:anko-design:$anko_version"
    implementation "org.jetbrains.anko:anko-design-coroutines:$anko_version"
    implementation "org.jetbrains.anko:anko-constraint-layout:$anko_version"
}

- 그리고, 마지막으로 위 의존성 모듈 추가시 타사 라이브러리도 사용가능하도록 그래들 속성을 추가한다.(아래)

# dependencies 에서 타사 라이브러리를 사용할 수 있도록 마이그레이션한다.
android.enableJetifier=true

앱션 바가 없는 빈 액티비티 이다. 

앞으로 앙코(Anko) 라이브러리를 이용해서 xml 대신 코틀린 코드로 디자인 뷰 화면을 만들 예정 입니다.

'JSP·자바·코틀린' 카테고리의 다른 글

코틀린 프로젝트05  (0) 2022.03.17
코틀린 프로젝트04  (0) 2022.03.16
코틀린 프로젝트02  (0) 2022.03.13
코틀린 프로젝트01  (0) 2022.03.11
전자정부표준프레임워크 4.0베타 개발환경 경험하기  (0) 2022.01.23

관련글 더보기

댓글 영역