偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

調(diào)試?guó)櫭葾pp源代碼的兩種方式

系統(tǒng)
調(diào)試是開(kāi)發(fā)App的必備技能,畢竟任何一個(gè)比較復(fù)雜的App都不可能一次編碼成功,如果App的預(yù)期與自己期望的不同,或由于某些原因異常中斷,就需要查中斷的原因,這些都需要調(diào)試程序。

[[351121]]

想了解更多內(nèi)容,請(qǐng)?jiān)L問(wèn):

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com/#zz

 調(diào)試是開(kāi)發(fā)App的必備技能,畢竟任何一個(gè)比較復(fù)雜的App都不可能一次編碼成功,如果App的預(yù)期與自己期望的不同,或由于某些原因異常中斷,就需要查中斷的原因,這些都需要調(diào)試程序。

調(diào)試程序有多種方法,比較常用的有設(shè)置斷點(diǎn)和輸出日志兩種方式,本文將詳細(xì)介紹這兩種調(diào)試App的方式。

1. 設(shè)置斷點(diǎn)

如果認(rèn)為需要跟蹤的代碼或bug在某行代碼的附近,可以單擊該行代碼前面的部分為該行設(shè)置斷點(diǎn),這時(shí)會(huì)在這行代碼前面出現(xiàn)一個(gè)紅點(diǎn),如圖1所示。

圖1 設(shè)置斷點(diǎn) 

然后點(diǎn)擊上方工具欄中如圖2所示的調(diào)試運(yùn)行按鈕。

[[351122]]

圖2 調(diào)試運(yùn)行按鈕

如果未遇到斷點(diǎn),點(diǎn)擊該按鈕會(huì)正常運(yùn)行程序,一旦遇到斷點(diǎn),程序執(zhí)行就會(huì)在斷點(diǎn)處停止執(zhí)行。知道按F7或F8鍵才繼續(xù)一行一行執(zhí)行程序,以便監(jiān)控程序中的相關(guān)變量的狀態(tài)。F7表示Step Into,F(xiàn)8表示Step Over。其中Step Into表示會(huì)跟蹤到方法內(nèi)部,例如,當(dāng)前正在執(zhí)行一個(gè)方法,按F7鍵會(huì)繼續(xù)跟蹤到方法內(nèi)部,然后繼續(xù)一行一行代碼執(zhí)行。Step Over會(huì)將方法當(dāng)做一行代碼執(zhí)行,不會(huì)跟蹤到方法內(nèi)部。所以如果認(rèn)為某一個(gè)方法肯定沒(méi)有問(wèn)題,就按F8,如果認(rèn)為該方法可能會(huì)有一些問(wèn)題,就按F7。

調(diào)試過(guò)程的效果如圖3所示。我們可以看到,在下方的Variables視圖中會(huì)顯示相關(guān)變量的當(dāng)前值。


圖3 調(diào)試代碼

 

2. 輸出日志

另外一種調(diào)試代碼的方式就是輸出日志,可以直接使用System.out.println(...)的方式將信息輸出到LogCat視圖中,例如,執(zhí)行下面的代碼,會(huì)在LogCat視圖中看到如圖4所示的信息。

System.out.println("hello world");

 

圖4在LogCat視圖中輸出的調(diào)試信息

HarmonyOS還提供了另外一種輸出日志的方式,這就是HiLog類(lèi),該類(lèi)提供了多個(gè)靜態(tài)方法,用于輸出不同級(jí)別的日志信息。這些靜態(tài)方法如表1所示。

表1 HiLog類(lèi)中用于輸出日志信息的方法

 這5個(gè)方法的參數(shù)完全相同,例如,error方法的原型如下:

  1. public static int error(HiLogLabel label, String format, Object... args); 

其中l(wèi)abel參數(shù)表示輸出日志的相關(guān)信息,類(lèi)型是HiLogLabel對(duì)象,format表示要輸出的日志文本(可以包括格式化占位符),args參數(shù)表示格式化的參數(shù)值,是可選的參數(shù)。

