firebase를 사용하여 환경 분할 설정

firebase를 이용한 환경 나누기를 할 때, 꼬집어서 여기에 정리해 둔다.

※이번은 release, debug의 2개로 나눈다.
※pod나 firebase의 셋업에 대해서는 생략한다

① 우선 firebase로 계정을 만들고 프로젝트를 2개 작성한다. (release용, debug용)



이런 식으로 두 가지 만들기


② 양쪽 프로젝트에서 GoogleService-Info.plist 얻기



③Xcode의 프로젝트에서 폴더를 두 개 만들고 나누다(debug 쪽은 이름을 바꾼다)





④환경 나누기 위한 파일 추가



FirebaseUtil.swift

import Foundation
import FirebaseCore

final class FirebaseUtil {

  static func setup() {
    #if DEBUG
    let name = "d_GoogleService-Info"
    #else
    let name = "GoogleService-Info"
    #endif
    let filePath = Bundle.main.path(forResource: name, ofType: "plist")
    if let options = FirebaseOptions(contentsOfFile: filePath!) {
      FirebaseApp.configure(options: options)
    } else {
      assertionFailure("Could'nt load config file")
    }
  }
}


⑤ 환경이 분리되었는지 확인하는 크래시용 ViewController 추가



CrashliticsViewController.swift
import UIKit

class CrashliticsViewController: UIViewController {


      @IBAction func tapCrash(_ sender: Any) {
        fatalError()
      }
    }

※Storyboard상의 버튼과 연결하고, 탭하면 충돌합니다.

⑥TARGET의 EditScheme을 열고 release나 debug로 나누는 것만





⑦크래쉬의 확인 방법으로 조금 문질러서, 이해하기 쉬운 기사는 이쪽



⑧각각 빌드하고 크래시시킨다



각 프로젝트의 Crashlytics를 확인하고 아래와 같이 나오면 OK

좋은 웹페이지 즐겨찾기