Android程序下用System已經(jīng)是失效了(起碼我用是失效了的),那么如何調(diào)試程序呢?
第一種是用Debug,設(shè)個斷點就可以跟蹤,但是我覺得不爽,我用System.out用慣了,不用System.out也可以用Log的。
第二種就是我要介紹的Log,看了別人介紹的方法之后,自己親身試驗了再寫上來的哦~。首先簡單介紹一下Android,Android實際上應(yīng)該算是一種Linux移動平臺的另一個版本(我對Android研究不深,我就是這么認為的),那么既然是Linux就必定會用到命令。那么如何用命令運行程序呢?用adb命令!鍵入“cmd”,再鍵入“adb shell”,出現(xiàn)了個“#”號,恭喜恭喜,你可以使用命令來控制Android了。
運行“am -help”,可以查看“am”命令的幫助信息,試試運行“am start -n com.google.android.browser/com.google.android.browser.BrowserActivity”看看?呵呵,在模擬器里面可以看到運行了瀏覽器,哈哈,就是這么簡單(簡單個P,為了找這個東西花了我好久的時間)。
還有:
//運行瀏覽器,打開中華網(wǎng)
# am start -a android.intent.action.VIEW -d
http://www.china.com am start -a android.intent.action.VIEW -d
http://www.china.comStarting: Intent { action=android.intent.action.VIEW data=http://www.china.com }
//撥打電話,號碼是123456789
# am start -a android.intent.action.CALL -d tel:123456789
am start -a android.intent.action.CALL -d tel:123456789
Starting: Intent { action=android.intent.action.CALL data=tel:123456789 }
# am start -a android.intent.action.ALL_APPS
am start -a android.intent.action.ALL_APPS
Starting: Intent { action=android.intent.action.ALL_APPS }
//google地圖,到shanghai這個點包(注:點包為方言,就是地方的意思)
# am start -a android.intent.action.VIEW geo:0,0?q=shanghai
am start -a android.intent.action.VIEW geo:0,0?q=shanghai
Starting: Intent { action=android.intent.action.VIEW data=geo:0,0?q=shanghai }
好了,簡單的介紹了一下使用命令,然后如何查看輸出語句呢?在Android中可以使用Log類,Log類在android.util包中。Log 類提供了若干靜態(tài)方法 :
Log.v(String tag, String msg);
Log.d(String tag, String msg);
Log.i(String tag, String msg);
Log.w(String tag, String msg);
Log.e(String tag, String msg);
分別對應(yīng) Verbose,Debug,Info,Warning,Error。
tag是一個標識,可以是任意字符串,通??梢允褂妙惷?方法名, 主要是用來在查看日志時提供一個篩選條件.
程序運行后 并不會在 ide的控制臺內(nèi)輸出任何信息,那么如何查看日志輸出?使用"adb logcat" 命令:
adb logcat
當(dāng)執(zhí)行 adb logcat 后會以tail方式實時顯示出所有的日志信息.
這時候我們通常需要對信息進行過濾,來顯示我們需要的信息, 這時候我們指定的 tag就派上了用場.
adb logcat -s MyAndroid:I
解釋:只顯示tag為MyAndroid,級別為I或級別高于I(Warning,Error)的日志信息。
還有一種更好的方法,如果你的IDE用的是Eclipse的話,在show view中選擇Locat就可以直接看到輸出了。
好了,調(diào)試自己的Android程序吧。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。