(轉(zhuǎn))Android生成heap dump文件(.hprof)

轉(zhuǎn)自:http://blog.csdn.net/sodino/article/details/38512473

一個heap dump就是一個程序heap的快照,可以獲知程序的哪些部分正在使用大部分的內(nèi)存稠肘。
它保存為一種叫做HPROF的二進制格式冀痕。對于Android執(zhí)行android.os.Debug.dumpHprofData(hprofPath)方法后所生成的文件荔睹,需要把.hprof文件從Dalvik格式轉(zhuǎn)換成J2SE HPROF格式。使用AndroidSDK提供的hprof-conv工具可執(zhí)行該轉(zhuǎn)換操作言蛇。

hprof-conv dump.hprof converted-dump.hprof  

Android代碼生成dump文件如下:

    public static boolean createDumpFile(Context context) {
        String LOG_PATH = "/dump.gc/";
        boolean bool = false;
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd_HH.mm.ssss", Locale.getDefault());
        String createTime = sdf.format(new Date(System.currentTimeMillis()));
        String state = android.os.Environment.getExternalStorageState();
        
        // 判斷SdCard是否存在并且是可用的
        if (android.os.Environment.MEDIA_MOUNTED.equals(state)) {
            File file = new File(Environment.getExternalStorageDirectory().getPath() + LOG_PATH);
            if (!file.exists()) {
                file.mkdirs();
            }
            
            String hprofPath = file.getAbsolutePath();
            if (!hprofPath.endsWith("/")) {
                hprofPath += "/";
            }

            hprofPath += createTime + ".hprof";
            try {
                android.os.Debug.dumpHprofData(hprofPath);
                bool = true;
                Log.d("nsz", "create dumpfile done!");
            } catch (IOException e) {
                e.printStackTrace();
            }
        } else {
            bool = false;
            Log.d("nsz", "no sdcard!");
        }

        return bool;
    }

不要忘記了在AndroidManifest.xml中聲明SDCard寫權(quán)限:

<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末僻他,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子腊尚,更是在濱河造成了極大的恐慌吨拗,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異劝篷,居然都是意外死亡哨鸭,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進店門携龟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來兔跌,“玉大人,你說我怎么就攤上這事峡蟋。” “怎么了华望?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵蕊蝗,是天一觀的道長。 經(jīng)常有香客問我赖舟,道長蓬戚,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任宾抓,我火速辦了婚禮子漩,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘石洗。我一直安慰自己幢泼,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布讲衫。 她就那樣靜靜地躺著缕棵,像睡著了一般。 火紅的嫁衣襯著肌膚如雪涉兽。 梳的紋絲不亂的頭發(fā)上招驴,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天,我揣著相機與錄音枷畏,去河邊找鬼别厘。 笑死,一個胖子當(dāng)著我的面吹牛拥诡,可吹牛的內(nèi)容都是我干的触趴。 我是一名探鬼主播,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼袋倔,長吁一口氣:“原來是場噩夢啊……” “哼雕蔽!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起宾娜,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤批狐,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體嚣艇,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡承冰,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了食零。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片困乒。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖贰谣,靈堂內(nèi)的尸體忽然破棺而出娜搂,到底是詐尸還是另有隱情,我是刑警寧澤吱抚,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布百宇,位于F島的核電站,受9級特大地震影響秘豹,放射性物質(zhì)發(fā)生泄漏携御。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一既绕、第九天 我趴在偏房一處隱蔽的房頂上張望啄刹。 院中可真熱鬧,春花似錦凄贩、人聲如沸誓军。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽谭企。三九已至,卻和暖如春评肆,著一層夾襖步出監(jiān)牢的瞬間债查,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工瓜挽, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留盹廷,地道東北人。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓久橙,卻偏偏與公主長得像俄占,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子淆衷,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,843評論 2 354

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,116評論 25 707
  • 由于Android是為移動設(shè)備開發(fā)的操作系統(tǒng)缸榄,我們在開發(fā)應(yīng)用程序的時候應(yīng)當(dāng)始終把內(nèi)存問題充分考慮在內(nèi)。雖然Andr...
    Ten_Minutes閱讀 941評論 0 3
  • 十月祝拯,給自己定下了的目標(biāo)甚带。很開心能夠找到自己的愛好? 每天都是那么的放松和自由她肯,可可老師說:"曼陀羅瑜伽是一種奉...
    tina_碎碎念閱讀 266評論 0 0
  • 這兩天朋友圈被《北京晴氨,有2000萬人假裝在生活》刷屏,這類充滿爭議性的話題注定會火碉输。批判或感同身受都可歸結(jié)為屁股決...
  • 壓力讀書班敷钾,這確實是一個讓我感到很有壓力的字眼枝哄,壓力的來源并不是來自30塊,而是讀書(笑)闰非。 對于我這種看閑書動力...
    兜里糖不賣閱讀 409評論 0 2