当前位置: 代码迷 >> Android >> android程序根本调试方法-本帖纯属copy为了自己收藏-见谅
  详细解决方案

android程序根本调试方法-本帖纯属copy为了自己收藏-见谅

热度:9   发布时间:2016-05-01 11:06:56.0
android程序基本调试方法-本帖纯属copy为了自己收藏-见谅
Android 是一款开源手机操作系统。大家可以在模拟器的帮助下对这一操作系统进行相应的编写,一满足自己的特定需求。Android程序下用System已经是失效了(起码我用是失效了的),那么如何实现Android调试程序呢?

Android核心模块内容概述
Android浏览器优异点评比
Android数字证书具体应用机制
Android数据存储访问机制
Android可选API适用范围
第一种是用Debug,设个断点就可以跟踪,但是我觉得不爽,我用System.out用惯了,不用System.out也可以用Log的。

第二种就是我要介绍的Log,看了别人介绍的方法之后,自己亲身试验了再写上来的哦~。首先简单介绍一下Android,Android实际上应该算是一种Linux移动平台的另一个版本(我对Android研究不深,我就是这么认为的),那么既然是Linux就必定会用到命令。那么如何用命令运行程序呢?用adb命令!键入“cmd”,再键入“adb shell”,出现了个“#”号,恭喜恭喜,你可以使用命令来控制Android了。

运行“am -help”,可以查看“am”命令的帮助信息,试试运行“am start -n com.google.android.browser/com.google.android.browser.BrowserActivity”看看?呵呵,在模拟器里面可以看到运行了浏览器,哈哈,Android调试程序就是这么简单(简单个P,为了找这个东西花了我好久的时间)。

还有:

//运行浏览器,打开中华网 
# am start -a android.intent.action.VIEW -d http://www.china.com  
am start -a android.intent.action.VIEW -d http://www.china.com 
Starting: 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调试程序中使用命令,然后如何查看输出语句呢?在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调试程序。
  相关解决方案