
안녕하세요 동키입니다.오늘은 Compose로 개인 프로젝트를 진행하다 가진 궁금증을 공유하고자 합니다.페이징이란대용량 데이터셋을 한 번에 모두 메모리에 로드하지 않고, 필요한 만큼만 페이지 단위로 불러와서 화면에 표시하는 방식입니다.코드 구조는 위와 같습니다.우선 Re

XML 기반 UI에서는 개발자가 명령형으로 직접 UI 요소들을 업데이트 하는 반면, Compose에서는 상태(state)가 변화하면 해당 상태를 참조하는 UI 컴포저블이 자동으로 재구성(Recomposition)됩니다.이는 개발자가 UI 갱신 로직을 일일이 관리할 필요
프로젝트를 진행하며 에러 처리를 하는 모든 곳을 try catch로 진행을 했다.kotlin Exception 문서를 공부하며 try catch로 에러핸들링을 하는 방법을 공부했고 간편하다고 생각했기 때문이다.프로젝트의 기능들을 거의 구현하고 나서 앞으로의 공부 방향성

개인 프로젝트의 채팅 기능을 구현하던 도중 마주한 트러블 슈팅에 대해 다뤄볼까 합니다.우선 fireStore을 사용했으며 오프라인 기능을 지원하기 위해 데이터를 Room에 저장한 뒤 Room 데이터를 활용해 채팅 화면을 뿌려주는 방법을 선택했습니다.한번에 모든 데이터를

이번 포스팅에서는 공식문서(Fragment) 를 공부한 핵심 내용에 대해 다뤄보겠습니다~.안드로이드에서 UI 일부를 독립적으로 구성하고 관리할 수 있게 해주는 모듈형 UI컴포넌트프래그먼트는 자체 레이아웃을 정의 및 관리하고 자체 수명주기를 가짐단독으로 실행될 수 없기

안드로이드 개발에서 HTTP 통신을 위한 오픈소스 클라이언트 라이브러리HTTP 요청을 보내고, 응답을 받는 모든 네트워크 통신의 설정 주체특징비동기 요청을 지원하여 네트워크 통신 중 UI 스레드를 블로킹하지 않음 (비동기로 처리하기 위한 ThreadPool 존재)Con

네트워크 인터셉터와 애플리케이션 인터셉터 이전의 OkHttp3 개념 및 Intercepter와 Authenticator 에서 Interceptor와 Authenticator를 이용해 accesstoken , refreshtoken 을 이용한 인증 방법에 대해 공부했습

이전에 okhttp의 개념과 애플리케이션에서 사용할 수 있는 네트워크 인터셉터와 애플리케이션 인터셉터에 대해 공부했다.공부하며 서버에서 401을 응답하면 OkhttpClient 의 Authenticator 가 자동으로 실행되고 재요청을 보낼 수 있다.분명 G리는 기술인

\*\*이전 포스팅에서\*\* okhttp가 가지고 있는 interceptor 에 대해 알아보았습니다.그 중 \*\*RetryAndFollowUpInterceptor\*\* 가 서버로부터 401 response를 받을 시 OkHttpClient 의 Authentica

오늘은 WindowSize 란 것을 이용하여 기기마다 기기의 화면 크기에 따라 다른 UI를 제공하는 방법을 알아보겠습니다.WindowSizeClass는 앱이 실행되는 창의 가용 공간을 너비와 높이 기준으로 세 가지 크기 범주로 분류합니다.Compact: 좁은 화면 (예
다들 개발하시며 이벤트 처리를 어떤 방법으로 사용하시고 계신가요?저는 아래의 7가지 방법에서 4번 방법을 사용하다 최근 repeatOnLifecycle 개념에 대해 알게되어 5번 방법을 사용하고 있었습니다. 7가지 방법에 대해 궁금하시다면 Ted Park 님의 블로그를

해당 내용은 Compose Internals 1장 Composable 함수들 내용을 공부하며 기록한 내용입니다.@Composable은 컴파일러에게 이 함수가 Compose 트리의 일부 노드를 생성한다는 의도를 전달합니다.이 함수는 "Hello, $name!"이라는 UI
해당 내용은 Compose Internals 2장 Compose 어노테이션 내용을 공부하며 기록한 내용입니다.Kotlin과 JVM 진영에서는 보통 kapt 를 통한 어노테이션 프로세서를 사용하는 것이 일반적입니다.Compose는 kapt 나 어노테이션 프로세서를 전혀
안녕하세요 이번에는 Custom BottomSheetScaffold 에 대해 다뤄보려고 합니다.Material에서 제공해주는 BottomSheetScaffold를 사용해 요구사항을 구현할 수 있었으면 좋겠지만...다들 아시다시피 BottomSheetScaffold 는