마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

파이어베이스 스토리지 이용방법 비동기? 다운은 어디에? url은 어떻게?

0 추천
File localFile = File.createTempFile("images", "jpg");
riversRef.getFile(localFile)
    .addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() {
        @Override
        public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) {
            // Successfully downloaded data to local file
            // ...
        }
    }).addOnFailureListener(new OnFailureListener() {
        @Override
        public void onFailure(@NonNull Exception exception) {
            // Handle failed download
            // ...
        }
    });

첫번째줄이 의미하는게 핸드폰에 image경로를 만들고 jpg파일로 다운로드 받겠다는 뜻인가요 ?

그리고 이 메소드가 비동기인기 궁금하고 다운로드 받아서 이미지 뷰에 띄우고 싶은데 다운받은 경로 어떻게 받는지 궁금합니다!

안드린이 (2,520 포인트) 님이 2018년 11월 3일 질문
안드린이님이 2018년 11월 3일 수정

1개의 답변

0 추천
 
채택된 답변
사용되는 함수들이 궁금하실땐 해당 함수를 컨트롤+마우스 좌클릭 하시면 들어가서 어떻게 구현되있는지 볼 수 있어요. 보시면서 직접 공부하시면서 코딩하셔야 나중에 도움도 되고 할겁니다.

File클래스의 createFile()함수를 열어보니 첫번째 인자는 접두어, 두번째 인자는 접미어 되어있습니다. 즉 image.jpg 임시파일을 생성하게 되는거죠. 그렇게 만들어진 파일에 riversRef라는 참조 경로로 부터 받아온 파일정보를 임시파일에 받아오는 것지요.

이미지 라이브러리 Glide로, Glide.with(context).load(file).inte(ImageView); 로 로컬파일을 이미지뷰에 띄울수 있으니 사용하시면 되겠구요.

위 저장소 참조 리스너에서 돌아가는 작업들은 모두 비동기 처리이구요, firebase문서랑 예제 찾아보면 화면 전환등과 같은 것으로 활동주기가 변할 때  이어서 처리 할 수 있는 작업등에 대한 것도 있네요.
익명사용자 님이 2018년 11월 3일 답변
안드린이님이 2018년 11월 3일 채택됨
도움이 됐어요 감사합니다!
...