手に入れたApple Vision Proでアプリ開発。シミュレータから実機で開発の設定をしよう(バスケの言い分 第2回)

ガジェット XR / VR / AR
バスケ

エンジニアです。他にもDIY、3Dプリンタなどが趣味です。visionOSのディベロッパーになるぞ!という企画ものをYouTubeで公開してます。観てね。

特集

手に入れたApple Vision Proでアプリ開発。シミュレータから実機で開発の設定をしよう(バスケの言い分 第2回)
  • 手に入れたApple Vision Proでアプリ開発。シミュレータから実機で開発の設定をしよう(バスケの言い分 第2回)
  • 手に入れたApple Vision Proでアプリ開発。シミュレータから実機で開発の設定をしよう(バスケの言い分 第2回)
  • 手に入れたApple Vision Proでアプリ開発。シミュレータから実機で開発の設定をしよう(バスケの言い分 第2回)
  • 手に入れたApple Vision Proでアプリ開発。シミュレータから実機で開発の設定をしよう(バスケの言い分 第2回)
  • 手に入れたApple Vision Proでアプリ開発。シミュレータから実機で開発の設定をしよう(バスケの言い分 第2回)
  • 手に入れたApple Vision Proでアプリ開発。シミュレータから実機で開発の設定をしよう(バスケの言い分 第2回)
  • 手に入れたApple Vision Proでアプリ開発。シミュレータから実機で開発の設定をしよう(バスケの言い分 第2回)
  • 手に入れたApple Vision Proでアプリ開発。シミュレータから実機で開発の設定をしよう(バスケの言い分 第2回)

ついに発売されたApple Vision Pro。これを待ち侘びていたのは熱心なAppleファンだけではありません。アプリの開発者もこの日が来るのを一日千秋の思いで待ち侘びていました。

というのもこうしたAR環境のアプリの開発では、実際のデバイスでないと確認できない機能がたくさんあるからです。

例えばわかりやすいのはセンサーから情報を得るアプリ、シミュレータだとそもそも開発できないか、できても決まったセンサーのパターンで反応を試す程度のことしかできません。

また、3Dオブジェクトの配置や大きさ、ウィンドウとの距離感など、いままでの経験がいまひとつ役に立たない、今回の新しい空間プラットフォーム特有の勘所なども実機でないと試せません。

他にもアプリ実行中に割り込んでくるFaceTimeコールへの対応だったり、他のアプリと共存して動くが故のリソースの取り合いに対処するとか、現実のデバイスで初めて体験できることが山のようにあるのです。

僕も半年間アプリを開発してきましたが、基本的にはMacで走るシミュレータで動かして試すだけだったので、実際のデバイスでどう動くのかは、ほとんど勘でやってました。

ハンドトラッキングによる操作などは、どう足掻いてもデータ不足、ラボに何回か通った程度では調整し切れるものではありませんでした。

実機で自分のアプリを試せるというのは、ディベロッパにとってはある種の答え合わせ、そして次の機能開発のための大きな第一歩なのです。

発売前は製品版Vision Proで普通に開発ができるのか不明だった

実はプレオーダーが始まった日、僕らはまだ大きな疑問を抱えてました。それはVision Proの実機による開発環境がどうなるのかAppleからはちゃんとした情報が出ておらず、本当のところをわかっている人はおそらく一人もいなかったのです。

その時点でわかっていたことは、Appleがエンジニア向けサービスにはVision Pro Developer Kitというものを用意していたこと。

しかしそれは一般向けに発売されるVision Proと比べて違うものなのか、特別の何かがついているのか、オプションでバージョンアップできるのか。こうした情報もないままプレオーダーの日を迎えたのです。

すでにVision Proには拡張するための機能は用意されておらず、USBポートさえついていないということは事前の発表で明確になっていました。つまりケーブルで接続する術がないので、それを補う何かがDeveloper Kit版なのではないか、という噂がありました。

とは言え最近ではiOSのアプリ開発でもWiFi接続はメジャーな手段になってきてますし、Apple Watchを考えれば状況は一緒、なのでVision ProもWiFiで接続して開発できるであろうことは、希望的観測として持っていました。

