やしのブログ

無能底辺院生やらせていただいてます

Failure to initialize, your hardware is not supported

Android上のUnityでネイティブプラグインを使ったアプリを作ってたときのこと.
外部ライブラリを追加した時点でこのエラーが表示されて起動しなくなった.

どうやら追加したライブラリのAARファイルにarmeabi-v7a以外の端末向けのネイティブコードが入ってたのが悪いらしい.
対応してないアーキテクチャ用のネイティブコードが入っていると混乱するんだとかなんとか.

消せばいいらしいが自分でビルドしたライブラリじゃないのでどうしようかと思ったらaarファイルを展開してディレクトリ消すだけで動いた.
aarファイルはapkファイルと同じく中身はZIPなので拡張子を.zipにするだけでエクスプローラーから見える.

jni以下にアーキテクチャ別にディレクトリがあるのでarmeabi-v7aを消す.
自分の場合はarm64-v8aとx86x86_64があったので消した.
消す必要があるのは一部だけっだったような気もするけど面倒だったので全消し.

これを再圧縮してUnityに突っ込んだところ無事動いた.


Error | Unity Community