SDK35対応とAndroid Billing Library7.0.0対応の他に新たに「16 KB メモリのページサイズをサポートしている必要がある」という問題が来た。UE5.6では対応済みのようでこれにアップデートすればいいのだが、UE5.6ではプラグインVaRestが未対応で5.6用に作り替える必要があるので、このまま5.4.4でも対応できないかやってみる。
やはりSDK35対応版では16kb非対応になってる。
なので何とかならないか調べてみる
やっぱり結構困ってる人がいるみたいで対応策が書かれている。
NDKr28+はそのままでOKのもよう。
NDKr26なんかはリビルドが必要とのこと、-Wl,-z,max-page-size=16384で。
なのでUE5.4.4でもビルドしてるだろうからnその個所を探してみる。
GREPしてみると三か所見つけた。
なのでここを書き換える。
で、パッケージ化を実行
を!行けた。ではPlayコンソールに上げてみる。大丈夫か!
PlayコンソールにアップしなくともLinuxで16mb対応しているか確認できるようなのでWSLで環境を作っておく。
WSLでは起動時にSSDとHDDはマウントされるのだが、USBやSDカードなどはマウントされないのでマウントしておく。Windows11でe:などにUSBメモリがマウントされたいるのを確認する。
そしたらWSLでマウント用のディレクトリを/mnt/usb8gbなどとして作成しておく
そしたらマウントする。
これでWSLでも扱えるようになる。そうしたらWindows11で以降の操作をおこなう。
Windows11でマウントされているUSBメモリにcheck_elf_alignment.sh をDLしておくしておく。同時に同時に同じ階層に***.apkを入れておく。
※ここにはコマンドラインツールもあるがこれはこちらからDLしたものでこれもDLしておく
そしたらWSL端末でapt updateしてからunzipを入れて先ほどDLしたcmdtoolsをunzipして入れる
.bashrcにこの三行を最後に追加してビルドツール35.0.0を入れる
最後にNDK17を入れる
これで確認ツールが使えるようになったので動かしてみる
結果はPlayコンソールと同じ三点のライブラリが非対応