안녕하세요, 오늘은 안드로이드 라이브러리를 만드는 방법에 대해 알아보겠습니다
우선 들어가기 앞서서 JitPack으로 배포를 하기 위해서는 Github 계정이 있어야 합니다
전체 코드
https://github.com/ParkSangSun1/Sample_Library
GitHub - ParkSangSun1/Sample_Library: Blog에서 작성한 Sample Library
Blog에서 작성한 Sample Library. Contribute to ParkSangSun1/Sample_Library development by creating an account on GitHub.
github.com
프로젝트 생성
새로운 프로젝트를 생성해 줍니다. 이때 No activity로 해도 되지만 저는 테스트를 위해서 Empty Activity로 생성하였습니다
프로젝트를 생성하면 이런 구조가 보이게 될 겁니다
여기서 이제 library 모듈을 만들어야 합니다
File -> New -> New Module을 눌러주시고 Android Library를 선택해 주세요
그리고 원하는 이름을 적고 FINISH를 눌러주세요
다 만들어졌다면 이곳에 클래스를 하나 만들어주세요
ShowLibrary.kt
class ShowLibrary {
companion object{
fun sToast(context: Context, msg : String) = Toast.makeText(context,msg,Toast.LENGTH_SHORT).show()
fun lToast(context: Context, msg : String) = Toast.makeText(context,msg,Toast.LENGTH_LONG).show()
}
}
간단하게 Toast 메시지를 단축시켜 띄우는 라이브러리입니다
이렇게 코드를 작성했으면 Library모듈의 build.gradle로 가서 몇 가지를 추가해줍니다
plugins {
...
id 'maven-publish'
}
afterEvaluate {
publishing{
publications{
release(MavenPublication){
from components.release
groupId = 'com.pss(패키지 이름)'
artifactId = 'Library(모듈 이름)'
version = '1.0'
}
debug(MavenPublication) {
// Applies the component for the debug build variant.
from components.debug
groupId = 'com.pss(패키지 이름)'
artifactId = 'Library(모듈 이름)'
version = '1.0'
}
}
}
}
android {
...
}
dependencies {
...
}
이제 app 모듈의 build.gradle로 가서 라이브러리를 implementation 해줍니다
implementation project(":Library(모듈 이름)")
그리고 MainActivity에서 사용해보면 잘 작동하는 걸 확인하실 수 있습니다
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
sToast(this, "테스트 Toast")
}
}
JitPack에 배포하기 위해서는 최상단 root파일에 jitpack.yml 파일을 추가해야 합니다
jdk:
- openjdk11
딱 두줄이면 끝납니다
JitPack 배포
이제 JitPack에 배포를 위해서 코드를 깃허브 Repository에 push후 Releases 합니다 (JitPack은 이 releases 파일을 읽어서 배포합니다)
JitPack | Publish JVM and Android libraries
JitPack makes it easy to release your Java or Android library. Publish straight from GitHub or Bitbucket.
jitpack.io
JitPack으로 들어가서 깃허브 로그인 후 (github 이름/Repository 이름) 이런 식으로 검색을 합니다
검색 후 Get it을 누르거나 동그라미 프로그래스 바가 돌아가면 Log에 문서가 나올 때까지 기다립니다
위는 성공적으로 마무리했다는 거고 아래는 오류가 있다는 표시입니다. 문서를 누르면 왜 오류인지 알려줍니다
Get it을 누르고 나오는 코드를 implementation 하면 성공적으로 사용할 수 있게 됩니다!
추가로
안드로이드 개발에 대한 질문과 정보 등을 공유 및 소통하는 채팅방입니다
'Android' 카테고리의 다른 글
[Android] Firebase에서 코루틴을 사용해보자! (feat.Firestore) (0) | 2022.03.11 |
---|---|
[Jetpack compose] Text를 사용해 보자! (0) | 2022.03.03 |
[Android] 쉽고 간편한 Dagger Hilt를 사용해 보자! (0) | 2021.12.29 |
Clean Architecture + MVVM + Coroutine + Hilt + Retrofit을 이용하여 안전하게 Github API를 호출해 보자! (0) | 2021.12.27 |
Android Clean Architecture를 지향한 MVVM 패키지 구조 (0) | 2021.12.16 |