앱 기본 틀 만들기
완성하면 아래 앱이 됩니다.
https://play.google.com/store/apps/details?id=com.enigmah2k.movieinfo
영화 정보 앱의 처음 시작인 기본 틀을 만들어 보겠습니다.
Android Studio 에서 File > New > New Project를 선택합니다.
(Android Studio 설치 과정은 다른 블로그에도 정보가 많기 때문에 생략하겠습니다. )
향후 기능 확장을 위해 Fragment 구조인 Bottom Navigation Activity 를 선택하여 만들겠습니다.
앱 이름은 TMDBtest로 하고 packasge name 은 com.tmdb.tmdbtest 로 하겠습니다.
개발 언어는 Kotlin으로 선택합니다.
앱 개발에 사용할 도구들은 아래와 같습니다.
사용 환경설정을 하겠습니다.
Kotlin, anko, maven, cardview, recyclerview, okhttp3, gson, retrofit2, jsoup, glide
저는 사용만 할 뿐이고 상세 기능은 포스팅하지 않겠습니다.
각 라이브러리들의 상세 기능들은 따로 공부해 보면 좋을것 같습니다.
anko 버전 설정 및 maven 설정을 합니다.
build.gradle (Project: TMDBtest)
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext.kotlin_version = "1.4.10"
ext.anko_version='0.10.8'
repositories {
google()
jcenter()
}
dependencies {
classpath "com.android.tools.build:gradle:4.0.1"
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
}
}
allprojects {
repositories {
google()
jcenter()
maven {
url "https://maven.google.com" //Google's maven repository
}
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
사용 라이브러리를 implementation 추가 합니다.
build.gradle (Module: app)
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 29
buildToolsVersion "29.0.3"
defaultConfig {
applicationId "com.tmdb.tmdbtest"
minSdkVersion 23
targetSdkVersion 29
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 fileTree(dir: "libs", include: ["*.jar"])
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation "org.jetbrains.anko:anko:$anko_version"
implementation 'androidx.core:core-ktx:1.3.2'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.2.1'
implementation 'androidx.constraintlayout:constraintlayout:2.0.2'
implementation 'androidx.navigation:navigation-fragment:2.3.0'
implementation 'androidx.navigation:navigation-ui:2.3.0'
implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
implementation 'androidx.navigation:navigation-fragment-ktx:2.3.0'
implementation 'androidx.navigation:navigation-ui-ktx:2.3.0'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'androidx.recyclerview:recyclerview:1.1.0'
implementation 'com.squareup.okhttp3:okhttp:4.3.1'
implementation 'com.google.code.gson:gson:2.8.6'
implementation 'com.squareup.retrofit2:retrofit:2.8.1'
implementation 'com.squareup.retrofit2:converter-gson:2.8.1'
implementation 'org.jsoup:jsoup:1.13.1'
implementation "com.github.bumptech.glide:glide:4.11.0"
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
}
각 라이브러리의 버전은 최신 또는 사용하고 싶은 버전으로 맞추면 됩니다.
Sync now를 클릭하여 라이브러리 설정을 완료합니다.
인터넷을 사용하여 정보를 가져와야 하므로 AndroidManifest.xml 파일에 인터넷 사용 권한도 추가합니다.
<uses-permission android:name="android.permission.INTERNET" />
기본 틀 설정을 마칩니다.
TMDB API 를 활용한 Android 앱 만들기
https://stockant.tistory.com/530?category=1156604
'프로그래밍 > 영화 TMDB API' 카테고리의 다른 글
영화 정보 앱 만들기 - TMDB API 사용, 인기 영화 정보 가져오기 2 (1) | 2020.10.22 |
---|---|
영화 정보 앱 만들기 - TMDB API 사용, 인기 영화 정보 가져오기 1 (0) | 2020.10.21 |
영화 정보 앱 만들기 - TMDB API 사용, MovieFragment 추가 (0) | 2020.10.20 |
영화 정보 앱 만들기 - TMDB API 사용 신청 방법 (0) | 2020.10.17 |
영화 정보 앱 만들기 - TMDB API 를 활용한 Android 앱 만들기 (0) | 2020.10.17 |