前回お話しした通り、僕はその日に予約注文、発売日初日に無事ゲットすることができたわけで、とりあえず悩みはあったけど、実際には迷わず購入の決定をしたわけです。


もし万が一にも悩みが的中してしまい、市販のVision Proでは開発はできないよ、なんてことになったら地獄だぞと思ってました。別にもうひとつ開発キットを買ってくれなんて言われたら泣きますよね。

Developer Strapを使ったケーブル接続による開発

結果的には心配は杞憂に終わりました。発売日の当日になって開発者向けにDeveloper Strapというものを発売することが報じられ、翌日には正式にAppleからも発表され同日のうちに発売ページも用意されました。

しかし値段は299ドル。高いです。USBポートを追加するだけなのにそんな高いのか? 何か別の特別な機能、開発者サポートのためのチップが乗ってるとか? と世間が一瞬ざわめき立ちましたが、構造を聞いて納得、このストラップは右側のスピーカー部分のバンドを丸ごと取り替える形になっていたのです。

つまり、もともとそこについていたスピーカーもDeveloper Strapに内蔵されたものと交換というわけです。この辺りの構造が299ドルという値付けに反映されているようです。

納得はするけど、それにしても高い。多少不格好になってもポートだけを追加することはできなかったのか。まぁ、できてもしないんでしょう(笑)。それが今のApple、強気です、なんでもありです、従いますよ、えぇ。

とはいえ、開発者はこのストラップをつけることによりMacとVision Proを直接繋ぐことができ、接続の面でも安定した開発環境が手に入ります。値段に見合っているかは別として実利はあります。買ってしまう開発者も多そうです。

ですがここで大きな落とし穴が。まず開発者登録している人しか買えないものです。通常のApple Storeに並んでいる商品とは違います。購入のためにはサインインが必要になり、開発者登録していないアカウントであればそこで終了です。

そしてさらなる罠が、国の設定をUSAにしていないと買えないことです。これは痛い制限。ぼくもアプリを出している立場なので当然ながら開発者登録はしてありましたが、このアカウントは日本時代から使っているもので設定も日本に籍を置いたままです。

なんということでしょう、アメリカで販売するためのアプリは日本からでもサブミットできるのに、その開発に必要なストラップは買えないなんて。

まぁ、考えたらこれは当然でして、そもそも実機を日本で売ってないので、そのアクセサリであるストラップを売る理由もないかなと。

日本の開発者のアプリをアメリカで売ることができるのは、App Storeにアプリを流すときに開発側が選ぶ権利であって、売らない選択もできます。

それをあえて売るという決定をしているだけです。我々の責任、なので実機が販売されていない国に売る義務はない、と。

日本で活動している会社がアメリカの開発者アカウントを持っていることは普通ありません。なにしろ開発者登録なのでAppleに年会費を払わないと得ることのできないステータス。

アメリカでしか手に入らないアプリを買いたいという理由でアメリカのApp Storeのアカウントを作っている人も多いと思いますが、開発者登録は面倒臭さが段違いです。

これについては、Appleもなかなか残酷な対応してんな、と思います。今回のVision Proの発売においても、わざわざアメリカまで来て実機を買って帰る開発者の方もたくさんいると聞きます。

それはひとえに自社のアプリをもっとちゃんとVision Proに、スペーシャルコンピューティングの環境に適応させたいという思いからと想像できます。

Appleも、そこはなにも杓子定規に売らない選択をしなくても良いのではないかと思ってしまいますね。普通にApple Storeで売って、買いたい人は自己責任で、でいいのではないかと。

WiFi経由でのリモート接続でも開発できる

というわけで入手が難しいストラップですが、発売初日は情報も少なくこのストラップが必須なのかどうかいまいち定かではありませんでした。

でも前述のストラップの販売ページにも、これがあると「便利になる」と書いてあるぐらいなので、必須ではないんだろう、なにかワイヤレスで繋げる手があるんだろうなと模索していたところ、ようやく答えが見つかりました。

