seoft

[Android, Glide] url로 부터 image file 저장하기 본문

android

[Android, Glide] url로 부터 image file 저장하기

seoft 2020. 6. 26. 01:25

파일 다운로드 관련해서 DownloadManager를 사용할 수 도 있지만,

큰용량이 아닌 url로부터 단순 이미지를 받기 위해서는 상황에 따라 코드가 복잡하고 과할 수 도 있다.

 

DownloadManager에 비해 Glide를 통한 방법으로 비교적 짧고 간단한 코드로 구현이 가능하다.

 

Glide에 url을 넣어 진행시키고 완료되면 onResourceReady가 비동기로 호출되고 그 콜백 내에서 File을 생성, 변환 해주는 방법이다.

 

필자는 Rx에 병렬적으로 진행하기위해 Single타입으로 반환했으며 cache경로에 랜덤한 파일명으로 저장시켜 사용하였다. 상황에 맞게 알맞게 고쳐 사용하면 될 것같다.

 

위의 함수를 사용한 부분인데 single타입의 리스트를 zip에넣어 활용하였다

 

이미지 외의 다운로드, progress, 다양한 state 관리 등 내부적인 기능을 이용해야 한다면 DownloadManager를 사용하되 간단하게 image만을 받아 사용한다면 작성한 방법도 고려해 볼 수 있지 않을까 싶다.

Comments