Table of Contents

EasyAR Sense のライセンスキーによる初期化

Unity で EasyAR を使用するには、機能がアクティブ化されるように、ライセンスキーを使用して EasyAR Sense を初期化する必要があります。初期化には自動初期化と手動初期化の 2 つの方法があります。

初期化が成功すると、Unity コンソールまたはオペレーティングシステムのログに EasyAR Sense のバージョン番号と実行プラットフォーム情報が表示されます。例:

EasyAR Sense (Android-arm64) Version 4.7.0.11800-cf8e24e30

開始する前に

  • EasyAR Sense ライセンス では、EasyAR Sense ライセンス(ライセンスキー)の取得方法について説明しています。EasyAR Sense を初期化する前に、実際に使用するデバイスと開発段階に適したライセンスを準備する必要があります。

自動初期化

自動初期化は、ほとんどの使用シナリオに適しています。

EasyAR グローバル設定 を開き、Initialize On Startup オプションをチェックし、EasyAR Sense License > LicenseKey を入力します。

alt text

自動初期化は、Unity の BeforeSceneLoad タイミングで自動的に呼び出されます。

注記

エディターで使用されるライセンスはアプリケーションパッケージ名を検証しないため、エディターで正常に動作するライセンスでも、プラットフォームアプリまたはアプリにビルドして実行すると失敗する可能性があります。この場合、次の 2 点に注意する必要があります:

  1. 入力したライセンスのパッケージ名は、Unity Player Settings に入力した bundle id/package name と一致している必要があります。
  2. Unity でビルドした後、gradle または XCode プロジェクトでパッケージ名を変更した場合。この場合は、Unity で gradle または XCode のパッケージ名を使用する必要があります。

[オプション] 手動初期化

手動初期化は、カスタムの初期化プロセス、例えば EasyAR インターフェースを呼び出す前にユーザープライバシー説明を表示する場合などに主に使用されます(コンプライアンスガイド を参照)。

EasyAR グローバル設定 を開き、Initialize On Startup オプションのチェックを外します。

alt text

次に、EasyARController.Initialize() インターフェースを使用して手動で初期化を呼び出します。

パラメータでライセンスを渡すことができます。

EasyARController.Initialize("my-license");

または、EasyAR グローバル設定 に入力したライセンスを使用することもできます。

EasyARController.Initialize();
重要

EasyARController.Initialize() は、ARSession を起動する前に呼び出す必要があります。

特殊な状況で EasyARController.Initialize() を複数回呼び出す必要がある場合、各 EasyARController.Initialize() 実行後に EasyARController.Deinitialize() を使用して初期化を解除する必要があります。

初期化失敗の解決方法

ARSession を含むシーンを実行した後、ログに類似した情報が含まれていない場合、初期化が失敗したことを示します。

EasyAR Sense (Android-arm64) Version 4.7.0.11800-cf8e24e30

Unity エディターでは、次のようなポップアップが表示される場合もあります。

alt text

注記

ポップアップに表示されるテキスト情報を注意深く読む必要があります。すべてのポップアップが初期化失敗を示すわけではありません。

一般的なエラーメッセージとその原因は次のとおりです:

  • EasyARSettings is not found
    • EasyAR グローバル設定 リソースファイルが作成されていない(ライセンス未入力でよく発生)
  • License Key is empty
    • EasyAR グローバル設定 にライセンスが入力されていない、またはプロジェクト内に複数の EasyAR グローバル設定 リソースファイルが存在する
  • EasyARController.Initialize is not called (InitializeOnStartup = false)
    • 手動初期化が適切なタイミングで呼び出されていない
  • EasyAR stops after script change in play mode
    • エディターで実行中にスクリプトが変更された。再実行が必要

関連トピック