結論から言うと、できます。ちょっと手順が面倒なのですが、以下のステップで開発が始められます。

 1. 前提として同じネットワークに繋いで同じiCloudアカウントでログインしていること。

 2. Vision Pro側で Settings アプリを開き、Generalから Remote Devicesを開く。

 3. MacでXcodeを開き、WindowメニューからDevices and Simulatorsを開く。

 4. Vision Proが表示されるはずなので、Pairを押す

 5. Vision Pro側に表示される6桁の数字をXcode側に入力する。

これでVision ProとMacのペアリングが完了します。開発ができるようになるためにはあと一歩です。Vision Proの開発モードを有効にする必要があります。

 1. Xcodeで実行先にペアリングが終わったVision Proが表示されるようになるので選びます。

 2. ビルドするとエラーになりますが安心してください、正常です。これをするとVision Pro側にあらたなオプションが表示されます。

 3. Vision Pro側で Settings アプリを開き、Privacy & Securityを選ぶと新たなオプションとして一番下の方にDeveloper Modeが表示されます。これを有効にしてください。

 4. 再起動を促すアラートが表示されるので再起動。

 5. 再起動から戻ってくると、またさらにDeveloper Modeを有効にしていいのね? と尋ねられるので有効にしてください。これで設定完了です。

こうして有効になったデバイスに対してビルドしたアプリを実行できるようになります。

これまでになかった新しい開発体験

実はこのWiFi接続でのアプリ開発は、これまで開発者が一度も体験したことのない新しいスタイルを体験できるのです。それがVision Proの中でのサイド・バイ・サイド開発。

Macの画面を丸ごとVision Proの中に持ってくる機能(Mac Virtual Display)は、発売して間もなくアプリも決して十分揃っているとは言えない状況のVision Proにとって要となるべき重要な要素になってます。

その効果は絶大で、13インチのMacBook Airの小さな画面が、目の前の空間に大きく表示されます。これだけでも十分な魅力となりうる機能です。

ここで、当然ながら開発者も恩恵を受けます。XcodeがVision Proの中に表示されるわけです。

全画面表示したXcodeで実行対象をそのVision Proにすれば、ユーザー体験としてはVision Proの中で開発作業が完結することになります。

Vision Proの中でコードを書いて実行してテストする、このループを何度も繰り返さなくてはいけないのが開発サイクルですから、圧倒的に時間の節約になります。

コードを書いて実行ボタンを押したら、Vision Proをつけてアプリを操作してテストして、問題が見つかったらまたVision Proを外してXcodeに戻る。

もう面倒くさくてたまらないのです。僕はメガネも必要なのでさらに大変、なんどメガネをかけたままVision Proをつけようとしたことか。

そうなんです、僕は発売前になんどかDeveloper Labsに出向いていたので、実機での開発は体験済みではありました。

ただApple IDでログインすることは禁止されていたため、それが必須のVirtual Display機能は使うことができませんでした。これは発売日以降に体験して感動した機能の一つなんです。

実際に手にしてから実質2日、いろんな機能や他のアプリを試しながら自分のアプリも遊んでみていますが、いま本当に自分の考えの甘さを実感してます。

シミュレータでうんうん唸りながら捻り出した最終デザインが、まだまだ理屈優先で頭の中で考えたものだったなぁと感じています。

いくらラボで調整を繰り返してきたものでも、まだまだ最適化終わったぜっと言うには程遠かったのは明らかです。

僕もここまでで得られた知見をさらに盛り込んでアプリをアップデートして、早く次のバージョンをリリースしていきたいと思います。まだまだ忙しい日々は続きそうです。

《バスケ》

バスケ

エンジニアです。他にもDIY、3Dプリンタなどが趣味です。visionOSのディベロッパーになるぞ!という企画ものをYouTubeで公開してます。観てね。

特集

BECOME A MEMBER

テクノエッジ友の会に登録しませんか?

今週の記事をまとめてチェックできるニュースレターを配信中。会員限定の独自コンテンツのほか、イベント案内なども優先的にお届けします。