티스토리 뷰
앱 모듈을 라이브러리 모듈로 변환
앱없이 라이브러리 모듈만 포함한 프로젝트 생성방식.
File > New > New Project을 클릭합니다.
No Activity Next > 대충 설정하고 Finish
(Module: app) 의
build.gradle
파일을 엽니다.applicationId
를 지정하는 줄을 삭제합니다. Android 앱 모듈에서만 지정할 수 있습니다.build.gradle 편집
apply plugin: 'com.android.application'
다음과 같이 변경합니다.
apply plugin: 'com.android.library'
파일을 저장하고 File > Sync Project with Gradle Files를 클릭합니다.
app폴더안에 libs, src, build.gradle 파일들을 상위폴더로 이동합니다. 그리고 app폴더는 삭제합니다.
settings.gradle 안에 내용을 지워줍니다. 파일을 삭제해도 상관없음
build.gradle 스크립트 수정
apply plugin: 'com.android.library' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' //added 꼭 추가되야함!! buildscript { ext.kotlin_version = '1.3.11' repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.1.2' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } allprojects { repositories { google() jcenter() } } //end android { compileSdkVersion 30 buildToolsVersion "30.0.1" defaultConfig { minSdkVersion 17 targetSdkVersion 30 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } } dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" }
여기까지 저장하고 Sync Project with Gradle Files 했을때 에러가 난다면 gradle-wrapper.properties 에 gradle 버전과 build gradle 버전이 맞는지 여부를 확인해봐야 합니다. 이것은 코틀린 버전과도 연관이 있을 수 있습니다.
최종 프로젝트 뷰
최종 프로젝트 파일뷰
정리가 잘된 포스팅이 있어서 링크공유
https://today-shot.tistory.com/category/Android_Java/Library
'Development Note > Android' 카테고리의 다른 글
[bintray] 안드로이드 라이브러리 배포정리 (0) | 2020.10.07 |
---|---|
[java,kotlin] 안드로이드 라이브러리 의존도 버전 관계 (0) | 2020.09.24 |
[Android java] 절대값 구하기 (0) | 2020.08.14 |
[Android Java] 국가코드 및 국가명 가져오기 (0) | 2020.08.13 |
[Android Java] 언어코드 가져오기 (0) | 2020.08.13 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- tempfile
- iTunes Store에 연결할 수 없음
- nsurl 에서 nsstring 변환
- countryCode
- Locale.getDefault().getLanguage()
- 절대값함수
- 퍼미션체크
- java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line
- dialog
- permissionCheck
- abs
- convert nsurl to nsstring
- abs 함수
- Error Domain=SKErrorDomain Code=0
- nsurl to nsstring convert
- NSUserDefaults 예제
- ioutil
- setCancelable vs setCanceledOnTouchOutside
- DeviceModel
- Golang
- tempdir
- countryName
- LanguageCode
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함