Programming$/Android

[Android] 외부 라이브러리 사용하기

ch4rli3kop 2021. 10. 4. 23:24
반응형

[Android] 외부 라이브러리 사용하기

MPAndroidChart 라는 것을 사용해보기로 했는데, 외부 라이브러리라 따로 디펜던시를 추가해줘야 했다.

근데 안드로이드 개발을 잘 안해보다보니 gradle 사용하는 것부터가 막힘 ㅋ

안드로이드는 외부 라이브러리를 사용하기 위해서 gradle 파일에 경로를 추가해줘야 함.

사용할 라이브러리는 이거다. https://github.com/PhilJay/MPAndroidChart

사용방법에 다음과 같이 나와있었는데, 정확히 어디에 추가해야 되는지 몰라서 찾아봤다.

repositories {
    maven { url 'https://jitpack.io' }
}

dependencies {
    implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0'
}

 

안드로이드에 보면 build.gradle 이 두 가지가 존재한다. Project에 관련된 것과, Module(app)에 관련된 것인데, 막 블로그 글들 찾아보면 두 가지에 따로 넣는 방법과 Module 하나에만 넣는 방법이 있었다. 전자가 안돼서 후자로 진행한다.

build.gradle (Module)과 settings.gradle 두 파일을 수정하면 된다.

다 넣으면 다음과 같이 된다.

build.grade (Module)

allprojects {} 를 따로 만들어서 repositories를 추가했다. dependencies는 맨 마지막 줄에 implementation 을 추가했다.

plugins {
    id 'com.android.application'
}

android {
    compileSdk 31

    defaultConfig {
        applicationId "com.example.water_farm"
        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
    }
    buildFeatures {
        viewBinding true
    }
}

allprojects {
    repositories {
        maven {url 'https://jitpack.io'}
    }
}

dependencies {
    implementation 'androidx.appcompat:appcompat:1.3.1'
    implementation 'com.google.android.material:material:1.4.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.1.0'
    implementation 'androidx.navigation:navigation-fragment:2.3.5'
    implementation 'androidx.navigation:navigation-ui:2.3.5'
    testImplementation 'junit:junit:4.+'
    androidTestImplementation 'androidx.test.ext:junit:1.1.3'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
    implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0'
}

 

settings.gradle

repositories에 `maven {url 'https://jitpack.io'}`을 추가하고, 기존의 `repositoriesMode.set(FAIL_ON_PROJECT_REPOS)``repositoriesMode.set(PREFER_SETTINGS)`으로 바꿔준다.

import org.gradle.api.initialization.resolve.RepositoriesMode

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)
    repositories {
        google()
        mavenCentral()
        jcenter() // Warning: this repository is going to shut down soon
        maven {url 'https://jitpack.io'}
    }
}
rootProject.name = "Water-Farm"
include ':app'

이제 Sync를 하면 됨!

special thanks. kingley

반응형

'Programming$ > Android' 카테고리의 다른 글

glide (feat. custom dialog)  (0) 2020.06.24
JNI function symbol 제거하기  (0) 2020.06.12
Intent로 Activity 간 데이터 교환  (0) 2020.04.14
onClickListener implements로 구현하기  (0) 2020.04.14