Android Jetpack 104

Paging LV3 - 4 (Refresh)

-- 참조 https://rkdxowhd98.tistory.com/177 Android in A..Z - Paging3 (PagingSource) PagingSource PagingSource는 데이터 소스를 얻는 방법을 정의하고 로컬 데이터 베이스에서 얻거나 서버로 부터 데이터를 얻을지 정의할 수 있다. PagingSource에서 Key값은 Page의 Key 유형이고 Value는 얻는 rkdxowhd98.tistory.com https://github.com/rafsanahmad/RecyclerView-Paging-3.0/blob/master/app/src/main/java/com/rafsan/recyclerviewpaging/network/GithubPagingSource.kt GitHub - raf..

Android Jetpack 2023.03.24

Paging LV1 - 2 (Paging 소스 살펴보기)

간단한 아래처럼 paging 예제인데, 위의 구조와 함께 보도록 하겠습니다. 우선 UI에서 Flow를 불러오는 부분입니다. viewModel에서 데이터를 불러옵니다. 그러면 viewModel에서는 Pager를 어떻게 구현하고 있을까요? 아래와 같이 가져오고 있습니다. 여기에서 몇개 처음보는 애들이 있는데 PagingConfig pagingSourceFactory cachedIn 들에 대해서 보겠습니다. PagingConfig -> 한번에 얼마나 데이터를 긁어올 것인가 입니다. pagingSourceFactory -> Repository에서 PagingSource를 불러오는데 뒤에서 볼게요. cachedIn() 연산자는 데이터 스트림을 공유 가능하게 하며 제공된 CoroutineScope을 사용하여 로드된..

Android Jetpack 2023.02.25

Paging LV1 - 1 (paging이란?)

간단하게 Paging에 대해서 알아보겠습니다. 구글 공식문서부터 한번 읽고 가볼까요? 페이징 라이브러리 개요 페이징 라이브러리를 사용하면 로컬 저장소에서나 네트워크를 통해 대규모 데이터 세트의 데이터 페이지를 로드하고 표시할 수 있습니다. 이 방식을 사용하면 앱에서 네트워크 대역폭과 시스템 리소스를 모두 더 효율적으로 사용할 수 있습니다. 페이징 라이브러리의 구성요소는 권장 Android 앱 아키텍처에 맞게 설계되었으며 다른 Jetpack 구성요소와 원활하게 통합되고 최고 수준으로 Kotlin을 지원합니다. "주목해봐야 할 것은 대규모 데이터를 처리할 수 있다" 정도인 것 같습니다. 자 그렇다면 조금 더 읽어볼까요? 페이징 라이브러리를 사용하여 얻을 수 있는 이점 페이징 라이브러리에는 다음과 같은 기능이..

Android Jetpack 2023.02.23