トップページ > 記事閲覧
Android版DXライブラリの16KBページサイズ対応について
名前:大和団次郎 日時: 2025/12/27 10:52

DXライブラリをつかって、Androidアプリを制作しています。 今年の11月1日から、Androidストアには、 16KBページサイズでビルドしたアプリしかアップできなくなりました。 今のDXライブラリのAndroidサンプルをAndroidStudioで作成すると、 USBケーブル接続で正常に実機で動作するのですが、 Androidストアにアプリを登録し、アプリストアからインストールしてテスト実行すると、 アプリは起動せずに、すぐ終了します。 どうも、16KBページサイズでないコードを実行すると、強制停止させられるみたいです。 原因として、DXライブラリが16KBページサイズに対応していないのではないかと考えました。 16KBページサイズに対応する方法は、以下のサイト ://developer.android.com/guide/practices/page-sizes?hl=ja#compile-16-kb-alignment にあります 今のDXライブラリのAndroidサンプルをビルドすると、CMakeOutput.logの中に -z max-page-size=4096 という記述があるので、4KBページサイズではないかと思います(従来はそれでOKでした)。 こちらでも自作アプリを16KBページサイズに変更してます。 手順としては、 1。Android NDK 2。CMAKE を最新版にしてビルドしなおせば、16KBページサイズで 出力されるようです。 作業を以下に書きましたが、試行錯誤なので、参考にならないかも ://dnjiro.hatenablog.com/entry/2018/06/19/080049#16-KB-%E3%83%A1%E3%83%A2%E3%83%AA%E3%81%AE%E3%83%9A%E3%83%BC%E3%82%B8%E3%82%B5%E3%82%A4%E3%82%BA%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%882025111%E3%81%BE%E3%81%A7 これで作成したものをアプリストアに登録してテスト実行すると、ダウンロードのあと起動しません。 使用ライブラリが全て16KBページサイズにならないと起動しないようです(涙)。 DXライブラリが16KBページサイズなのかどうか、確認する方法がうまくいかず、間違っているかもしれませんが、 NDK、CMAKE、SDKなどを最新版にして、Android版DXライブラリを作成しなおしてみていただけないでしょうか。
メンテ

Page: 1 |

Re: Android版DXライブラリの16KBページサイズ対応について ( No.1 )
名前:管理人 日時:2025/12/28 23:31

ページサイズ16KB対応のご情報ありがとうございます この年末年始の間には対応したいと思いますので( 恐らく作業できるのは次の土日 ) 申し訳ありませんが暫くお待ちください m(_ _;m
メンテ
Re: Android版DXライブラリの16KBページサイズ対応について ( No.2 )
名前:管理人 日時:2026/01/04 02:19

お待たせしました AndroidStudio を最新版にアップデートしたところ今までの aファイル作成用のプロジェクトが ビルド失敗するようになってしまったので、zlib や libjpeg なども含めaファイル作成用の プロジェクトを全て再作成して最新の AndroidStudio でビルドし直してみました よろしければ最新版 AndroidStudio で再作成したこちらのaファイルで16KBページサイズに なっているかご確認いただけますでしょうか? m(_ _;m https://dxlib.xsrv.jp/temp/DxLibAndroidTest.zip // Android版
メンテ
Re: Android版DXライブラリの16KBページサイズ対応について ( No.3 )
名前:大和団次郎(いったん解決) 日時:2026/01/07 09:05

早速、作業していただき、ありがとうございました。 zipalign で、DXサンプルをビルドしてつくった.apk をチェックして DXライブラリが含まれているCPU別の4つの libnative-lib.so が、全て16KBアラインになっていることを確認しました。 ただ、DXサンプルをストアから、インストールすると落ちる問題はのこってます(涙) 最近のAndroidアプリは、Kotlinで画面をつくるらしく、 DXライブラリサンプルが Java で、layoutリソースをつかって 画面を作成しているところが問題かもと考えて、調べてます。 詳しい人情報求む もし何かわかったら、別スレッドで報告します Android版DXライブラリの16KB対応は完了しているようです ありがとうございました
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存