인프런 커뮤니티 질문&답변

최병채님의 프로필 이미지
최병채

작성한 질문수

냉동코더의 알기 쉬운 Modern Android Development 입문

Paging에 관해 질문이 있습니다.

작성

·

304

0

안녕하세요, Paging 강의를 듣고 개인적으로 공부하던 중 궁금한게 생겨서 질문드립니다.

강의에서 사용한 카카오 API는 요청 파라미터로 page 값과 size값을 넘겨주고 있는데, 이러한 파라미터가 있기 때문에 retrofit 응답에 Paging을 적용할 수 있는건지 궁금합니다.

제가 Paigng을 직접 테스트 해보고 싶어서 mocky.io에서 10000개의 이미지 url을 응답해주는 api를 만든 뒤 강의에서 한 것처럼 페이징을 적용해보았습니다. 그러나 Paging을 안쓴 RecyclerView 응답과 비교했을 때 시간차이가 안납니다. 페이징을 적용하면 매우 빠르게 이미지가 load될 줄 알았는데 그게 안됩니다. 제 지식으로는 이유를 알지 못해 코드를 잘못 짠건지 원래 안되는 api 형식인지 알 수 없어 질문납깁니다.

정리하자면, retrofit에 paging을 적용하기 위해선 카카오 api처럼 page나 size를 파라미터로 지정해야하고, is_end등의 response가 있는 통신을 해야 하는 건가요? 단순히 엄청 긴 json응답에 paging을 적용할 수는 없나요?

감사합니다.

답변 1

1

냉동코더님의 프로필 이미지
냉동코더
지식공유자

페이징은 API 로딩을 빠르게 하기 위함이 아니라 전체 데이터를 다 받지 말고 필요한 만큼만 잘라서 로딩하기 위해서 사용하는 것입니다. 물론 받아오는 데이터양이 줄어들긴 하겠지만 결국 API에 요청하는 시간이 드는것은 동일하기 때문에 획기적인 시간감소는 없을 겁니다.

그리고 Jetpack Paging은 유저가 지정해서 넘겨주어야 할 API의 page와 size값을 대신 계산해주는 API라고 생각하시면 되기 때문에 API가 그러한 기능을 당연히 지원해야 되겠죠.

최병채님의 프로필 이미지
최병채

작성한 질문수

질문하기