Hatena::ブログ(Diary)

ほぼメモ ご指摘歓迎

2010-12-29 androidのメモリ関連調査

気になること

Nativeのメモリ使用量・計測方法

ddms sysinfo

throw life さんのオブジェクト管理の話

http://www.adamrocker.com/blog/248/overview-of-the-dalviks-object-management.html

DalvikVM 内部動作についてのまとめ

http://togetter.com/li/13564

プロセスのメモリダンプ

adb shell dumpsys meminfo system

http://stackoverflow.com/questions/2298208/how-to-discovery-memory-usage-on-my-application-in-android/2299813#2299813

1プロセスは、NativeヒープとJavaヒープの合算が16Mbyteを超える時に、

OutOfMemoryとなるようである。

Bitmap どのタイミングでreleaseされるのか?


1プロセスのメモリ量はいくつ?Javaヒープ以外は縛られていない?

decoder->decode()時に、malloc()でメモリ確保できないとは、どういうことか?

ddms.bat

Gingerbreadのddms起動

Android-9へバージョンアップすると、

android-sdk-windows以下のファイル構成が変更される。

その結果、ddms.batがadbを認識できす、エラーを吐く。

環境変数Pathに、android-sdk-windows\platform-tools を追加すれば動く。

Eclipse(Helios) へのMemoryAnalyzerのインストール

  1. メニューより、「ヘルプ」→「新規ソフトウェアのインストール」
  2. インストールウィンドウより、「作業対象」=http://download.eclipse.org/releases/helios
  3. General Purpose Toolより、以下を選択
    • Memory Analyzer
    • Memory Analyzer(Charts) [optional]
  4. 後は手順どおりに選択していけばよい。