iOSの場合、開発環境と本番環境を分ける場合、Firebaseのプロジェクトを分けるのが手っ取り早く行える方法だと思います。
##対象
Firebaseを導入したいiOSエンジニア
##前提
開発と本番でTARGETが分かれている
TARGETを複数作る方法はこちらから
##手順
- Firebaseにて2つプロジェクトを作成(開発用と本番用)
- 「GoogleService-info.plist」ファイルをダウンロードする(開発用プロジェクトと本番用プロジェクト)
- 「GoogleService-info.plist」ファイルの名称変更
- Xcodeプロジェクトに名称変更した「GoogleService-info.plist」ファイルを設置
- Xcode内で、ShellScript作成
- 開発、本番で読み込む「GoogleService-info.plist」ファイルを変える
##Firebaseにて2つプロジェクトを作成とダウンロード(開発用と本番用)
Firebaseにて2つプロジェクトを作成
(開発用と本番用)
プロジェクトの作成手順とPodsのインストール及び初期化はこちらを参照
ダウンロード内に「GoogleService-info.plist」ファイルが2つ存在する状態になる
##名称変更
ダウンロードした「GoogleService-info.plist」ファイルのうち、
- 開発用プロジェクト
- GoogleService-info-develop.plist
- 本番用プロジェクト
- GoogleService-info-Release.plist
##Xcodeプロジェクトに名称変更した「GoogleService-info.plist」ファイルを設置
ドラッグ&ドロップで追加
- 「Copy items if needed」
- 「Create group」
上記、2つにチェックが入っていることを確認してください。
##Xcode内でShellScript作成
ShellScriptを記載できる場所は
「TARGETS」 → 「Build Phases」
左上の「+」から、新しいScript「New Run Script Phases」を選択
コメントアウトされている
# Type a script or drag a script file from your workspace to insert its path.
部分に環境による「GoogleService-info.plist」ファイルの読み分けを記載します。
PATH_TO_GOOGLE_PLISTS="${PROJECT_DIR}/${PRODUCT_NAME}"
case "${CONFIGURATION}" in
"Develop" )
cp -r "$PATH_TO_GOOGLE_PLISTS/GoogleService-Info-develop.plist" "${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/GoogleService-Info.plist" ;;
"Release" )
cp -r "$PATH_TO_GOOGLE_PLISTS/GoogleService-Info-Release.plist" "${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/GoogleService-Info.plist" ;;
*)
;;
esac
以上で、環境によるFirebaseのプロジェクト分けは完了になります。
足らないこと、間違い等ありましたら、コメントもしくは、@gurensouen
にご連絡いただけますと幸いです。