青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

++wythern++

X presents Y for a better Z

【轉】Android 調試技術

原文鏈接:
http://www.bobbog.com/archives/19


Android 調試技術

by bob

一、JAVA層單步調試

參見“用eclipse單步調試Laucher
參見“用eclipse編譯調試adnroid的Browser

二、Native層單步調試

參見“使用GDB 單步調試Android本地代碼

三、JAVA層堆棧打印

1. 在指定的函數內打印相關java調用

Log.d(TAG,Log.getStackTraceString(new Throwable()));

2. 普通JAVA進程堆棧

ActivityManagerService.dumpStackTraces

保存在系統設置dalvik.vm.stack-trace-file指定的文件data/anr/traces.txt中??梢园鄠€進程堆棧信息。

3. 內核進程堆棧

dumpKernelStackTraces,該函數為私有函數,不可調用。
代碼在frameworks/base/services/java/com/android/server/Watchdog.java
保存在系統設置dalvik.vm.stack-trace-file指定的文件data/anr/traces.txt中。

4. 出異常時打印當前堆棧

Exception::printStackTrace()

try {  ... } catch (RemoteException e) {   e.printStackTrace();   ... }

5. 輸出指定進程的堆棧

Process.sendSignal(pid, Process.SIGNAL_QUIT)

保存在data/anr/traces.txt。
這個只對java進程有效,由dalvikvm的SignalCatcher.c處理。

四、Native層堆棧打印

1. CallStack

使用方式:

#include <utils/CallStack.h> ... CallStack stack; stack.update(); stack.dump("");  // the parameter is prefix of dump

在使用之前需要修改system/core/include/arch/linux-arm/AndroidConfig.h

#define HAVE_DLADDR 1 #define HAVE_CXXABI 1

并在文件frameworks/base/libs/utils/Android.mk中大約105行(LOCAL_SHARED_LIBRARIES)后添加

ifeq ($(TARGET_OS),linux) LOCAL_SHARED_LIBRARIES += libdl endif

重新編譯,push生成的libutils.so到/system/lib/目錄下,重啟設備。

五、JAVA異常分析

這個android會輸出信息到logcat。容易分析。

六、Natvie異常分析

native進程異常會導致
debuggerd會輸出信息到logcat并保存到/data/tombstones。
可以修改system/core/debuggerd/debuggerd.c中dump_stack_and_code的代碼滿足更深的調試信息需求。

七、日志Log系統

在java中使用

import android.util.Log; ... Log.d(TAG,"log info");

在Native代碼中使用

#define LOG_TAG "YOUR_LOGTAG" ... #include <utils/Log.h> #define LOG_NDEBUG 0 ... LOGD("log info");

或者

Log.d(LOG_TAG,“log info”);

使用adb logcat時可以只顯示特定類別的LOG,還可以通過參數 -v threadtime 顯示線程號及時間信息。
普通標準輸出轉為Logcat

#system/bin/logwrapper 進程名

八、其他調試手段(命令行)

1. 打印指定JAVA進程的堆棧到文件中

#kill -3 pid

這里的3就是3.5節的Process.SIGNAL_QUIT。
輸出在data/anr/traces.txt文件中。
這個只對java進程有效,由dalvikvm處理。

2. 打印指定進程的堆棧到Logcat

#kill -11 pid 或者 #kill -7 pid

這個有時有效。其原理是利用了(六)節的機制。
可以用adb logcat看堆棧調用輸出。

3. 打印指定進程的系統調用

#strace -f -p pid -o output

主要輸出文件、SOCKET、鎖等系統操作的信息。
-f表示跟蹤所有子進程.
-o輸出log到指定文件,可不用。

