記事

デバイスのサポートとユーザーの許可の確認

AppがARKitを利用可能であること、ユーザーのプライバシーに配慮していることを確認します。

概要

ARKitには、iOS 11.0以降と、A9以降のプロセッサを搭載したiOSデバイスが必要です。ARKitの機能の中には、より新しいバージョンのiOSや特定のデバイスが必要なものもあります。また、ARKitはデバイスのカメラを使うので、iOSのプライバシー管理を設定し、ユーザーがAppのカメラアクセスを許可できるようにする必要があります。

デバイスの互換性サポートを扱う方法は、AppでどのようにARKitを使うかによって異なります。

  • Appの基本的な機能にARが必要な場合(バックカメラを使用): AppのInfo.plistファイルのUIRequiredDeviceCapabilities(英語)セクションに、arkitキーを追加します。このキーを使用すると、ARKit対応デバイスでのみAppを利用できるようになります。

  • 拡張現実がAppの二次的な機能の場合:適切なARConfigurationisSupported(英語)サブクラスのisSupported(英語)プロパティをテストすることによって、現在のデバイスが使いたいAR設定をサポートしているかどうか確認します。

  • AppがフェイストラッキングARを使う場合: フェイストラッキングには、iPhone Xの前面TrueDepthカメラが必要です。Appはほかのデバイスでも利用可能なので、ARFaceTrackingConfiguration(英語)をテストする必要があります。isSupported(英語)プロパティで、現在のデバイスがフェイストラッキングをサポートしているかどうか判断できます。

ユーザーの同意とプライバシーの扱い

AppでARKitを使うには、Appがカメラにアクセスすることをユーザーが明示的に許可する必要があります。Appで初めてARセッションを開始すると、ARKitによって、自動的にユーザーの許可が求められます。

iOSでは、Appがシステムがカメラやマイクへのアクセス許可を求める際に表示される固定メッセージを提供する必要があります。AppのInfo.plistファイルに、NSCameraUsageDescription(英語)キーが含まれている必要があります。このキーに対し、なぜAppがカメラにアクセスする必要があるか説明するテキストを提供し、ユーザーが安心してAppに許可を与えられるようにします。

AppがARFaceTrackingConfiguration(英語)を使う場合は、ARKitがAppにユーザーの顔の情報を提供します。ARKitのフェイストラッキング機能を使う場合は、フェイストラッキングおよび顔のデータをどのように使うかをユーザーに説明するプライバシーポリシーを、Appに含める必要があります。詳しくは、「Apple Developer Program使用許諾契約(英語)」を参照してください。

関連項目

最初のステップ

class ARSession(英語)

拡張現実の体験で必要となる、デバイスのカメラとモーションの処理を管理するための共有オブジェクト。

class ARConfiguration(英語)

ARセッション構成のための抽象基底クラス。