转载自http://www.eoeandroid.com/thread-75701-1-1.html
如何理解、使用Android LogCat以及通过Money进行压力测试
把近几天理解的Log
和大家分享。
在android的学习中,无意间发现了Log是个好东西,网络上也看了相关Sundy的Log分析教程,也写得非常不错,膜拜一下。回归主题:
首先我们要知道LogCat窗口在哪里,一般在DDMS中可以看到,如果没有出现也没有关系,通过“Windown > Show View >
LogCat”也能找到相应的窗口,出现之后我们看到了下面图片的提示,
Log中有五种类型(Verbose,Debug,Info,Warn,Error),verbose英文字义为“唠叨”,也就是告诉我们程序应该怎么做,Debug
调试不用说了,Info 阐述相应的程序信息,Warn 对程序提出警告,Error
程序出错;看到下面的箭头同时也告诉我们它们的也是有相应的等级权重的,由左到右权重依次增加。
看到现在你肯定也有和我以前一样的疑问,那这个log
会是在什么情况下产生呢?产生后我们又应该如何进行处理?
Log 文件产生一般通常有两种情况
1、程序强制关闭或者异常退出的情况,也就是Force
Closed (简称:FC)
2、程序无响应的情况,Application No Response
(简称:ANR)
顺便提到,ANR产生一般主要由于界面操作过程中,线程响应超过5S,或者是HandleMessage回调函数执行过程中超过10S;
产生log
的位置在手机目录data/log,AVD不会产生Log文件。
在此,我做了一个小小的例子,代码很简单:
private Button button;
/** Called when the activity is first created. */
@Override
public
void
onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.button =
(Button)findViewById(R.id.button_01);
this.button.setOnClickListener(new
OnClickListener() {
@Override
public
void onClick(View
v) {
// TODO Auto-generated method stub
Log.i("laical", "U click in button");
Toast.makeText(getApplicationContext(), "Button Click
事件", Toast.LENGTH_SHORT)
.show();
Log.v("LaicalNetWork", "Verbose");
Log.d("LaicalNetWork", "Debug");
Log.i("LaicalNetWork", "Info");
Log.w("LaicalNetWork", "Warn");
Log.e("LaicalNetWork","Error");
}
});
}
@Override
protected
void onStart()
{
// TODO Auto-generated method stub
super.onStart();
Log.i("StartLog", "Strat log");
}
点击Button,然后我们查看相应的Log记录:
Time 表示具体日志记录时间,中间的字幕是log
的类型,pid则是它的线程编号,tag为这个log记录的标题,message 则是相应的信息。
这里我们也可以看到tag,msg
通过这个Log文件记录,如果程序出现ANR或者FC ,找到log,查找“ANR
”(注意加上空格)或“Fatal”,我们就可以很方便的知道我们的程序具体错误在什么地方,然后定位到相应的代码,听起是不是很方便o(∩_∩)o?
下来赶紧Try下
其次,我们的应用程序总算是写好了,不管你是开发web应用也好,还是Mobile应用,发布的时候总要测试人员进行压力测试通过后,才发布应用让用户使用,对吧?下面就Monkey就登场了,需要用到“adb”,下面通过一个应用来测试下具体的流程。
第一步,cmd
进入“ adbshell”,进入avd 的根目录后,“ls ”看到了一个data的目录,里面就是我们要安装程序的
第二步,找到所有安装应用程序的包,其中里面就有你要测试的包的名称
-p 表示指向的包名,-v
表示要测试的次数,
当然你如果熟悉了Monkey的话,直接“adb -d shell monkey -p your.package.name -v
6000”也是可以的。
接下来所发生的事情省略N个字…….(温馨提示:查看模拟器和log文件,如出现ANR事件,与本人无关,哈哈)人非圣贤,孰能无过,对吧?
差不多了吧,Log目前也只是介绍了个大概,如果有哪些我理解得不对的地方,一定要告诉我,互相交流学习,进步嘛o(∩_∩)o…
分享到:
相关推荐
Android开发中LogCat工具的使用
Android的Logcat用于显示系统的调试信息,可在分别以下几个地方查看和调用logcat: 1.eclipse的Debug模式或DDMS模式下的会有一个Logcat窗口,用于显示log日志......
Android SDK下, 如何在程序中输出日志 以及如何查看日志. 闲话少说,直接进入正题 在程序中输出日志, 使用 android.util.Log 类. 该类提供了若干静态方法 Log.v(String tag, String msg); Log.d(String tag,...
shell 脚本抓取android logcat和kernel log,以及删除旧的log,通过prop控制输出规则
Android开发中LogCat工具的使用;LogCat是Android中一个命令行工具,可以用于得到程序的log信息,本附录讲解其使用方法和其中的一些技巧。
不使用Eclipse 和 Android Studio,也可以查看安卓日志的软件。告别adb命令行。 注意 该项目是基于Java环境开发,请自行安装Java环境。
adb logcat查看日志工具,注意:必须有root权限才能查看完整logcat信息。详细介绍请点击http://developer.t-firefly.com/forum.php?mod=viewthread&tid=202&page=1&extra=#pid369
alogcat android app 读取/显示logcat信息。
logcat 和 拷贝 屏幕到本地。 非常简单好用的一个记录文件。可以设置 截屏周期。
android通过logcat解决问题。文档详细的介绍如何实用logcat来解决android开发中遇到的问题
Android开发中的logcat工具使用
雨松MOMO带你做软件 Android软件开发之程序中时时获取logcat日志信息 黄英大家下载阅读 哇咔咔~~
一键执行monkey测试(支持多设备并行,自动获取logcat和相应的crash日志,通过input脚本可以扩展功能)
LogcatView 一款可以在手机中打开logcat控制台
android平台的monkey测试脚本,包含monkey测试logcat及monkey点击的log记录。
该jar包作用:解决eclipse在Android7.0以及7.0以上的手机上无logcat输出 1.将下载好的ddmlib.jar替换到自己ADT的tools目录lib下E:\adt\sdk\tools\lib 2.将下载好的ddmlib.jar替换到自己ADT的configuration目录org....
在Android界面上显示和获取Logcat日志输出 在Android界面上显示和获取Logcat日志输出
抓log的bat:bugreport、logcat、kernel、anr以及tombstones recovery文件,执行可以进行恢复出厂设置的压力测试