アンドロイドアプリのメモリ管理

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
アバター
スライパ
記事: 9
登録日時: 12年前
住所: 北海道→東京

アンドロイドアプリのメモリ管理

#1

投稿記事 by スライパ » 10年前

主人公がアニメーション中心に動くゲームを作っているのですが、早くもメモリオーバー(72000バイト)してしまい手詰まり状態です。どうすればいいでしょうか?
添付ファイル
AndroidsCastle.zip
雪だるま崩し
(6.11 MiB) ダウンロード数: 110 回

ISLe
記事: 2650
登録日時: 13年前
連絡を取る:

Re: アンドロイドアプリのメモリ管理

#2

投稿記事 by ISLe » 10年前

無駄にイメージを複製しまくっているのが目に付きます。
  • イメージをオリジナルのピクセルサイズで扱う
    Androidはイメージを読み込むとき端末に合わせて自動的に大きさを変換するので、大量にメモリを消費することがあります。
    drawable-nodpiフォルダにイメージを格納すれば自動変換されません。
  • 同じ内容のイメージで複数のBitmapを作成しない
    BitmapFactory::decodeResourceのたびにイメージを展開するためのメモリが消費されます。
    同じリソースIDのBitmapはひとつだけ作成して参照するようにしましょう。
  • Bitmapを直接Canvasに描画する
    BitmapDrawableは使わずにCanvas::drawBitmapで描画しましょう。
まずはそんなところでしょうか。

アバター
スライパ
記事: 9
登録日時: 12年前
住所: 北海道→東京

Re: アンドロイドアプリのメモリ管理

#3

投稿記事 by スライパ » 10年前

参照と言うことは、

jikibit[7] = jikibit[0];

のようにすれば大丈夫なのでしょうか?

ひとまずまともに画面に表示されるようになったので解決とさせていただきます

閉鎖

“C言語何でも質問掲示板” へ戻る