< (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
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")
}
이렇게까지 환경 구성 완료!
다음 게시글로 계속~!
'Android Studio > 기능 사용법' 카테고리의 다른 글
Android Studio : (1) NoSQL 채팅앱 개발을 위한 환경 설정 (Firebase 연동하기) (0) | 2024.06.22 |
---|---|
Android Studio : (2) Google map 불러오는 코드 작성 (0) | 2024.06.19 |
Android Studio : (1) Google map 불러오기 설정 방법 (API 키설정 필요 매우 복잡) (0) | 2024.06.19 |
Android Studio : GPS 사용하기 위한 설정 방법 (0) | 2024.06.18 |
Android Studio : Fragment 설계를 위한 탭바 구현하기 (0) | 2024.06.18 |