Swifter {Swift Developer}

메뉴

Swift기반으로 Firebase Database 사용하기

이 내용은 Firebase 입문하는 내용으로 간단하게 데이터 추가 및 검색, 업데이트, 삭제까지만 진행한다.

1. Xcode에서 프로젝트 만들기

Single View Application을 선택하고 FirebaseExam프로젝트를 만든다. Bundle Identifier명을 따로 복사해둔다.

2. Firebase에서 프로젝트를 만든다

구글 계정으로 로그인 한 상태에서 https://firebase.google.com에 접속하고 [무료로 시작하기]를 선택한다.

콘솔 화면으로 이동하면 [새 프로젝트 만들기]를 선택한다.

프로젝트 만들기 팝업이 나오면, 프로젝트 이름을 입력하고 국가/지역을 대한민국을 선택한다. 마지막으로 [프로젝트 만들기]버튼을 클릭한다.

3. iOS 앱에 Firebase 추가하기

[iOS 앱에 Firebase 추가]를 선택한다.

Xcode에서 만든 앱의 Bundle Identifier를 iOS 번들 ID항목에 입력하고 앱 닉네임은 입력해도 되고 안해도 된다. 마지막 App Store ID는 선택사항이지만 https://itunesconnect.apple.com 사이트에서 앱등록시 나오는 Apple ID를 입력한다. 모두 입력하였다면 [앱 추가]버튼을 클릭한다.

구성 파일 복사 단계 다음 포드 설치를 본 후 Xcode프로젝트에서 Podfile을 만들고 관련 프레임웍을 추가해놓자.

Firebase 연결을 위한 기본 AppDelegate클래스에 해당 초기화 코드를 추가하도록 하자.

다음으로 자동으로 생성되는 GoogleService-Info.plist를 다운로드 받고 Xcode프로젝트에 드래그하여 추가한다. 추가되면 일단 프로젝트를 닫자.

터미널 창을 열고 cd 명령어로 프로젝트 폴더로 이동한다. 다음으로 pod init명령어를 실행해서 Podfile을 만들고 sudo vi Podfile을 연다.

위와 같이 코드를 추가하고 pod install을 실행하여 Firebase 프레임웍들을 설치한다.

Firebase 버전이 2017년 2월 2일 현재 3.11.0인지 체크한 다음 이전버전을 사용한다면 pod update 명령을 통해 업데이트하기 바란다. 프로젝트 폴더에 가보면 FirebaseExam.xcworkspace 파일이 있는데 이제 이것을 사용하여 프로젝트를 열도록 한다.

4. 초기 설정하기

프로젝트를 열고 한번 빌드(Command + B)를 한다음 AppDelegate.swift에서 import Firebase 를 선언하고 초기화 코드 FIRApp.onfigure()를 추가한다.

5. 데이터베이스 규칙 변경하기

Firebase 콘솔의 Database를 선택하고 [규칙]을 선택한 다음 아래와 같이 변경한 다음, [게시]버튼을 클릭한다.

위와 같이 설정하면 모든 계층에서 누구나 읽고 쓰기를 할 수 있게 된다. 실제 공개하는 앱에서는 사용하지 않지만, 테스트를 위해 공개형태로 설정한다.

데이터 추가(setValue)

user/01/name: “명준”을 데이터를 추가해 보자.

위와 같이 스토리보드에서 텍스트입력박스와 버튼을 추가하고 아래와 같이 코드를 추가한다.

데이터 검색(DataSnapshot)

setValue와 DataSnapshot을 사용하여 추가한 데이터를 검색하는 기능을 추가해 보자. 추가하는 데이터는 나이를 받는 age: 39를 추가한다.

기존 ViewController에서 스토리보드에 입력받은 숫자값을 출력하는 Label을 추가하고 위와 같이 코드를 추가한다. 단, 앞에서 추가한 name: “명준”이라는 데이터가 삭제되어 버린다. 이것은 setValue가 지정한 계층 이라애 모든 데이터를 덮어쓰기 때문이다. 만약 현재 저장되어 있는 데이터를 그대로 두고 새 데이터를 추가하고 싶거나 일부 데이터를 변경하고 싶다면 updateChildValues를 사용한다.

데이터 업데이트(updateChildValues)

앞에서 삭제된 데이터를 다시 추가하고 싶다면 Value만 업데이트가 가능하다.

데이터 삭제 (removeValue)

앞에서 추가한 name: “명준”을 삭제한다.

이제 Firebase 입문을 해보았다.

 

 

Facebook Comments

카테고리:   Firebase, Swift 3.0

댓글

죄송하지만 댓글은 닫혀 있습니다.