【iOS】最新バージョンのビルドをうっかり自動リリースしてしまった話

1 min読了の目安(約1500字TECH技術記事

はじめに

今回はApp Storeにアプリを公開するにあたっての軽いやらかし事案というか、よく考えたらそりゃそうだよな、というようなTipsの紹介です。

具体的に何があったかというと、iOSアプリの更新バージョンをストア公開するにあたって

  1. Appleによるアプリ審査の合格
  2. 最終的にリリースしてよいかの決定
  3. リリースの実行

という手順を踏むべきところを

  1. Appleによるアプリ審査の合格
  2. リリースの実行

としてしまいました。

https://twitter.com/PyonCoin/status/1357485794814922752

呑気にツイートしてる場合じゃねえ・・・

リリース設定は引き継がれる

原因は単純明快で、今回リリースしようとしていたバージョン(βとしておきます)の 「バージョンのリリース」の設定が「このバージョンを自動でリリースする」 になっていたためです。

release_setting

いかなるアプリもストア公開にあたってはAppleの審査を受ける必要がありますが、この設定をしておくと 「審査合格後に自動的にリリース処理まで行う」 ような挙動になります。

この「バージョンのリリース」の設定値ですが、実は直前に行ったリリース時の設定値を引き継いだものがデフォルトでセットされます。
直前のバージョン(αとしておきます)のリリースが年末で関係者も集まりにくく、かつ軽微な修正だったので自動リリースの設定にしたのを失念していて、バージョンβもその設定のままリリースしてしまったという次第です。

αで初めて自動リリースをしたというのもあり 「そもそも設定値が引き継がれるのを失念していた+リリース時も各値を細かく確認する手順になっていなかった」 ためやらかしてしまいました。

これが仮にサーバサイドの更新も伴うような大規模なアップデートだった場合、アプリ単独でリリースされて不具合を起こす可能性もあったため、何気に重たい事案だと思います。
※今回もアプリ内で完結する軽微な修正だったので事なきを得てます。

公開取り下げもできるらしい

公開国をゼロにしたり、取り下げ申請を出せたりするようですが今回は利用しませんでした。
そういった対応を取った場合も速やかに修正版のアプリを提出する必要があります。

今後の対策

もともとリリース時のチェックリスト的なものは自分で作っていたのですが 「プロジェクト内部のバージョン情報が正しいか」や「参照している環境が製品版環境か」 のようにソースコードレベルでのチェック事項が主でした。

そこに「ストア公開時の注意点」のような項目を加えて、AppStoreGooglePlayStoreのダッシュボードからアプリを公開する際の確認事項を追加していくことにしました。
基本と言えば基本ですが、このあたりは慣れで作業していた節もあるのでしっかり明文化する事の重要性を再認識しました。

まとめ

今回はAppStoreにアプリをリリースする際に自動リリースしてしまった件を紹介しました。
大事には至らなかったのが幸いですが、一歩間違えば大規模な不具合になる可能性もあったのでAppStoreでアプリリリースを考えている方はこういった事例があることも忘れないようにしましょう。