原文:Android Profiler in Android Studio 2.4 preview

在Android Studio 2.4 preview版本中,Android Profiler窗口代替了Android Monitor。Android Profiler是一个先进的分析工具,能够实时展示cpu数据更新、内存和网络活动。

Android Profiler的默认窗口如图一,它为每个分析器显示了一个简化的数据集。使用Android Profiler,首先①选择设备②选择想要分析的应用进程,然后点击其中一个图就可以看到更详细的时间表。每个视图都有③时间轴缩放控件,④Go Live是一个跳转查看实时数据的按钮,⑤事件时间线(event timeline),可以显示activity生命周期、查看所有input事件和屏幕旋转事件


CPU Profiler(CPU 分析器)
CPU分析器显示了app进程的实时CPU使用情况和系统的CPU使用时间轴。
你可以①选择模式方法追踪(method traces)或者是基于样本的追踪(Sampled),然后点击②Record开始追踪。当你完成一段录制,③时间轴显示了这一次录制的范围,④可以查看每个线程的状态⑤类似与MAT的作用,还可以看到一个录制时间内所执行的方法的图表。


Memory Profiler(内存分析器)
Memory Profiler视图整合了Heap Viewer,Allocation Tracker和Memory Monitor的特性,所以你可以通过Memory Profiler一个接口完成四种操作:观察对象分配的实时数量,观察一段时间内的垃圾收集事件,capture heap dumps,录制内存分配。
Menory Profiler根据左侧Y轴的内存刻度,显示了你的应用程序在一段时间内所使用的内存。每种内存类型(例如Java,Native,和Graphics)都在图表上使用不同的颜色来表示。根据右侧Y轴的刻度,使用虚线来显示应用程序所分配的对象的总数。顶点上可以看到数值。

在窗口的工具栏顶部有三个按钮可以①Force garbage collection,(2) Capture a heap dump, (3) Record memory allocations.


上面是捕获一次heap dump或者录制一段内存分配的结果显示。④显示了时间轴内录制事件。结果显示在时间轴下面的窗口⑤中。在⑤中点击选择一个类,在右边的窗口⑥中会出现这个类的所有实例。点击窗口⑥选中一个实例对象,下方会出现窗口⑦。窗口⑦显示的是内存分配的堆栈跟踪(顶部栏点击Record memory allocations)或者显示的是剩余对该对象的引用(顶部栏点击Capture a heap dump)。

你还可以在跟踪内存分配的同时捕获一段dump heap,这样可以查看dump heap中的堆栈跟踪(for objects allocated after allocation was turned on 观察内存分配打开后新分配对象???)


Network Profiler(网络分析器)
Network Profiler展示了时间线上的实时网络活动,显示了发出和收到的数据和当前的网络连接数量。在窗口的顶部,你可以看到事件的时间线和①无线信号的强弱和wifi
在时间线上,可以②点击和拖动一部分的时间线来检测流量,然后在窗口③中会显示所选时间段内收发的文件,包括文件名,大小,类型,状态和花费时间。你可以对窗口③的列表根据列来进行排序。还可以查看所选时间段的详细拆分,拆分的timeline可以显示文件是什么时候收发的。
点击窗口③的其中一个文件,可以在窗口④中查看文件的详细信息。通过切换窗口④上方标签可以查看response data(响应数据), header information, or the call stack(调用栈).

Network Connection Troubleshooting
如果Network Profiler不能识别当前所支持的网络请求,会出现错误信息:

“No connections supported for instrumentation.” 

目前,Network Profiler 只支持通过HttpURLConnection library来连接网络,如果你的app使用其他网络library连接网络,则无法使用Network Profiler来调试。


Tips
使用红米手机无法连接上Android Profile,换成Nexus 5x后可以连接。通过googleAndroid Profiler does not recognise older device: Samsung Galaxy Nexus,官方的答复是

The minimum API supported by the new Android Profiler is API 21. We have improved messaging to make this explicit.

另外,Mbp i5 8G使用Android Profile,我感觉Mac可能随时会起飞上天….
也有可能我会随时上天,BoomShakalaka!!!

更多相关文章

  1. 在android中button响应的两种方式
  2. android:maxLines和android:ellipsize同时使用导致显示异常
  3. Android实现程序前后台切换效果
  4. 在AndroidManifest.xml文件中的android:windowSoftInputMode属性
  5. Android自带的时间空间和日期控件
  6. android:windowSoftInputMode属性的使用
  7. Android(安卓)编辑框(EditText)属性学习
  8. 详解android:scaleType属性
  9. Android动画详细探究

随机推荐

  1. Android中View和ViewGroup介绍
  2. 【Based Android】让你的android应用使用
  3. andriod环境的配置eclipse
  4. Android的隐私保护利器
  5. ANDROID 开机启动VNC SERVER
  6. Android手机搭建Linux服务器
  7. Android——用户登陆及用户名和密码的保
  8. android sdk 版本问题 R文件问题
  9. 新书内容连载(2):Android中的Activity的生命
  10. 再说说Intent Filter