2019の4日目の@shtnkgmです!本記事ではiOSで開発/本番環境を分けてFirebaseを利用するTipsを紹介します。環境を分けて利用したいユースケースは以下のようなものが挙げられます。Crashlyticsの分析精度を高めたい実現方法Firebaseで開発/リリース環境を分けるまずはFirebase側の環境を分ける必要があります。Firebase側の環境を分けるには、以下のいずれかの方法で実現できます。Firebaseプロジェクトを環境毎に複数作成する同プロジェクト内にアプリを環境毎に複数作成するプロジェクト単位で分割した場合はユーザー権限設定も個別に行えますが、アナリティクスは同時にまとめて見られなくなるなどの違いがあるので、運用方法を想定して決めると良いかと思います。ConsoleからGoogleService-Info.plistという構成ファイルをダウンロードし、それがデフォルトで読み込まれます。環境毎に構成ファイルは異なるため、構成ファイルを切り替える必要があり、以下の2種類の方法があります。MembershipによってTargetで切り替える環境毎のGoogleService-Info.plistを別々のファイル名にするTargetが環境によって別れていれば前者でも問題ありませんが、後者のファイル名を区別する方法が分かりやすいためオススメです。別々のファイル名にする例)GoogleService-Info-dev.plist(開発環境)GoogleService-Info-qa.plist(QA環境)GoogleService-Info-release.plist(本番環境)注意ファイル名で区別する場合は、デフォルトのGoogleService-Info.plistというファイル名は利用しないほうが良さそうです。アナリティクスのレポートの信頼性を確保するにアナリティクスが失われる可能性があると記述があります。Macrosのマクロで以下のように構成ファイル名を分岐させると良いです。"GoogleService-Info-release"#endif構成ファイルは以下のようにconfigure(options:)メソッドで指定できます。Crashlyticsを利用している場合、Fabricの初期設定とシンボルファイル(dSYM)をアップロードする必要があります。environmentというエラーが発生します。"${PODS_ROOT}/Fabric/run"これを避けるためには、各構成ファイルをGoogleService-Info.plistにリネームしたものをビルドディレクトリにコピーします。Scriptより先に実行するように上に配置します。dSYMファイルのアップロードdSYMファイルのアップロード処理はFastlaneで自動化すると便利です。Fastlaneではupload_symbols_to_crashlyticsというアクションが利用できます。以下のように、アクションのパラメータに構成ファイルのパスやdSYMファイルの保存先を指定します。ENV['DSYM_PATH'])gsp_pathには環境毎の構成ファイルのパスを指定します。dsym_pathにはCI環境でビルドした際のdSYMファイルの保存パスを指定します。利用しているCIサービスによっては環境変数として与えられていることもあります。おわりに本記事ではiOSで開発/本番環境を分けてFirebaseを運用するTipsについて紹介しました。Consoleで重複して行う必要があるので、手間を減らすいい方法がないかなと思っています。本記事と関連する内容で何かアドバイスやご意見があればコメントに記載いただけると嬉しいです。2019の4日目の記事でした。upLoginユーザーは見つかりませんでした。