使用輸出日志方法的案例如下:

  1. HiLogLabel label = new HiLogLabel(HiLog.LOG_APP ,223, "MY_TAG"); 
  2. HiLog.error(label, "這是一行錯(cuò)誤信息,原因:%{private}s","Url不可訪(fǎng)問(wèn)"); 
  3. HiLog.warn(label,"這是一個(gè)警告,原因是:%{public}s""變量的值可能是負(fù)數(shù)"); 

 其中HiLogLabel構(gòu)造方法的第1個(gè)參數(shù)表示日志類(lèi)型,目前只能是HiLog.LOG_APP,后續(xù)會(huì)開(kāi)放更多的日志類(lèi)型。第2個(gè)參數(shù)是domain,就是一個(gè)整數(shù)類(lèi)型,第3個(gè)參數(shù)是日志的標(biāo)簽。Domain和日志標(biāo)簽都會(huì)以某種形式顯示在日志信息上。

在輸出日志信息時(shí),運(yùn)行格式化日志信息,也就是為日志信息指定占位符。占位符需要在%和符號(hào)(如s、d)之間加{private}或{public},如果加{private},輸出的信息就是 ,也就是說(shuō)會(huì)隱藏占位符對(duì)應(yīng)的信息,如果加{public},則輸出原始的占位符信息。Domain在輸出時(shí)被轉(zhuǎn)換為十六進(jìn)制數(shù)放到標(biāo)簽的前面,中間用斜杠(/)分隔。

執(zhí)行這段代碼,會(huì)在HiLog視圖中輸出如圖5所示的日志信息。

圖5 在HiLog視圖輸出日志信息

 使用error方法會(huì)輸出深紅色的日志信息,日志的內(nèi)容與其他方法輸出的日志內(nèi)容相同。不過(guò)要注意,使用HiLog的相關(guān)方法輸出的日志分為5個(gè)級(jí)別,分別是DEBUG(調(diào)試)、INFO(信息)、WARN(警告)、ERROR(錯(cuò)誤)、FATAL(致命錯(cuò)誤)。這5個(gè)級(jí)別分別用5個(gè)整數(shù)表示,這些整數(shù)都在HiLog類(lèi)中定義,代碼如下:

  1. public final class HiLog { 
  2.     public static final int DEBUG = 3; 
  3.     public static final int INFO = 4; 
  4.     public static final int WARN = 5; 
  5.     public static final int ERROR = 6; 
  6.     public static final int FATAL = 7; 
  7.     … … 

如果要在HiLog視圖中過(guò)濾這些級(jí)別的信息。只有不大于當(dāng)前級(jí)別的信息才會(huì)給顯示。例如,要過(guò)濾WARN信息,只有DEBUG、INFO和WARN這3類(lèi)信息才會(huì)被顯示,由于ERROR和FATAL的值逗比WARN大,所以這兩類(lèi)信息不會(huì)被顯示。

想了解更多內(nèi)容,請(qǐng)?jiān)L問(wèn):

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com/#zz

 

責(zé)任編輯:jianghua 來(lái)源: 鴻蒙社區(qū)
相關(guān)推薦

2011-03-03 10:26:04

Pureftpd

2021-05-27 10:57:01

TCP定時(shí)器網(wǎng)絡(luò)協(xié)議

2010-08-06 09:38:11

Flex讀取XML

2023-03-29 13:06:36

2009-06-25 13:43:00

Buffalo AJA

2010-10-21 16:24:18

sql server升

2010-09-07 11:09:59

2021-04-26 09:00:00

JavaScript開(kāi)發(fā)代碼

2010-07-15 14:38:55

Perl eval函數(shù)

2010-08-03 13:27:04

FlexBuilder

2011-04-02 09:48:38

深拷貝

2016-11-07 09:02:02

Malloc內(nèi)存syscall

2011-06-16 10:02:08

JAVA靜態(tài)載入

2009-09-08 15:22:20

Spring依賴(lài)注入

2024-02-04 09:24:45

MyBatisSQL語(yǔ)句Spring

2021-12-08 10:47:35

RabbitMQ 實(shí)現(xiàn)延遲

2010-10-20 15:48:56

SQL Server許

2010-07-27 15:03:37

Flex ArrayC

2010-05-10 18:19:00

負(fù)載平衡技術(shù)

2010-07-14 10:30:26

Perl多線(xiàn)程
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)