Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1086812
  • 博文数量: 169
  • 博客积分: 12306
  • 博客等级: 上将
  • 技术积分: 1299
  • 用 户 组: 普通用户
  • 注册时间: 2006-08-29 14:55
文章分类

全部博文(169)

文章存档

2012年(18)

2011年(78)

2010年(15)

2009年(1)

2008年(11)

2007年(39)

2006年(7)

我的朋友

分类:

2011-01-24 14:51:19

Android程序下用System已经是失效了(起码我用是失效了的),那么如何调试程序呢?
第一种是用Debug,设个断点就可以跟踪。
第二种就是Log。首先简单介绍一下Android,Android实际上应该算是一种Linux移动平台的另一个版本(我对Android研究不深,我就是这么认为的),那么既然是Linux就必定会用到命令。那么如何用命令运行程序呢?用adb命令!键入“cmd”,再键入“adb shell”,出现了个“#”号,恭喜恭喜,你可以使用命令来控制Android了。


运行“am -help”,可以查看“am”命令的帮助信息,

# am -help
am -help
Error: Unknown command: -help
usage: am [start|instrument]
       am start [-a ] [-d ] [-t ]
                [-c [-c ] ...]
                [-e [-e ...]
                [-n ] [-D] []
       am instrument [-e ] [-p ]
                [-w]

试试运行“am start -n com.google.android.browser/com.google.android.browser.BrowserActivity”看看?呵呵,在模拟器里面可以看到运行了浏览器,还有:
//运行浏览器,打开中华网
# am start -a android.intent.action.VIEW -d
am start -a android.intent.action.VIEW -d
Starting: Intent { action=android.intent.action.VIEW data= }

//拨打电话,号码是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 类提供了若干静态方法 :
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);
分别对应 Verbose,Debug,Info,Warning,Error。
tag是一个标识,可以是任意字符串,通常可以使用类名+方法名, 主要是用来在查看日志时提供一个筛选条件.
程序运行后 并不会在 ide的控制台内输出任何信息,那么如何查看日志输出?使用"adb logcat" 命令:
adb logcat
当执行 adb logcat 后会以tail方式实时显示出所有的日志信息.
这时候我们通常需要对信息进行过滤,来显示我们需要的信息, 这时候我们指定的 tag就派上了用场.
adb logcat -s MyAndroid:I
解释:只显示tag为MyAndroid,级别为I或级别高于I(Warning,Error)的日志信息。
还有一种更好的方法,如果你的IDE用的是Eclipse的话,在show view中选择Locat就可以直接看到输出了。
好了,调式自己的Android程序吧。

阅读(730) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-03-08 14:32:42

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com

chinaunix网友2011-03-08 14:32:42

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com