[Unity]ARCoreのmin_apk_versionでつまづいた話


はじめに

PlayConsoleでapkファイルをアップロードしようとしたら,こんなエラーが出てしまった.

今回はこのエラーをどうやって解消して無事にリリースできたかを書いていきます.

※いろんな方法でやってみましたが,失敗していた方法もあるので参考程度に見てください.

Unityのバージョン: 2018.4.1.f1
Vuforiaのバージョン: 8.3.8

方法1:(失敗した)

http://nn-hokuson.hatenablog.com/entry/2019/09/05/221336 
の真ん中にある記事ARCoreのmin_apk_versionでひっかかるを参考にaarファイルを設置してみます.
記事にあるcore-1.9.0.aarと最新版1.16.0の両方を試しました.
ARCoreの最新版は,
https://github.com/google-ar/arcore-unity-sdk/releases 
にありダウンロードして,Unityに.unitypackageをインポートします.
この時のバージョン番号(ex)1.16.0)で下のリンクを開きダウンロードします.

https://dl.google.com/dl/android/maven2/com/google/ar/core/core-<バージョン番号>.aar

ex) https://dl.google.com/dl/android/maven2/com/google/ar/core/core-1.16.0.aar

ダウンロードされたファイルをAssets/Plugins/Android/以下において終わりです.Androidのフォルダがない時は手動で作成しても問題ないです.

この状態でビルドしてアップロードを試みても,同じエラーがでて解消されませんでした.

方法2:(これも失敗)

方法1で試して失敗したので,別の方法を試みました.
似たような事例で,https://teratail.com/questions/242175 があったので,同じようにやってみました.
Window/Vuforia Configurationを開き(Ctrl+Shift+V),ARCore Requirementの項目をDONT_USEに変更します.

これでビルドしてアップロードしてもまたエラーが出た.

方法3:これは成功!

Vuforiaのフォーラムで似たような事例を発見.
https://developer.vuforia.com/forum/unity/play-store-submission-error-comgooglearcore
ここでも方法1でいっているやり方をとっている人もいれば,同じように方法1で失敗している人もいる.

この中に書いてあったAndroidManifest.xmlに書き込む方法を行う.
AndroidManifest.xmlはAssets/Plugins/Android/のなかにあります.
(ない方は,いったんアプリをビルドした後に,プロジェクト/Temp/StagingArea/AndroidManifest.xmlをコピーすればいいです.)

このAndroidManifest.xmlに

AndroidManifest.xml
<meta-data android:name="com.google.ar.core.min_apk_version" android:value="24" />
<meta-data android:name="com.google.ar.core" android:value="optional" />

を書き込みます.書き込む場所は<application android:label ...>ここ!</application>です.ここ!のところに書けば大丈夫です.

これでビルドしアップロードすると無事に成功しました.

さいごに

方法1,2でなぜ成功していないかはまだ分かっていません.しかし方法3で無事に成功してよかったです.

https://library.vuforia.com/content/vuforia-library/en/articles/Solution/arcore-with-vuforia.html によると,Vuforia8.5.8から,ARCoreが自動的に処理されるみたいなので,実はアップデートするほうが楽だったのかもしれません...