WWDC Quick Look 💓 By SwiftGGTeam
Explore App Store Connect for spatial computing

Explore App Store Connect for spatial computing

元の動画を見る

ハイライト

visionOS App Store は互換性のある iPad/iPhone App をデフォルトで自動掲載します。コード変更や新規ビルド提出は不要です。ネイティブ体験を目指すなら新規 App 作成またはプラットフォーム追加でユニバーサル購入を実現できます。TestFlight は visionOS を完全サポートし、プラットフォーム切り替え、自動更新、スクリーンショットフィードバックを提供します。


主要内容

visionOS App Store 開始時、すべての開発者が同じ疑問に直面しました。自分の App はこの新プラットフォームにどう現れるのか?

Apple は3つの道を示しました。最も簡単なのは何もしないことです。互換性のある iPad/iPhone App はすべて visionOS App Store に自動掲載され、コード変更も新規ビルドも不要です。2つ目は既存 App に visionOS プラットフォームを追加し、ユニバーサル購入を実現すること—iPhone で購入すれば visionOS でも使え、App 内課金も共有されます。3つ目は空間計算向けに一から設計する全新規 visionOS App の作成です。

どの道を選んでも、最終的には App Store Connect で掲載プロセスを管理します。本 Session はフローを3つに分解します:掲載戦略、TestFlight テスト、プライバシーラベル更新。

3つの掲載戦略

戦略1:自動互換(ゼロコスト公開)。互換 iPad/iPhone App はデフォルトで visionOS App Store に自動表示されます。開発者の操作は不要です。visionOS で体験が悪い App は、App Store Connect の Pricing and Availability ページで「iPhone and iPad Apps on visionOS」セクションを開き、「Make this app available」をオフにできます。Apps ページの省略号から「iOS Apps on visionOS Availability」を選び、一括管理も可能です。

戦略2:visionOS プラットフォーム追加(ユニバーサル購入)。既存 App レコードの左サイドバーで「Add Platform」をクリックし visionOS を選び、visionOS ビルドをアップロードします。1回の購入ですべてのプラットフォームで利用でき、App 内課金もクロスプラットフォーム共有されます。注意:ネイティブ visionOS 版を公開すると、以前の自動互換 iOS 版を置き換えます—ユーザーは iPad 互換版ではなくネイティブ App を見ます。

戦略3:新規 App 作成。Apps ページ左上のプラスから「New App」を選び、プラットフォーム一覧で visionOS を選択します。新ブランドや、既存 App と異なる価格/可用性戦略に適しています。作成時に名称、Bundle ID、SKU を入力します。

TestFlight の visionOS 完全サポート

TestFlight の visionOS サポートは他プラットフォームと同一です。内部/外部テストグループを作成し、メールまたは公開リンクでテスターを招待できます。既存 App に visionOS を追加した場合、既存テストグループをそのまま使え、テスターはマルチプラットフォームビルドを自動取得します。

各テストグループには、テスターがヘッドセットで互換 iPad/iPhone App をインストールできるかを制御するスイッチがあります。段階的にテスト範囲を広げられます:まずコアテスターでネイティブ visionOS 版を検証し、その後互換 App テストを段階的に開放します。

テスターのデバイス体験

テスターが visionOS で TestFlight を開くと、サイドバーにインストール可能な App が一覧表示されます—ネイティブ visionOS App と互換 iOS App を含みます。非互換 App は別の「iOS-only」カテゴリに分類されます。

開発者が visionOS と iOS の両方のテストビルドを提供すると、App ページ上部に切り替えボタンが表示され、インストールする版を選べます。App 詳細ページに説明とデバイス互換情報が表示されます。下にスクロールして App Settings では通知カスタマイズ、自動更新(新ビルドの自動ダウンロード/インストール)が可能です。

Beta App 名の横には他プラットフォーム同様の黄点マーカーがあります。互換 iPad/iPhone beta App は専用フォルダに入り、同様に黄点が付きます。

スクリーンショットフィードバックとクラッシュログ

テスターは visionOS で Digital Crown と上部ボタンを同時に押してスクリーンショットを撮影します。TestFlight で App を選び「Send Feedback」をタップし、問題を説明してスクリーンショットを添付します。提出前に切り抜きや注釈が可能です。

beta App がクラッシュすると、TestFlight が能動的にフィードバック送信を促します。テスターが操作手順を記述し、クラッシュログはフィードバックと自動送信されます。

開発者側分析

App Store Connect でフィードバックを見る際、プラットフォームとビルドバージョンでフィルタできます。詳細にはスクリーンショット、説明テキストが含まれ、クラッシュログはダウンロードまたは Xcode Organizer で直接開けます。

テスター参加指標は App Store Connect Web とモバイルの2か所で確認できます。指標には、あるバージョンをインストールしたテスター数、実際に起動した人数、クラッシュ/スクリーンショットフィードバックを送った人数が含まれます。ビルドバージョン別、またはテストグループ別に個別テスターの参加状況も見られます。

プライバシー栄養ラベルに3つの新データタイプ

visionOS では3つの新しいデータ収集タイプが導入され、App Privacy ページで正確に申告する必要があります:

  • Environment Scanning:周囲環境データ(メッシュ、平面、シーン分類、画像検出)を収集するか
  • Hands(Body カテゴリ下):手の構造と手の動きデータを収集するか
  • Head(Body カテゴリ下):頭部の動きデータを収集するか

これらは App Store 商品ページに表示され、ユーザーが App が何を収集しどう使うか理解できます。


詳細

