TL;DR. 現在公開中のバージョンに法的または使い勝手の問題がある場合、Appleのヘルプページははっきりとこう明記しています——「アプリのアップデートを提出する必要があります」。削除ボタンはありません。しかし問題が、Last-Compatible Version Settings を通じて古いiOSバージョンのユーザーに今も提供している古いビルドにある場合は話が別です:Pricing and Availability を開き、Last-Compatible Version Settings に進み、そのビルドだけを選択解除します。新規インストールからは即座に消えます。すでにインストール済みの人には一切影響しません——これはバグではなく、別の恒久的な制限です。必要なロール:アカウント所有者、管理者、またはApp管理者。

ほとんどの開発者は、Last-Compatible Version Settings を一度しか開きません——古いiOSバージョンから抜け出せないユーザーが、対応する最後のビルドを引き続きインストールできるようにするためです。その同じ画面が、古いビルドの一つに問題が見つかった場合——期限切れの商標クレーム、後のリリースですでに修正済みのプライバシー問題、既知の脆弱性を含むバンドルSDKなど——にも使う場所だと気づく人はほとんどいません。App Store Connect のどこにも「このバージョンを削除」という独立したボタンはありません——これがその仕組みです。

アプリ全体を取り下げずに、古いApp Storeバージョンを1つだけ削除するには?

バージョンをそのまま削除することはできませんが、Pricing and Availability ページ下部の Last-Compatible Version Settings で選択解除すれば、提供を停止できます。このリストに表示されるのは、実際にApp Storeへ提出されたバージョンだけであり、Appleのヘルプドキュメントはこれがいつ適用され、いつ適用されないかを明確に説明しています。

Appleは、どちらのバージョンに問題があるかで明確に線引きしています:

  • 現在公開中のバージョンに問題がある場合。 Apple自身の言葉を借りれば:「バージョンのステータスが Ready for Distribution であり、そのバージョンに法的または使い勝手の問題がある場合は、アプリのアップデートを提出する必要があります」。この画面から公開中のバージョンを選択解除・削除することはできません——修正には、より新しいバージョン番号の新規提出が必要です。
  • 古いレガシービルドに問題がある場合(Last-Compatible Version Settings を通じて古いiOSユーザーに意図的に提供し続けているビルド)。これこそが選択解除リストの本来の用途です:Pricing and Availability → Last-Compatible Version Settings を開き、バージョンを選択し、ダイアログで問題のビルドを選択解除して「Done」をクリックし、最後に「Save」します。
  • アップデートでは修正できず、レガシー限定のビルドでもない場合。 Appleの最終手段を原文通りに引用すると:「アップデートを提出できない場合は、App Storeからアプリを削除する必要があります」——これは最終手段であり、詳しくはApp Storeロールバックガイドで解説しています。

これらすべてに必要なロールは:アカウント所有者、管理者、またはApp管理者——キーワードフィールドやサブタイトルを操作できるのと同じ顔ぶれで、マーケティングまで含む広いグループではありません。誰が何を操作できるかの詳しい内訳はApp Store Connectロールガイドをご覧ください。

古いバージョンを選択解除すると、すでにインストール済みの人にも影響しますか?

いいえ。Last-Compatible Version Settings でバージョンを選択解除しても、制御されるのは今後新たにアプリをインストールする人に提供されるかどうかだけです。すでにそのビルドをインストール済みのデバイスには何の影響もありません——それらのコピーは、これまでと全く同じように動作し続けます。

これは、アプリ全体の削除を含め、App Store Connect の提供制御全般に共通するルールです:Pricing and Availability ページで何をしても、すでにアプリを持っているデバイスには一切届きません。すでにインストール済みのコピーを本当に動作停止させなければならないほど深刻な問題であれば、App Store Connect にはそのための手段は一切用意されていません——サーバーサイドのキルスイッチや、自社アプリ内のリモート設定だけが唯一の道であり、これは完全にASOの範囲外です。

古いiOSバージョンをサポートしている場合に、これが重要な理由

古いiOSリリースから抜け出せないユーザーでもアプリをインストールできるように Last-Compatible Version を設定している場合(バージョンのロールアウトの仕組み全般についてはフェーズドリリースガイドを参照)、実質的にその古いビルドは固定されたままになります。パッチを当てることはできません——「アプリのアップデートをリリースすると、常に現在のバージョンが置き換えられる」ため、古いiOSのユーザーはOSをアップデートしない限り修正を受け取れません。リストから選択解除することが唯一のコントロール手段であり、それも新規インストールを止めるだけで、既存のインストールには影響しません。

実務上のポイント:深刻な問題を修正するたびに、Last-Compatible Version のリストを見直しましょう。その修正が古いiOSの新規ユーザーにとっても重要であるなら、そのビルドを今後も提供し続けるべきかどうかを判断する価値があります——誰かがそれをインストールしてから、数か月前に修正したはずのバグがまだ起きていると問い合わせてくる前に。

関連記事