三、Android Log提供添加以上调试信息对应的方法
1》在Android中可以使用Log类,Log类在android.util 包中。Log 类提供了若干静态方法 :
Log.v(String tag, String msg); //VERBOSE
Log.d(String tag, String msg); //DEBUG
Log.i(String tag, String msg); //INFO
Log.w(String tag, String msg); //WARNING
Log.e(String tag, String msg); //ERROR
分别对应 Verbose,Debug,Info,Warning,Error。Tag为调试信息标签名称,msg为添加的调试信息。tag是一个标识, 可以是任意字符串,通常可以使用类名+方法名, 主要是用来在查看日志时提供一个筛选条件。
2》logcat使用方法如下所示:
logcat [options] [filterspecs]
logcat的选项包括:
-s 设置过滤器,例如指定 '*:s'
-f <filename> 输出到文件,默认情况是标准输出。
-r [<kbytes>] Rotate log every kbytes. (16 if unspecified). Requires -f
-n <count> Sets max number of rotated logs to <count>, default 4
-v <format> 设置log的打印格式, <format> 是下面的一种:
brief process tag thread raw time threadtime long
-c 清除所有log并退出
-d 得到所有log并退出 (不阻塞)
-g 得到环形缓冲区的大小并退出
-b <buffer> 请求不同的环形缓冲区 ('main' (默认), 'radio', 'events')
-B 输出log到二进制中。
过滤器的格式是一个这样的串:
<tag>[:priority]
其中 <tag> 表示log的component, tag (或者使用 * 表示所有) , priority 如下所示:
V Verbose
D Debug
I Info
W Warn
E Error
F Fatal
S Silent
以上log的级别依次升高,DEBUG信息应当只存在于开发中,INFO, WARN,ERROR这三种log将出现在发布版本中。、
四、搭建Android2.3源码调试环境
1》建立模拟器、SDCard
. ./android create avd -t 11 -n AndroidAVD2.2
./mksdcard –l mysdcard 1024M /work/mysdcard.img
2》带SDCard启动模拟器
./emulator -avd AndroidAVD2.2 –sdcard /work/mysdcard.img &
3》进入DDMS
./ddms &
注:查看File--Preferences/Debugger的Starting values for local post(如8600)
4》打开Eclipse,导入Android2.3源码
新建Java Project项目,选择(Create project from exiting source)将Android2.3存放的源码导入。右击Android2.3项目,选择“Debug As—Debug Configurations—Remote Java Application”新建,注意Port选择同第3》步的一致(如8600)
5》Push媒体文件到SDCard
./adb push /work/test3gp.3gp(需要push的文件名)/mnt/sdcard
6》重启模拟器(同第2》步)
7》启动Gallery应用程序,可以实现媒体播放