일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Kotlin
- GIT
- 스튜디오
- 레트로핏
- studio
- 유튜브
- coroutine
- 안드로이드 스튜디오
- 깃헙
- 코루틴
- Gradle
- MVVM
- WebView
- 안드로이드스튜디오
- Android
- viewpager
- build
- 웹뷰
- image
- 안드로이드
- RecyclerView
- error
- 에러
- Retrofit
- Github
- ADB
- dart
- 안스
- 코틀린
- 의존성주입
- Today
- Total
목록build (5)
코딩하는 일용직 노동자
깃헙에서 clone 받은 오래된 프로젝트에 최신 라이브러리를 추가해서 빌드하려고 하니 아래와 같은 빌드오류가 발생했습니다. Invoke-customs are only supported starting with Android O (--min-api 26) clone 받은 프로젝트가 오래된 것이다보니 발생한 오류입니다. gradle 셋팅에 아래 내용을 추가해서 오류를 해결했습니다. android { ... compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } }
안드로이드 스튜디오를 최신 Arctic Fox 로 업데이트 하고 gradle 버전을 7로, JDK를 11로 업데이트 한 후 앱을 빌드하니 아래의 오류가 발생합니다. Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8 아직 빌드 설정상에 JDK 버전이 1.8로 되어 있는듯 합니다. 우선 [Project Structure] > [SDK Location] 메뉴에서 [JDK location was moved to Gradle Settings.] 를 누릅니다. 그리고 [Gradle JDK:] 에서 JDK 버전을 11로 선택해줍니다. 다시 빌드해보면 정상적으로 빌드가 되는것을 확인 할 수 있습니다.
다른 개발자와의 협업중에 그분에게서 전달받은 소스파일을 덮어씌워서 작업하다 보니 기존에는 발생하지 않았던 컴파일 오류가 발생했다. The minCompileSdk (31) specified in a dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties) is greater than this module's compileSdkVersion (android-30). clean 을 해보고 빌드를 다시 해봐도 계속 문제가 발생했다. compileSdkVersion 을 31로 변경해서 빌드해봐도 계속 발생했는데 app/build.gradle 에 아래의 처리를 추가해서 해결했다. configurations.all { ..
앱을 테스트할때는 빌드가 잘 되는데 릴리즈용 apk 파일을 빌드할때는 못보던 에러가 발생하며 사이닝된 릴리즈용 파일을 만들지 못했다. Lint found fatal errors while assembling a release target. 검색해보니 처리할 수 있는 방법이 두가지 있다. #1. 리포트 파일을 읽어서 해결한다. app/build/reports/ 경로에 html 과 xml 파일이 생성된다. 이것을 참고해 에러의 원인을 해결한다. #2. module 의 build.gradle 파일에 아래의 옵션을 추가한다. android { lintOptions { checkReleaseBuilds false // Or, if you prefer, you can continue to check for erro..
앱을 구글 플레이 스토어에 등록할때 apk파일의 경우 100MB의 용량제한이 있다. 하지만 오래되고, 기능이 많고, 다양한 라이브러리를 품고있는 앱이라면 이 용량이 한계에 다다르는 경우가 있다. 이번엔 쓸모없는 jni .so 파일을 빌드시 제외시키는 방법을 알아보자. lib/armeabi-v7a/libffmpeg.so 파일이 7.1MB를 차지하고 있다. 이 파일을 빌드시 포함하지 않도록 해보자. build.gradle 파일에 아래와 같이 처리를 해주면 된다. android { packagingOptions { exclude 'lib/armeabi-v7a/libffmpeg .so' } } 이렇게하면 libffmpeg.so 파일이 포함되어 있지 않으며, 이전의 파일보다 용량이 작은것을 알 수 있다. 폴더 전..