UnityでAndroidビルドしたapkをGooglePlayConsoleにアップロードして公開したところ、以下のように「64bitに対応していない」というエラーが表示されました。
エラー
このリリースは Google Play の 64 ビット要件に準拠していません以下の APK または App Bundle は 64 ビットのデバイスで利用できますが、32 ビット向けネイティブ コードしか含まれていません。6
アプリには 64 ビットと 32 ビットのネイティブ コードを含めます。Android App Bundle 公開形式を使用して、各デバイスのアーキテクチャが自動的に必要なネイティブ コードだけを受け取るようにします。これにより、アプリ全体のサイズが増大することを回避できます。
このエラーが出る前にやったこと
UnityのAndroidアプリ64ビット対応について検索して、それらを参考に以下のことをしました。
- PlayerSettings > Configuration > Scripting Backend をIL2CPPに変更する
- PlayerSettings > Configuration > Target Architectures のARM64にチェックを入れる
- 適切なNDKをインストールし、Preferences > Extra Tools 内で指定する
正確には3つ目のNDK設定に関しては事前に設定済みだったので、上2項目を設定しました。
そしてビルドしたapkをGooglePlayConsoleにアップロードしたのですが。。。
上記のエラーが表示されてしまいました。
いくつかのネット記事で調べた通りに設定したし、以前はできていたはず。。。
という感じでした。
原因と解決方法
「PlayerSettings > Configuration > Target Architectures のARM64にチェックを入れる」という部分で、同じ「PlayerSettings > Configuration > Target Architectures」 にある「x86」にチェックが入っていると、64bit対応できないようです。
x86のチェックを外すと、一部の古い端末では動作しなくなる(おそらく考慮する必要ない程度)のですが、64bit対応できるそうです。
コメント