Firebase Cloud storage (파이어베이스 클라우드 저장소) 구현하기
Android/Firebase

Firebase Cloud storage (파이어베이스 클라우드 저장소) 구현하기

728x90
반응형

실시간데이터로는 이미지 같은 큰 용량을 저장하기에는 적절하지 않다.

따라서 큰 문서들, 이미지, 비디오파일과 같은 파일들을 저장하기위해서는 Cloud storage 를 사용하는것이 좋다.

장점 : 업로드 및 다운로드 할때 견고한 흐름을 제공한다. 다운로드할때 중간에 인터넷이 끊겨도 다시 연결됫을때 이어서 다운로드가 된다.

또한, 보안기능이 매우 뛰어나다. 누가 데이터를 접근할수 있는지에 대한 접근제어가 가능하다.

 

 

firebase console에서 가능한 기능은 다음과 같다

  • A. 콘솔에서 직접 스토리지로 파일을 업로드
  • B. 저장소에있는 데이터를 구성하기위한 폴더 추가
  • C. 현재 폴더 URL 복사
  • D. 저장 위치의 주소.

 

 

전체 흐름

 

 

  1. 버튼을 눌러서 Intent로 System photo picker 를 사용 (startActivityForResult)
  2. startActivityForResult 를 통해 사진 받아오고
  3. Firebase Storage의 특정 폴더에 저장 할 파일(photo picker로 받아온 사진)의 레퍼런스를 받아오고, Firebae에 업로드하고
  4. 저장소에 저장한 파일의 URI를 가져오고
  5. 업로드에 성공했을경우 Frandlymessage(실시간db)에 저장

 

 

-- 받아온 사진을 Storage 에 저장서버설정, 네트워킹, 보안 설정받

 

 

Firebase 저장소 보안 규칙이 Firebase 실시간 데이터베이스 보안 규칙간의 차이점

  • 저장소 보안 규칙에는 읽기 허용 및 쓰기 허용 (및 읽기, 쓰기 허용)의 두 가지 규칙 유형이있는 반면 Firebase 실시간 데이터베이스에는 .read, .write의 세 가지 규칙 유형이 있습니다. 및 .validate
  • Firebase 저장소 보안 규칙은 계단식이 아니므로 상위 항목에 대해 true 값이 모든 하위 항목이 true가되는 것은 아닙니다. Firebase 실시간 데이터베이스 규칙은 .read 및 .write에 대해 계단식으로 적용되므로 true 값은 노드가 true로 선언 된 지점 아래의 모든 하위에 적용됩니다.

 

 

 

 

 

ex

 

 

 

728x90
반응형