既存 App に visionOS プラットフォームを追加(02:15

「Mountain Climber」という iOS App があり、visionOS でネイティブ体験を提供したいとします。手順:

  1. App Store Connect の Apps ページで Mountain Climber を選択
  2. 左サイドバーで「Add Platform」をクリック
  3. ダイアログで visionOS を選択
  4. Add をクリック
  5. visionOS ビルドのアップロードを開始

新しい App レコードは不要です。クロスプラットフォーム購入と App 内課金は自動共有されます。

キーポイント:

  • プラットフォーム追加後、App 名と URL はすべてのプラットフォームで一貫します
  • 自動ダウンロード有効ユーザーは各デバイスで App を自動取得します
  • ネイティブ visionOS 版公開後、visionOS App Store 上の iPad 互換版を置き換えます

互換 iPad/iPhone App の可用性管理(06:30

一括管理:Apps ページ左上の省略号 →「iOS Apps on visionOS Availability」。互換 App 一覧で visionOS 表示を個別に切り替えます。

個別管理:App の Pricing and Availability ページ →「iPhone and iPad Apps on visionOS」→「Make this app available」を切り替え。

キーポイント:

  • デフォルトですべて自動可用。個別にオンにする必要はありません
  • オフにすると、体験が悪い App はユーザー評価に直結するため、先にオフにする方が安全です
  • ページに現在版と近日公開版の互換性が表示されます

TestFlight テストグループ設定(09:45

各 TestFlight テストグループに「iPhone and iPad Apps on visionOS」スイッチがあり、テスターがヘッドセットで互換 App をインストールできるかを制御します。

段階的テストを支援する設計:

フェーズ1:内部テストグループ → ネイティブ visionOS 版のみ
フェーズ2:外部コアテスター → 互換 App インストールを開放
フェーズ3:公開リンクテスター → 全面開放

キーポイント:

  • visionOS ビルドは既存テストグループに配布可能。新規作成不要
  • 互換 App テストスイッチはグループごとに独立制御
  • テスターは同一 TestFlight App からすべてのテスト可能版を確認

テスターフィードバックフロー(13:20

スクリーンショットフィードバック手順:

  1. Digital Crown + 上部ボタンを同時押しで画面キャプチャ
  2. TestFlight を開く → App を選択 →「Send Feedback」をタップ
  3. 問題説明を入力
  4. スクリーンショットを添付(切り抜き/注釈可)
  5. 送信

クラッシュフィードバック:

  • App クラッシュ後 TestFlight が自動プロンプト
  • テスターがクラッシュを引き起こした操作手順を記述
  • クラッシュログはフィードバックと自動送信

キーポイント:

  • スクリーンショットは TestFlight 内で直接注釈可能。他 App への切り替え不要
  • クラッシュフィードバックは自動トリガー。テスターがメニューを探す必要なし
  • 開発者は App Store Connect でプラットフォーム/ビルドバージョン別にフィルタ可能

プライバシー栄養ラベルの新フィールド(16:50

App Store Connect の App Privacy ページ、Data Types セクションに以下が追加されました:

カテゴリデータタイプいつチェックするか
Environment Scanning周囲のメッシュ、平面、シーン分類、画像検出データを収集する
BodyHands手の構造と手の動きデータを収集する
BodyHead頭部の動きデータを収集する

これらは visionOS App だけでなく、他プラットフォーム App が同種データ(例:iPhone の LiDAR スキャン)を収集する場合も申告が必要です。

キーポイント:

  • Environment Scanning は独立したデータタイプカテゴリです
  • Hands と Head は Body 大分類下のサブタイプです
  • データ使用方式(トラッキング、ユーザー関連、非関連など)は個別に説明が必要です

重要ポイント

  • やること:iPad/iPhone App の visionOS 互換性を確認し、体験が悪い App をオフにする。価値:互換 App はデフォルトで自動掲載され、ユーザー評価と評判に直結します。非互換 App は UI ずれや操作問題が起きる可能性があります。始め方:App Store Connect → Apps → 省略号 →「iOS Apps on visionOS Availability」で個別確認。不明なものは先にオフにし、テスト後に再開。

  • やること:既存 iOS App に visionOS プラットフォームを追加しユニバーサル購入を実現。価値:1回購入でクロスプラットフォーム利用可能。新ブランド不要で URL とランキングを継承。始め方:App 左サイドバーの「Add Platform」→ visionOS 選択 → visionOS ターゲット付き Xcode ビルドをアップロード。

  • やること:TestFlight の「iPhone and iPad Apps on visionOS」スイッチで段階的テスト。価値:内部テスターでネイティブ visionOS 版を先に検証し、安定後に互換 App を外部テスターへ開放。早期テストが互換問題で妨げられません。始め方:内部テストグループ作成時に互換 App スイッチをオフ。ネイティブ版が安定したら外部グループでオン。

  • やること:プライバシー栄養ラベルを更新し visionOS 関連データ収集を申告。価値:Environment Scanning、Hands、Head は visionOS 特有のプライバシー敏感項目。漏れは審査拒否につながります。始め方:App Store Connect → App Privacy → Data Types で3項目を確認し、実際の使用に基づき説明を記入。

  • やること:TestFlight 自動更新でテスト効率を向上。価値:テスターが各新ビルドを手動ダウンロードせず、「旧版をテスト中」状況を減らせます。ビルド更新説明と組み合わせ、毎回 App を開くたびに注目点を伝えられます。始め方:TestFlight App の App Settings で自動更新を案内。各ビルドアップロード時にテスト要点を記載。


関連セッション

コメント

GitHub Issues · utterances