見出し画像

Apple Vision Proのアプリ審査について

はじめまして、XR開発でディレクタをしているFです。

6月27日に日本のApple Storeでも発売されたApple Vision Proですが、UPFTでは7月3日(水)~7月5日(金)で開催されたXR総合展にブース出展した際、Apple Vision Pro日本発売よりも前にリリースした5つのアプリ、そのうち3つ「トリらっくす」、「システムモニター」、「わびさび時計」をご来場者にブースで体験いただきました。

今回は、リリースした5つのアプリについてApp Storeへ申請を行ったのでApple Vision Proアプリ申請で気を付けておきたいことをディレクタ視点で記事にしたいと思います。

まず初めに、Apple Vision Pro用のアプリはiPhoneなどのiOSデバイス同様App Store Connectへ申請を行う形となります。

その為、基本的なApp Store Connectの利用方法については個人的に調べてもらい、今回はApple Vision Pro固有のポイントを押さえていこうと思います。

基本的な申請に必要な説明はApple側で公開されている(Apple Vision Pro用のApp Storeへのアプリの提出 – Apple Developer)のですが、公開内容だけではわかりにくいため、実際にリジェクトを受けた部分を踏まえ、下記2点について説明していきたいと思います。

  • スクリーンショットについて

  • フォントのリジェクト

スクリーンショットについて

App Storeの申請の経験がある方であればわかると思いますが、Appleの審査においてスクリーンショットはやや厳密で手間取りやすいポイントの一つとなっています。

Apple Vision Proも同様に少し細かい指定があります。
https://developer.apple.com/jp/help/app-store-connect/reference/screenshot-specifications/

【品質の確保】
質の高いスクリーンショットとアプリプレビューを取得するには、Reality Composer Proのデベロッパキャプチャ機能を使用します。ここでの注意はコントロールセンターで行われた画面録画からキャプチャしたスクリーンショットやアプリプレビューは使用しないでください。これらの録画はフォビエーションが施され、解像度が制限されているため、2Dで表示するためのApple Vision Proからスクリーンショットやビデオをキャプチャする方法について確認してください。

上記の通り、スクリーンショットの解像度にまで言及され、画面録画からのキャプチャを行うことを明確に禁止されています。

スクリーンショットの取得方法は下記3つです。

まず、基本的なApple Vision Proのスクリーンショット方法ですが、トップボタンとDigital Crownを同時押しして離すと撮影することが出来ます。
余談ですがトップボタンがカタカナ表記でDigital Crownが英語表記なのは気になりますね。

シュミレーターで撮影する方法については割愛しますが、本体にスクリーンショット機能があるにも関わらず、デベロッパ向けの撮影方法が用意されているのには、あるスクリーンショットを撮る為には基本機能でもシュミレーターでも撮影が難しいからです。
それはハンドトラッキングを利用するアプリの場合のスクリーンショットです。
先ほど、スクリーンショットの取り方は「トップボタンとDigital Crownを同時押しして離す」と説明しましたが、このボタンは本体上部の左右それぞれについている物理的なボタンでして、スクリーンショットを取るにはこの両方を押す必要があります。
つまり、通常スクリーンショットを取る場合、両手がスクリーンショットを取るために占有されてしまうのです。
例えば今回リリースした「トリらっくす」ではイマーシブモードで手の上に鳥を乗せる機能があり、アプリ説明としては必ずほしいスクリーンショットになりますが、スクリーンショットを撮っているその瞬間その手はApple Vision Proの本体をつかんでいることになります。

本体を握ったままでは 鳥を乗せられない

そんなジレンマを抱えているのが基本的なスクリーンショット機能となっています。

腕が4つあるか、もう一人サポートがいれば操作中に直接物理ボタンを押してもらうことも可能ですが、一人で行う場合は完全に撮ることができなくなってしまいます。

そこでデベロッパ向けのPCへ接続し撮影する方法というわけです。

こちらの方法、PCと接続してPC側で撮影ボタンを押すことでスクリーンショットが取れるというやり方なのですが、エンジニアの方に手伝ってもらいながら試したため、スクリーンショット撮影ボタンを押した数秒後に撮影される仕様が理解できず不具合だと思っていました。

