This course introduces the Android Profiler tool. It provides real-time information about your Application relating to Memory, CPU and Network usage.
The course begins with an introduction to using the tool. I will show you how to get started using the tool, explain the main features, and show how to configure your Application to enable advanced profiling.
In the next few videos, I examine each of the main profiling areas in detail, starting with the Network Analysis component. I show how to use the Profiler to view realtime information about the network calls you application is making, including bandwidth, and duration. I show how to view details about a particular network call, including information about the request/response, header, and even drill into the call stack.
The Profiler includes the ability to view memory information. I will explain how to view and understand a graph with details about memory consumption of your app, including what percentage each of the various subsystems are consuming, and garbage collection events. I will demonstrate how to record memory allocations to generate detailed information about how memory is allocated. I will show to generate and view these details.
The next lesson describes how to use the profiler to view CPU Activity, thread activity, and generate Method Traces. I will show how to use the graph to understand how much CPU time, an app is using – as a percentage of the total available. I will show how to view the thread activity in your app, across a timeline. The high level information in the timeline doesn’t always provide enough detail. I will show how to generate and view a method trace, which will provide a more comprehensive diagnosis of threads in an app. The trace will give insight into method entry and exit points, and how much time was spent in each method. I will show how to generate a trace, and then how to use view the information using the various views, including “Top Down, Bottom Up, Flame Chart, and Call Chart”.