brunch

You can make anything
by writing

C.S.Lewis

by Tilltue Jul 17. 2016

Firebase iOS, 시작하기

swift 프로젝트로 firebase realtime database

Firebase 는 다양한 플랫폼과 기기에서 어플리케이션 데이터를 실시간 동기화를 지원한다. 구글이 인수한 이후로, 서비스가 확대되었으며 지원하는 기능은 다음과 같다.

Auth, Realtime Database, Storage, Crash report, Analytics 등을 지원한다.


이번 포스트에서는 firebase 에서 realtime database 를 사용하기 위한 설정을 알아본다.


firebase(https://firebase.google.com/)에 가입한다.

새 프로젝트 만들기를 눌러 프로젝트를 생성한다.

iOS앱에 firebase 추가를 눌러 bundleID (ex:firebase.firebaseTEST)를 추가하고 다음단계로 가면

GoogleService-Info.plist 파일이 다운로드 된다.

iOS 프로젝트를 하나 만들고, pod 설치를 통해 firebase 를 설치한다.

이전에 다운로드 받은 plist 파일을 프로젝트에 추가하자.

firebase 에 연결하기 위해 아래의 코드를 추가한다.


이제 준비는 끝났다.

실제로 데이터를 생성하기 위해 아래와 같이 코드를 넣어보자.


func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

        // Override point for customization after application launch.

        FIRApp.configure()

        let ref = FIRDatabase.database().reference()

        let itemsRef = ref.child("TEST")

        itemsRef.setValue(["Name":"Tilltue"])

        return true

    }

실행해보면

2016-07-17 02:02:25.988 firebaseTEST[92820:105868122] [FirebaseDatabase] setValue: or removeValue: at /TEST failed: permission_denied

이런 에러를 보게 된다.


firebase 의 기본 database rule 이 아래와 같이 인증이 필요한 상태로 되어있기 때문이다.

인증이 없어도 쓸수있게 다음과 같이 코드를 수정하자.

{

  "rules": {

    ".read": "true",

    ".write": "true"

  }

}


다시한번 XCode 에서 프로젝트를 실행해보자.

에러가 없어진 것을 볼수 있고, Firebase Console 에서 아래와 같이 데이터가 생성된 것을 확인 할 수 있다.


이제 firebase realtime database 를 사용할 수 있게 설정이 모두 끝났다.


다음 포스트에서는 auth 설정에 대한 부분과, database read  부분및 데이터 활용 방법에 대해 알아보겠다.

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari