java 安卓调试,Android Studio(二十一):调试你的应用
Android Studio包含了一個調(diào)試器,允許你調(diào)試運行在Android虛擬機(jī)或連接的Android設(shè)備的應(yīng)用。通過Android Studio的調(diào)試器,你可以:
1、 選擇你調(diào)試設(shè)備的app
2、 為你的代碼設(shè)置斷點
3、 在運行時檢測變量和表達(dá)式
4、 截圖和錄像
通過點擊工具欄中的Debug按鈕來開始調(diào)試,Android Studio生成一個APK,并且使用調(diào)試key進(jìn)行簽名,安裝到選定的設(shè)備中運行并打開調(diào)試Debug窗口。
如果點擊Debug后,在Select Deployment Target窗口沒有出現(xiàn)任何設(shè)備,你需要連接一臺設(shè)備或者創(chuàng)建一個虛擬機(jī)。
如果你的app已經(jīng)運行在一個連接的設(shè)備或虛擬機(jī)中,你可以通過如下方式開始運行:
1、 點擊Attach debugger to Android process
2、 在Choose Process 對話框,選擇進(jìn)程。
3、 點擊OK
Debug窗口出現(xiàn)。
4、 點擊Terminate結(jié)束調(diào)試。
使用系統(tǒng)日志
系統(tǒng)日志顯示了你調(diào)試app時的系統(tǒng)信息。這些消息包含你app運行在設(shè)備中的信息。如果你想用系統(tǒng)日志來調(diào)試你的app,確保你寫了打印日志的相關(guān)代碼。
在你的代碼中打印日志消息
在你的代碼中打印日志消息,使用Log類。如下:
Java代碼importandroid.util.Log;
...
publicclassMyActivityextendsActivity?{
privatestaticfinalString?TAG?=?MyActivity.class.getSimpleName();
...
@Override
publicvoidonCreate(Bundle?savedInstanceState)?{
if(savedInstanceState?!=null)?{
Log.d(TAG,?"onCreate()?Restoring?previous?state");
/*?restore?state?*/
}?else{
Log.d(TAG,?"onCreate()?No?saved?state?available");
/*?initialize?app?*/
}
}
}
在開發(fā)過程中,你可以捕獲異常并打印stack trace到系統(tǒng)日志:
Java代碼voidsomeOtherMethod()?{
try{
...
}?catch(SomeException?e)?{
Log.d(TAG,?"someOtherMethod()",?e);
}
}
查看系統(tǒng)日志
在Android DDMS工具窗口中查看系統(tǒng)日志:
1、 在調(diào)試模式啟動你的APP
2、 點擊Android Monitor
3、 如果在Logcat視圖中系統(tǒng)日志是空的,點擊Restart。
Android DDMS工具窗口給你從Android Studio中訪問DDMS某些特性的權(quán)限。
系統(tǒng)日志顯示來自Android服務(wù)和其他Android應(yīng)用的消息。通過以下方式進(jìn)行過濾:
1、 顯示特定進(jìn)程的日志消息,在Devices視圖中選擇相應(yīng)進(jìn)程,然后點擊Click Show Logcat from Selected Process。如果你的Devices視圖沒出點,點擊Android DDMS工具窗口右邊的Restore Devices View,這個按鈕僅僅在你隱藏了Devices窗口時才可用。
2、 也可以根據(jù)log level來過濾
3、 也可以在輸入框中輸入特定的字符串,點擊回車。
斷點
Android Studio支持多種不同的斷點來觸發(fā)不同的調(diào)試動作。最常用的是行斷點,應(yīng)用在特定的行停止。暫停時,你可以檢查變量,表達(dá)式,也可以單步執(zhí)行來確定運行錯誤的原因。
添加一個行斷點,可以按照以下方式:
1、 找到你需要執(zhí)行到暫停的行,點擊代碼編輯器的左邊,或者將光標(biāo)移動到指定的行,店家Ctrl+F8。
2、 如果你的應(yīng)用已經(jīng)運行,直接單擊Attach debugger to Android process。
當(dāng)你的代碼執(zhí)行到斷點的位置,Android Studio暫停了你的應(yīng)用的執(zhí)行。你可以使用調(diào)試器中的工具來查找錯誤的原因。
查看和配置斷點
查看所有的斷點和配置斷點設(shè)置,點擊Debug窗口左邊的View Breakpoints,如圖:
Breakpoints窗口允許你開啟和禁用左邊列表的每個斷點。如果斷點被禁用,Android Studio在到達(dá)這個斷點時不會停止。
2017年5月31日
總結(jié)
以上是生活随笔為你收集整理的java 安卓调试,Android Studio(二十一):调试你的应用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python locust api_干货
- 下一篇: android8 通知呼吸灯_Andro