posted on 2012-04-16 19:02 wythern 閱讀(5704) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲国产女人aaa毛片在线| 亚洲黄色天堂| 久久国产精品久久久久久久久久| 日韩一级黄色片| 欧美激情视频一区二区三区免费| 亚洲久久在线| 亚洲乱码国产乱码精品精可以看 | 欧美不卡高清| 久久黄色小说| 国产在线乱码一区二区三区| 久久阴道视频| 欧美激情网友自拍| 亚洲欧美日韩综合aⅴ视频| 亚洲婷婷国产精品电影人久久| 欧美日本亚洲韩国国产| 亚洲免费在线视频| 亚洲欧美一区二区激情| 在线观看欧美亚洲| 亚洲国产精品电影| 欧美区高清在线| 欧美与黑人午夜性猛交久久久| 午夜精品久久久久久久白皮肤 | 欧美午夜精品久久久久免费视| 亚洲综合三区| 久久久国产精品亚洲一区 | 亚洲亚洲精品在线观看| 亚洲一区三区在线观看| 亚洲成人在线视频播放| 亚洲视频一起| 亚洲人午夜精品| 亚洲免费网址| 最新高清无码专区| 欧美一区91| 亚洲影视中文字幕| 欧美成人按摩| 久久亚洲影音av资源网| 国产精品久久久久久久久动漫| 农村妇女精品| 国产伦精品一区| 亚洲另类自拍| 亚洲国产综合在线| 欧美综合国产精品久久丁香| 亚洲一区二区高清| 欧美区一区二| 亚洲电影免费观看高清| 影音先锋在线一区| 欧美一区二区三区日韩视频| 亚洲免费中文字幕| 欧美精品二区三区四区免费看视频| 久久视频国产精品免费视频在线 | 欧美一区二区三区免费大片| 亚洲天堂网在线观看| 欧美经典一区二区三区| 欧美黄网免费在线观看| 激情五月综合色婷婷一区二区| 亚洲在线视频观看| 亚洲一区二区三区中文字幕| 免费欧美日韩国产三级电影| 美女精品自拍一二三四| 国产一区二区成人久久免费影院| 亚洲在线1234| 校园春色综合网| 国产精品一区二区久久久久| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 香蕉成人啪国产精品视频综合网| 亚洲一二三区视频在线观看| 欧美日韩免费在线视频| 99精品视频免费全部在线| 99精品国产高清一区二区| 欧美精品久久99| 一区二区欧美在线| 欧美一二三视频| 国产亚洲综合在线| 久久免费视频在线观看| 亚洲大胆美女视频| 亚洲影院在线观看| 亚洲专区在线视频| 国产精品一区在线观看你懂的| 亚洲一区中文字幕在线观看| 欧美一区亚洲| 韩国精品一区二区三区| 久久躁狠狠躁夜夜爽| 亚洲大片在线观看| 在线一区欧美| 国产精品一区二区三区四区| 久久av最新网址| 欧美激情片在线观看| 亚洲视频久久| 国产一区二区三区高清播放| 久久久综合网| 亚洲免费成人av| 欧美一区二区三区免费在线看| 精品福利免费观看| 欧美精品一区二区三区很污很色的 | 久久亚洲精选| 国产精品99久久久久久久久久久久 | 久久久一区二区三区| 亚洲人成亚洲人成在线观看图片| 亚洲无人区一区| 国内精品久久久久久久影视麻豆| 欧美xart系列高清| 亚洲综合日韩| 亚洲高清av| 久久久久国产免费免费| 亚洲美女精品久久| 国际精品欧美精品| 国产精品99免费看| 欧美a级一区二区| 亚欧成人精品| 99国内精品| 欧美国产日韩一二三区| 欧美一区二区三区成人| 日韩一本二本av| 极品裸体白嫩激情啪啪国产精品| 欧美日韩在线一区| 免费久久99精品国产自在现线| 亚洲一区二区三区免费在线观看 | 欧美岛国激情| 久久久久久九九九九| 亚洲综合日韩| 夜夜精品视频一区二区| 亚洲成色777777在线观看影院 | 巨胸喷奶水www久久久免费动漫| 中文高清一区| 亚洲美女啪啪| 最新日韩在线视频| 欧美1区免费| 裸体女人亚洲精品一区| 久久精品72免费观看| 亚洲欧美国产不卡| 亚洲午夜一区| 亚洲午夜小视频| 亚洲深夜福利| 国产精品99久久久久久久女警 | 亚洲第一综合天堂另类专| 国产综合色在线| 国产欧美综合一区二区三区| 国产精品久久久爽爽爽麻豆色哟哟| 欧美激情精品久久久久久大尺度| 玖玖视频精品| 欧美18av| 欧美精品午夜视频| 欧美日本一区| 国产精品盗摄久久久| 国产精品a久久久久| 欧美午夜在线一二页| 国产精品xxxav免费视频| 欧美性猛交99久久久久99按摩| 欧美日韩在线大尺度| 欧美日韩综合另类| 国产精品美女久久久久久久 | 久久精品午夜| 久久精品一区| 美女视频网站黄色亚洲| 欧美国产日韩亚洲一区| 欧美激情乱人伦| 欧美日韩精品二区| 国产精品视频内| 国产一区二区三区四区老人| 亚洲第一在线综合网站| 99国内精品| 性欧美大战久久久久久久免费观看 | 极品尤物av久久免费看| 亚洲国产日韩欧美在线动漫| 亚洲黄色天堂| 亚洲欧美日韩精品一区二区| 久久国产综合精品| 欧美激情国产日韩精品一区18| 亚洲日本一区二区| 亚洲欧美成人在线| 久久婷婷蜜乳一本欲蜜臀| 欧美精品一卡二卡| 国产欧美一区二区三区沐欲| 国内精品久久久久国产盗摄免费观看完整版| 国产日韩欧美一二三区| 亚洲福利免费| 亚洲综合电影| 欧美成人激情视频免费观看| 99国内精品久久久久久久软件| 亚洲欧美日韩中文在线制服| 免费在线欧美黄色| 国产精品一区二区三区观看| 亚洲高清av| 欧美影院视频| 亚洲精品四区| 另类综合日韩欧美亚洲| 国产精品久久久久影院亚瑟| 亚洲国产美女精品久久久久∴| 亚洲欧美在线免费观看| 欧美高清在线精品一区| 亚洲欧美在线一区| 欧美日韩国产综合一区二区| 狠狠色噜噜狠狠色综合久| 亚洲午夜一区二区| 欧美激情精品久久久六区热门| 性欧美精品高清| 国产精品va在线| 99成人在线| 欧美激情一区二区三区在线视频| 欧美亚洲一区二区三区|