From January Google released 16 series of video on performance optimization, this period of time in the major communities have seen a lot of excellent articles about the optimization series. We have analyzed the causes of performance, shared how to optimize our applications, and introduced tools to help us detect performance issues.
One of the tools that is described in some of the system performance tuning tools: TraceView
TraceView is an Android platform equipped with a good performance analysis tool. It can be graphically let us understand the performance of the program we want to track, and can be specific to a function method of execution time.
Because the small LU did not use the tool before, so these two days also play a hand, the simple use of the tool to do a simple graphic introduction. Also hope that in the future work should pay attention to the use of the tool, good use of the tool.
First, how to use the tool to collect data
1, the first mode of use
① add code to the end of the code snippet you need to tune
Debug.startmethodtracing ("TraceView"); Debug.stopmethodtracing ();
If we want to trace between Mainactivity's OnCreate () and Ondestory () methods, the code can be as follows:
public class Mainactivity extends Activity { @Override protected void onCreate (Bundle savedinstancestate) { super.oncreate (savedinstancestate); Setcontentview (r.layout.activity_main); / * * will generate data performance in the SD card root directory capture file traceview.trace * Note: * 1, must be in the SD card debug phone or simulator use * 2, add SD card access to read and Write permissions: <uses-permission android:name= "Android.permission.WRITE_EXTERNAL_STORAGE"/> * / Debug.startmethodtracing ("TraceView"); } @Override protected void OnStart () { super.onstart (); Debug.stopmethodtracing (); } } <span style= "font-family: ' Comic Sans MS '; Background-color:rgb (255, 255, 255); " > </span>
②, when the program runs above the code will be on your phone or emulator SD card root directory generated file traceview.trace, such as:
③, before formally using the TraceView tool to analyze the data, we use the ADB command to export the Traceview.trace file under the SD card root directory to our local computer, the ADB command is as follows:
As above, I export the. trace file under My Computer C:\tmp
④, find our tool in {sdk}/tools/directory Traceview.bat, double-click to run him, it will be shown as follows:
Tip We use Android Device monitor<tools/monitor>.
⑤, but we execute the following command: TraceView Xxx.trace, Use TraceView to access the Execute. trace file
The gang appears as follows: & nbsp &NBSP;&NBSP
based on previous commands:
& nbsp Here we can also use the Execute Android Device monitor<tools/monitor> tool to see the following interface
In this interface we can file--& Gt Open file opens the. trace file that you exported before, and you will see the same effect:
Here we have done the data collection and use the TraceView tool to graphically display the data
2, the second way of using
This is much simpler than the first way
by selecting the app in Devices and clicking the button Start Method Profiling (Open methods Analysis) and click Stop Method Profiling (Stop methods Analysis)
When the collection is stopped, DDMS automatically triggers the TraceView tool to explore the data collection
Ii. How to use the tool to analyze data
When we see the graphical trace data, we need to know how to read the above data, To make the right analysis, finally find performance problems in the analysis, and ultimately solve the problem from the code.
This part mainly includes:
1, TraceView tool Panel Mastery, analysis panel each column to do meaning such as: Name, incl CPU time, EXCL CPU time, incl Real time and so on.
2, how to locate the analysis we want to monitor the specific method (through the TraceView bottom of find to look for).
3, how to locate those time-consuming (leading to performance problems) method (filter out the method time-consuming, such as: Incl CPU, CPU time/call column).
4, finally according to find out the performance of the specific method, to do code optimization.
The content is far more than the above about the use of tool data collection, small Lu Yegang on the internet has collected two excellent information about the use of TraceView tools:
1, Android System Performance Tuning Tool Introduction: http://blog.csdn.net/innost/article/details/9008691
2, Android programming TraceView Introduction and the case of the actual combat: http://www.cnblogs.com/sunzn/p/3192231.html
Third, other
About Android Tuning tools in addition to TraceView, there are overdraw,systrace,strictmode,hierarchy Viewer and so on.
Good English skills on the Google official Internet café: http://developer.android.com/tools/debugging/debugging-tracing.html
TraceView of the Android Performance tuning tool