Android Studio/기능 사용법

Android Studio : (2) Firebase의 추가 기능 사용 설정 (Firestore, Storage, Realtime Database)

신강희 2024. 6. 22. 13:39
728x90

< (2) Firebase의 추가 기능 사용 설정

(Firestore, Storage, Realtime Database) >

 

# 이전 게시글에서 Firebase 연동은 모두 마무리 하였고, Firebase에서 지원하는 여러 유용한 기능들도 같이 사용할수 있다!

- 이중에 NoSQL Database인 Firestore Database와 Realtime Databasse 그리고, Storage 설정 방법에대해 정리!

 

# 우선 이전에 생성한 프로젝트에 앱추가를 완료하고, 좌측 빌드를 선택하여 필요한 기능을 선택

- 빌드 설정 및 더자세한 사용방법은 메뉴얼 참고 : https://firebase.google.com/products-build?authuser=0&hl=ko

 

Firebase Products

개발자가 사용자가 좋아할 만한 앱과 게임을 빌드하도록 지원하는 Google의 모바일 및 웹 앱 개발 플랫폼인 Firebase에 대해 알아보세요.

firebase.google.com

 

1) Firestore Database 연동하기

 

- 위치 설정! 최초 설정시 이후 변경이 불가능하므로 Seoul로 확인하여 설정!

 

- 보안 규칙 설정 하기! (실무에서는 당연히 프로덕션 모드를 사용하겠지만, 학습 목적이므로 테스트 모드로 설정)

 

# 자! 생성이 완료되었으면, 컬렉션과 도큐먼트를 설정해 준다! 이말은 Firestore의 구조와 관련있다.

 

  • 컬렉션 (Collection): 컬렉션은 도큐먼트의 그룹으로, 컬렉션 안에는 여러 개의 도큐먼트가 들어갈 수 있다.
  • 도큐먼트 (Document): 도큐먼트는 실제 데이터를 저장하는 단위로, 각 도큐먼트는 키-값 쌍의 데이터를 가진다.
// 예를들어 사용자 정보를 저장한다고 가정

users (컬렉션)
  |
  |-- user1 (도큐먼트)
  |      |-- ncikname: "Alice"
  |      |-- password: 1234a
  |
  |-- user2 (도큐먼트)
         |-- ncikname: "Bob"
         |-- password: 5678b
         
 // 위와 같이 컬렉션과 도큐먼트로 구조화하면, 
 // 특정 사용자의 정보를 쉽게 조회할 수 있고, 사용자 데이터에 대한 쿼리도 효율적으로 수행

 

 

# 이제 실제로 컬렉션과 도큐먼트를 설정해 보자.

 

# 문서 ID는 자동 ID로 설정해주어도 되고, 필드 값, 유형, 값을 넣어주면 된다.

- 추가하고 싶다면 하단에 필드 추가로 필드 항목 추가 가능

- 이런 식으로 firestore 데이터는 컬렉션안에 도큐먼트 형식으로 여러개의 필드들이 키-값 쌍으로 데이터를 저장!

 

# 마지막으로 안드로이드 스튜디오에서 개발환경에 SDK 추가 설치 필요!

- 모듈(앱 수준) Gradle 파일

- 당연히 이전장에 설치한 Firebase SDK는 이미 설치되어있는 환경에서 진행

dependencies {
    implementation("com.google.firebase:firebase-firestore")
}

 

# Firesotre는 연동 완료! 이제 빠르게 Realtime Database와 Cloud Storage로 연동 진행!

 

2) Realtime Database 연동

- 리얼타임 데이터베이스 만들기

 

- 위치가 세곳밖에 지원이 되지 않아서 한국과 제일가까운 싱가포르로 설정

 

- 보안 규칙은 테스트 모드로 실행

 

- 생성이 완료된 데이터 베이스 규칙에서 읽고,쓰기 권한을 허용하도록 수정해준다.

 

- 이제 이전과 동일한 gradle 파일에 SDK 추가 설치!

dependencies {
    implementation("com.google.firebase:firebase-database")
}

 

3) 마지막으로 사진과 동영상등 대용량 파일저장을 위한 Cloud Storage 연동!

- 스토리지 시작 (AWS S3 버킷 생성과 동일한 동작!)

 

- 스토리지 보안 규칙 설정

 

- 스토리지 위치 설정 (이전 설정한 DB 위치를 따라서 자동으로 설정됨)

 

- 버킷생성이 완료되면 폴더 만들고 폴더 선택후 파일 업로드!

 

- 이렇게 업로드 완료된 이미지를 선택하면 저장소 위치와 토큰 확인 가능!

 

- 이제 SDK 추가까지 마무리!

dependencies {
    implementation("com.google.firebase:firebase-storage")
}

 

이렇게까지 환경 구성 완료!

다음 게시글로 계속~!

 

반응형