1 / 25

Android Debug

Android Debug. 建國科技大學資管系 饒瑞佶 2012/4. Debug 兩三事. 善用 Eclipse 提供的工具 (snippets 、 log) 與錯誤判別 ( 紅色底線 ) 利用 AlertDialog 或 Toast 印出階段結果 注意 AndroidManifest.xml 內需要開的權限 還是要多寫. Android Debug. 開發環境 Eclipse 的 LogCat 訊息視窗 Console, Problems… Logcat 自行加入顯示訊息 Toast AlterDialog … 透過 log 類別 +LogCat 視窗

cassady-roy
Download Presentation

Android Debug

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Android Debug 建國科技大學資管系 饒瑞佶 2012/4

  2. Debug兩三事 • 善用Eclipse提供的工具(snippets、log)與錯誤判別(紅色底線) • 利用AlertDialog或Toast印出階段結果 • 注意AndroidManifest.xml內需要開的權限 • 還是要多寫

  3. Android Debug • 開發環境Eclipse的LogCat訊息視窗 • Console, Problems… • Logcat • 自行加入顯示訊息 • Toast • AlterDialog … • 透過log類別+LogCat視窗 • Try…Catch… • 設定中斷點與追蹤變數值

  4. Eclipse的Console, Problems訊息視窗

  5. Eclipse的LogCat訊息視窗 1

  6. Eclipse的LogCat訊息視窗 Java Code Console LogCat 這裡是重點

  7. 錯誤訊息 這裡就是錯誤 而且是明顯的

  8. 錯誤訊息 大部分錯誤都有提示解法 只要把滑鼠靠近錯誤位置就可以

  9. 錯誤訊息

  10. 錯誤訊息 是最常看到的錯誤訊息 誰可以給我答案?

  11. 錯誤訊息 這裡有答案,不過…

  12. 開啟Eclipse的行號 顯示行號

  13. 自行加入顯示訊息-Toast 語法: Toast.makeText(this, 要顯示的文字資訊, Toast.LENGTH_SHORT).show(); • 放置原始碼內要顯示資訊的位置 • 訊息將自動顯示與關閉

  14. 自行加入顯示訊息- AlterDialog 語法: new AlertDialog.Builder(this) .setTitle(“視窗文字") .setMessage(“顯示訊息文字”) .setPositiveButton("確認",new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub } }) .show(); 需要: import android.app.AlertDialog; import android.content.DialogInterface; • 放置原始碼內要顯示資訊的位置 • 訊息不會自動關閉

  15. log類別+LogCat視窗 • 訊息分五類: • 冗長訊息(Verbose) • 除錯訊息(Debug) • 通知訊息(Info) • 警告訊息(Warning) • 錯誤訊息(Error)

  16. log類別+LogCat視窗 • Log 類別提供了五個方法:v, d, i, w, e • 方法定義: • 方法(標籤,訊息) • 方法:欲傳送冗長訊息時就使用v,欲傳送除錯訊息時就使用d,以此類推 • 標籤:為LogCat 的視窗中Tag 那一欄所顯示的文字,標籤可以任意字串,未來可以用其過濾訊息 • 訊息:即LogCat 子視窗中Message 那一欄所顯示的文字 需要: import android.util.Log; 例如: Log.v("MyMessage", "This line was executed."); Log.e("MyMessage", "submit is null.");

  17. log類別+LogCat視窗

  18. log類別+LogCat視窗 可點選LogCat 子視窗右上角綠色的十字圖示來建立一個過濾器:

  19. Try…Catch… try{ 程式碼 }catch(Exception e){ Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show(); }

  20. 設定中斷點與追蹤變數值 breakpoint

  21. 設定中斷點與追蹤變數值 開啟顯示Display視窗

  22. 設定中斷點與追蹤變數值 停在中斷點時,可以選取要觀察的參數或變數,按組合鍵CTRL + SHIFT + D,就會出現目前變數的值 再按CTRL + SHIFT + D,就會將變數值顯示在Display視窗 按F6,就會從中斷點往下執行

  23. 設定中斷點與追蹤變數值 ALT + SHIFT + ↑或ALT +SHIFT + ↓選取大括號區塊 可以知道該行程式被哪個大括號區塊涵蓋

  24. 程式效能追蹤 啟動效能記錄: Debug.startMethodTracing( "traceFileName" ); 停止效能紀錄: Debug.stopMethodTracing( ); 需要: import android.os.Debug; 加入WRITE_EXTERNAL_STORAGE 的 permission 記錄位置: sdcard 取出紀錄: adb pull /sdcard/traceFileName.trace . 檢視紀錄: traceview 目前路徑\traceFileName.trace

  25. 程式效能追蹤 檢視紀錄: traceview 目前路徑\traceFileName.trace 1.Name:所有調用項2.Incl:inclusive時間占總時間的白分比3.Inclusive: 調用占用時間.(包括了所有的子方法的調用時間)4.Excl: 執行占總時間的百分比5.Exclusive: 執行時間,不包含子方法的時間6.Calls+Recur Calls/Total: 調用和重復調用的次數7.Time/Call: 總的時間。(ms)

More Related