Android

    [Android Studio] Layout Inspector에서 Compose View 들이 보이지 않는 현상 해결 방법

    문제 상황 개발 테스트 도중 Android Studio Layout Inspector에서 Compose View들이 보이지 않고 아래와 같이, AndroidComposeView로만 뭉뚱그려 나오는 문제가 발생했다. 해결 방법 이 문제를 해결하기 위해서 Google Issue Tracker을 확인한 결과 다음 두가지의 요구사항이 필요함을 확인했다. 1. Android Studio Flamingo 이상의 버전 사용 2. 8.0.0 이상의 AGP(Android Gradle Plugin) 사용 참조: https://issuetracker.google.com/issues/246355403 Google Issue Tracker issuetracker.google.com 내 Android Studio는 마침 딱 Fl..

    JUnit5 사용 시 No tests found for given includes 오류 수정 방법

    JUnit 의존성 설정 시 발생하는 오류와 해결 방법 JUnit5를 사용하기 위해서는 다음 의존성을 추가해야 한다. dependencies { // JUnit5 테스트 프레임워크 testImplementation("org.junit.jupiter:junit-jupiter-api:5.10.0") testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.10.0") ... } 하지만, 이 둘을 사용해 테스트를 실행하면 다음과 같은 오류가 난다. Execution failed for task ':test'. > No tests found for given includes: [SimpleTest](--tests filter) 이런 애러가 나는 이유는 테스트를 실행할..

    오류 수정 방법 : Caused by: org.gradle.api.GradleException: 'compileDebugJavaWithJavac' task (current target is 17) and 'compileDebugKotlin' task (current target is 1.8) jvm target compatibility should be set to the same Java version.

    애러 원인 애 애러는 현재 Kotlin 버전과, Kotlin Compile 시 JVM 타겟 버전 설정이 달라서 생기는 문제이다. Caused by: org.gradle.api.GradleException: 'compileDebugJavaWithJavac' task (current target is [Kotlin 타겟 버전]) and 'compileDebugKotlin' task (current target is [JVM 타겟 버전]) jvm target compatibility should be set to the same Java version. 애러 해결 방법 이 문제는 아주 간단히 해결 가능하다. app 수준의 build.gradle.kts 파일 혹은 build.gradle 파일에 아래와 같이 적혀..

    오류 수정 방법 : BUG! exception in phase 'semantic analysis' in source unit '_BuildScript_' Unsupported class file major version

    애러 개요 여러 프로젝트를 다루다 보니, 앱을 빌드할 때 아래와 같은 오류가 나는 경우가 생겼다. BUG! exception in phase 'semantic analysis' in source unit '_BuildScript_' Unsupported class file major version 64 문제 원인 현재 Gradle 버전과 Java Version이 일치하지 않을 때 오류가 발생한다. 나의 경우 JDK 버전을 20으로 쓰고 Gradle 버전을 8.0으로 써서 문제가 생겼다. JDK 버전 확인 방법 1. 프로젝트에 설정된 JDK 버전을 확인하기 위해 다음 메뉴에 진입한다. Android Studio > Preferences... 2. Build, Execution, Deployment > Bu..

    [Android] LruCache 사용해 이미지 캐싱하기(Bitmap Cache)

    LruCache 란? LruCache객체는 안드로이드에서 캐시를 관리하기 위해 사용하는 메모리 캐시 객체이다. LruCache 객체는 LRU(Least Recent Used) 알고리즘을 사용하는데 간단히 말해서 최근에 조회된 것을 캐시에서 삭제하는 것을 늦추기 위한 객체이다. 즉, 오랫동안 접근되지 않은 메모리가 우선적으로 삭제된다. 안드로이드에서는 이 알고리즘에 대한 구현체를 제공하는데 바로 LruCache 클래스이다. LruCache 객체 내부를 보면 다음과 같이 선언되어 있다. *java 코드이니 감안해서 보도록 하자. public class LruCache { public LruCache(int maxSize) { .. } .. } 이 LruCache는 제네릭으로 선언되어 있는데 K가 캐시에 접근..