しかし、ひとりでスクリーンショットを撮るために必須の機能だということが分かりました。Appleさん流石です。

尚、このスクリーンショットはシュミレーターでも取れるのですがシュミレーターで撮る場合、または本体のスクリーンショット機能で撮る際に気を付けてもらいたい点が一つあります。

それはApp Store Connect側のアップロードの仕様(https://developer.apple.com/jp/help/app-store-connect/reference/screenshot-specifications/)です。

こちら、他のデバイス同様厳密に 3840 x 2160 とサイズが指定されています。

しかし、本体によるスクリーンショットはこのサイズより小さく、Xcode上のシュミレーター側も表示サイズを変更できるものの、なぜかこの 3840 x 2160 のみ正常に表示されないのです。

Apple Vision Proの高い解像度に相応しいスクリーンショットの解像度ですが、先に説明した品質に関しても明言されているように低画質のものを引き延ばして使うことはできない、そう思われていたのですが、実はある程度の画質のものであれば引き延ばした後、トリミングして 3840 x 2160 にすることで使えるようになります。

フォントのリジェクト

もう一つ手間取ったものがリジェクトです。

すんなり通ることもあれば予想外の部分で指摘を受けるリジェクトですが、恐らくApple Vision Pro特有だろうというリジェクトを受けたので紹介したいと思います。

今回、リリースした「視線de定規」の審査中にこのようなリジェクトを受けました。

– Your app included low resolution or jagged images.

解像度が低くいかジャギーな画像があるという指摘ですね。

他の文章を読むにどうやら文字の視認性が悪いとのことでした。

文字が読みづらいというリジェクト自体はiOSアプリでもままあることですが、大抵はフォントデータや画像データの解像度が低いことが起因していると思われます。
しかし、今回は特別解像度が低いフォントは使用していないにも関わらず、指摘を受け、実際フォントの周辺にジャギーをが発生していました。
原因としましてはApple Vision Proの解像度が高く、相対的にフォント側の解像度が低いため低解像度に見えるというものでした。
カメラスルーで現実空間を違和感なく投影するApple Vision Proですが、その高解像度さにアプリ側も対応させる必要があるということです。

カメラスルーで現実空間を違和感なく投影するApple Vision Proですが、その高解像度さにアプリ側も対応させる必要があるという話です。

これはフォントに限らず2D素材全般に言えますが、通常のアプリ感覚で素材を作成しているとApple Vision Pro上で見た際に低画質に見えるという事になります。


こちらの解決方法は下記3点

  • フォントではなく高画質の2D素材として表示する

  • ダイナミックフォントを使用して都度高画質のフォントを表示する

  • 高画質のフォントを使用する

「視線de定規」では3つ目の高画質のフォントを作り対応しました。

他二つを使わなかった理由は下記のとおりです。

  • フォントではなく高画質の2D素材として表示する

 ⇒文言変更を行う際に画像の差し替えになることと、動的な部分では使用できないため

  • ダイナミックフォントを使用して都度高画質のフォントを表示する

 ⇒少ない容量で対応できるが、文字を表示するたびに負荷がかかるため


文言変更の可能性がなく静的でよい部分に関しては2D素材で表現することも視野に入れて開発するのが良いかと思われます。

詳しい対応内容や説明については担当エンジニアが別途記事を書くのでそちらを参考にしてみてください。

まとめ

  • iOSのアプリ申請に慣れているとスムーズ

  • スクリーンショットの取り方、ハンドジェスチャーが必要かは事前に確認しよう

  • 2D素材やフォントの解像度には気を付けよう

ちなみにですが、iOS用アプリをiPad表示で起動することができ、Apple Vision Pro上で利用できるようにするための方法もビルドはそのままで、対象端末にvisionOSを追加するだけというかなりデベロッパーに優しい作りになっているのも特徴です。

先日発売されたばかりのARデバイスですが、できることはかなり多く、そのデバイス自体の高性能さも含め、かなり期待できる新デバイスだと感じました。

今後もより面白いアプリが増え、visionOSが流行ることを願っています。

この記事が気に入ったらサポートをしてみませんか?