Unity ARアプリ Androidで起動せず?

AR

今回はARについて触れてみたいと思います

参考文献:森 哲哉、布留川 英一、西森 文俊、車谷 勇人、一條 貴彰、打田 恭平、轟 昂、室星 亮太、井本 大登、細田 翔、西岡 陽、平井 佑樹、コポコポ、すいみん、Maruton、Karukaru、ハダシ A、notargs、EIKI‛、おれんじりりぃ、黒河 優介、中村 優一、藤岡 裕吾  

UNITYゲーム プログラミング・バイブル2nd GENERATION 株式会社ボーンデジタル 2021 556ページ



AR環境作成

3Dで新規プロジェクトを作成します

file→Build Settingsでアンドロイドを選択し、Switch Platfomをクリックします

パッケージマネージャーにてAR FoundationおよびGoogle ARcore XR Pluginをインストールします

Edit→project settings→プレイヤー内の

Other Settingsにて、Auto Graphics APIのチェックを外します(赤線部分)

Vulkanを外してOpenGLES3のみにします

続いてMinimum APl LexelをAndroid 7.0にセットします

PlayerからXR Plug-in Managementに切り替え、Google ARCoreにチェックを入れます

シーン内のセッティング

Main Cameraを削除し、写真のようにAR Sessionを追加します

続いてXR Originを追加します

オブジェクトを配置し、位置を全て0に変更し、XR Originの子にします

実行

file→Build Settingsを選択します

現在のシーンを選択し、Development Buildにチェックを入れます

Buildをクリックすると、apkファイルが生成されます

PCとAndroidをUSBケーブルで繋ぐとファイルが送れるようになるのでapkファイルをAndroidに送ります

Androidにてapkファイルをダウンロードすると実行可能な状態になります

実行すると・・・

この直後に落ちてしまいました

もふもふ
もふもふ

なんでやねん(;゚Д゚)

設定に不備がないか、Android側に不備がないか等模索した結果

どうやらARcore64ビットの要件というものがあるらしく

ARCore 64-bit requirement  |  Google for Developers

これによると、2020 年 8 月以降、一部の 64 ビットデバイスでは 32 ビット専用アプリのサポートが終了し、その他の64 ビットデバイスに関しても今後予告なく終了する可能性がある

32 ビット専用の ARCore 対応アプリをアップデートしないと、ARCore セッションの作成に失敗し、影響を受ける 64 ビットデバイスで拡張現実(AR)セッションを開始しようとするとクラッシュする可能性があります

もふもふ
もふもふ

ということは(;´・ω・)

32→64に変更

何も手を加えていない状態だと32ビットになっているようなので、以下の手順で64ビットに変更します

Edit→project settings→プレイヤー内の

ConfigurataionのところにあるScripting BackendをlL2CPPに変更

ARM64にチェック(赤線部分)

ビルドしてみると・・・

起動してくれました!



まとめ

今回はandroid9を使用していますが、もし同じ症状でお悩みの方がいたら、是非試してみて欲しいと思います

タイトルとURLをコピーしました