본문 바로가기

개발/Android51

[Android] Retrofit Call Adapter를 활용해서 효과적인 에러 핸들링 하기 요즘 앱을 개발하면 API를 사용하지 않는 경우가 거의 없는 듯 합니다.그렇기 때문에 Retrofit은 굉장히 흔하고 유용한 네트워킹 라이브러리이며 오랫동안 사용되어 오고 있습니다.최근엔 Ktor를 사용하는 사례도 종종 보입니다만, 아직까지 Retrofit을 사용하는 것이 대부분 일 것입니다.이와 더불어 앱 권장 아키텍처 또는 MVVM, 클린아키텍처 또한 매우 흔한 기술 스택으로 자리잡고 있습니다.그러다보니 ViewModel에서 Repository, UseCase를 통해 API로부터 오는 데이터를 얻고 있습니다.이러한 아키텍처 구성은 레이어간에 느슨한 결합을 만드는 것이 주된 목적 중 하나이기 때문에 인터페이스로 의존하고 있으며, 서로간에 구체적인 구현은 모르게 되는 상황이 된 것이죠.이러한 상황에서 A.. 2025. 1. 24.
[Android] Compose Multiplatform + Circuit + Koin 요즘 Compose Multiplatform에 대한 관심도가 많이 높아진 것 같습니다.Jetpack ViewModel은 기존에 Android에서만 사용이 가능했는데, 최근 KMP에서도 사용 가능하도록 업데이트를 하기도 했습니다.이 외에 Navigation Component, Room 등도 이러한 양상을 보이고, 많은 라이브러리들이 KMP 환경을 제공하기 위해 노력하고 있는 듯 합니다.https://www.jetbrains.com/ko-kr/compose-multiplatform/ Compose Multiplatform UI 프레임워크 | JetBrains www.jetbrains.com 저 또한 CMP에 관심을 가지고 있는데, 지금까지 잘 사용을 하지 않은 이유는 적합한 아키텍처 또는 아키텍처 구성요소를.. 2025. 1. 12.
[Android] APK 파헤치기 우리가 열심히 개발한 안드로이드 프로젝트는 결과적으로 APK(또는 AAB)로 변환됩니다.APK는 Android Application Package의 약자로, 이름부터 안드로이드 어플리케이션을 위한 묶음이며 확장자는 apk입니다.과거에는 안드로이드 어플리케이션의 결과물이 APK만 존재했었고, 이것을 플레이스토어에 올리기도 하고 인터넷 등을 통해 공유하여 설치할 수 도 있었습니다.그러다 AAB(Android App Bundle)이라는 것이 소개되고 어느순간 플레이스토어 배포는 AAB만이 가능한 형태로 바뀌었습니다.왜 이렇게 바꾸었을까요?우리는 안드로이드 앱을 개발할 때, 다양한 종류의 기기, 국적 등에 대응하기 위해 다양한 방법을 시도합니다.DPI 별로 이미지 리소스를 나누거나, 국적별로 문자열 리소스를 나.. 2025. 1. 5.
[Android] Jetpack Compose - UI Test. 요약본 리뷰 요즘 채용공고를 보면 자격요건 또는 우대요건에 Unit Test, UI Test와 같은 요구사항이 자주 등장합니다.제가 속해있던 회사들에선 주로 Unit Test를 필수로 작성하였습니다. 그리고 Jenkins와 같은 툴을 통해 자동화된 테스트를 수행하여 제품의 안정성과 품질을 유지 또는 향상시키기 위해 노력했습니다.그러나 UI Test의 경우 리소스와 같은 현실적인 요건, 그리고 QA를 통한 검증 등을 핑계로 작성되지 않는 경우가 잦았습니다.지난 과거를 반성도 해볼 겸, Compose에서 UI Test를 작성하는 방법에 대해 리뷰해보고자 합니다.https://developer.android.com/develop/ui/compose/testing/testing-cheatsheet 테스트 요약본  |  Je.. 2024. 12. 9.
반응형