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上のボタンと繋いで、タップするとクラッシュします。