LoginSignup
5
12

More than 5 years have passed since last update.

アプリ開発でdebug/staging/release環境があるならbundleは3種類あったほうが捗る

Last updated at Posted at 2017-01-24

swift3で新規アプリを作ることになったので備忘録です。

他の備忘録
- StoryBoardを使わないでプロジェクト作成(Xcode8,Swift3)
- アプリ開発でdebug/staging/release環境があるならbundleは3種類あったほうが捗る
- Staging用の環境設定をXcodeに追加する
- 設定画面をコードだけで書く時いつも悩む

たぶん捗る

アプリ開発でdebug/staging/release環境があるならbundleは3種類あったほうが捗ります。プッシュ配信や、iPhone内で本番と開発をわけられるからです。

やりたいこと

  • iPhone内で各環境、別々のアプリとして扱いたい
  • 各環境で別々にプッシュ通知を送りたい

準備

以下は作成サンプル。適宜つくるといい。
debug環境は実機で動かせるだけでよいので、developmentのプロビジョニングファイルしか作成しない。staging環境のプッシュはadhocで配布したものを対象にしているのでproductionのみ作成する。debug環境のプッシュはdebug実行しながら受け取りたい場合は作るといい。

Debug Staging release
AppId hoge_debug hoge_stg hoge
プロビジョニング(dev)
プロビジョニング(dist)
プッシュ(dev) 
プッシュ(pro)

Xcodeの設定

  • Target>General>SigningのAutomatically manage signingのチェックを外す

[76a0c37f979a72bf250d0971f6fcdb4a]_%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202017-01-24%2011.17.39.png

  • Signingを各環境にセットする
    bundleと一致しないSiginigはエラー表示されるが、正しい挙動。
    [feeee7b8d2969bcac015aeaa96fb0031]_%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202017-01-24%2011.21.23.png

  • BuildSettingsをセットする。TargetとProjectどっちも行うこと。

運用

  • 開発中はbundleをdebugにして開発する
  • adhocしたくなったら、bundleをstagingにする。Archiveする際、普通にやったらreleaseのreleaseのプロビジョニングが使用されてしまうので、Edit Scheme>Archive>Build Configurationで、Stagingを選択する
5
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
12