環境

  • [OS] Windows 11 Home
  • [Unity Editor] 2021.3.41f1
  • [SQLite] 3.41.2
  • [Android] 13

課題

  • UnityでAndroid向けのゲーム制作をしています。

  • ゲーム内のDBはSQLiteを使用。(費用をかけられない個人開発なので、従量課金のFirebaseは候補から除外)

  • ライブラリはここにある「Plugins」をダウンロードし、.meta 以外のファイルをUnityの[Assets]-[Plugins]に格納。(.meta はUnityが自動作成するファイルなので)

  • しかし、上記にはARM64用のライブラリが入ってなかったので、仕方なくビルド時に下記チェックを外していました。

    (A)

    [File]-[Build Settings]-[Android]-[Player Settings]-[Other Settings]-[Configuration]
    [Scripting Backend]で"IL2CPP"を選択した上で、[ARMv7]のみONで、[ARM64]はOFF
    
  • 出来上がった App Bundle を Google Play Console にアップロードすると、ARM64未対応のアラートが出ます。

解決

  • ここにある libsqlite3.so のみをUnity Editorから下記へDrag & Drop。(metaファイルは不要)

    Assets/Plugins/Android/libs/arm64-v8a/libsqlite3.so
    
  • 上記(A)の[ARM64]をONにして再ビルド。

  • これでPlay Consoleに上げることもでき、SQLiteの処理も動くようになりました。

参考