본문 바로가기
프로그래밍/안드로이드

[Android] Google 에서 제공해주는 오픈소스 라이선스 관리용 라이브러리

by dev_gyu 2024. 9. 29.
728x90

우리가 앱을 개발할 때는 많은 기능이 들어가게 된다.

그러나 이러한 기능들을 일일이 하나하나 모두 개발하지는 않았을 것이다.

당장 네트워크 통신에서 가장 흔히 쓰이는 Retrofit 이나 이미지 라이브러리인 Coil, Picasso, Glide 등 여러 라이브러리를 통해 개발자가 기능을 직접 개발하는 것이 아닌, 이미 만들어진 코드를 가져다 써서 빠르고 편리하게 앱을 개발하기 때문이다.

 

라이브러리를 사용하는 것은 비단 개인 개발자 뿐만이 아닌 Android 를 소유 및 개발하고 있는 Google 과 Meta, Apple, Tesla 등 세계 곳곳의 회사들이 라이브러리들을 사용하고 있다.

 

이러한 라이브러리는 편리하다는 장점이 있지만, 만든 이의 저작권이 있기에 실서비스를 운영한다면 필수적으로 저작권을 명시해줘야 한다.

하지만 실서비스를 운영할만큼의 기능을 가진 앱이라면 사용한 라이브러리가 한 두개는 아닐테고, 최소 수 십개는 될텐데 이것을 일일이 직접 찾아보며 라이선스를 명시해주는 건 꽤나 골치아프고 귀찮은 일이다.

 

구글에서는 이러한 대책으로 한 라이브러리를 제공해주는데, 이 라이브러리를 사용하면 알아서 프로젝트에 사용된 라이브러리들의 라이선스를 명시해준다.

 

# 그래서 그 라이브러리를 어떻게 추가하는데?

다음은 이 라이브러리를 추가하는 방법이다.

 

1. Project Build.gradle.kts or Settings.gradle.kts 에 아래 코드를 추가한다

buildscript {
    dependencies {
        classpath("com.google.android.gms:oss-licenses-plugin:0.10.6")
    }
}

 

2. 다음으로 UI 가 보여지는 모듈 dependencies 에 아래 디펜던시를 추가한다

dependencies { 
    implementation("com.google.android.gms:play-services-oss-licenses:17.0.0")
}


3. 버튼을 눌렀을 때 아래 코드를 실행하도록 하여, OssLicenses 가 보이는 화면으로 Intent 되도록 설정한다.

context.startActivity(Intent(context, OssLicensesMenuActivity::class.java))

 

다음은 결과 화면이다

 

단, Debug 모드인 경우 License 들이 보이지 않으니 보이지 않는다고 헤매지 말자.

Release 모드로 설정해주면 (실제 서비스 환경) 라이센스 명시가 잘 보이게 된다.

728x90