| page.title=Rendering Performance |
| page.tags=render |
| page.article=true |
| @jd:body |
| |
| <p>The most common performance problems are related to how your app draws, and how that |
| eventually appears on the user's screen.</p> |
| |
| <p><b>Finding rendering problems</b> is an iterative process of using hands-on testing to |
| identify problem spots, harness tools to discover the underlying cause, and improve your code. |
| See also <a href="{@docRoot}/training/app/approach.html"> |
| Test Your App's Performance</a>.</p> |
| |
| <p><b>Optimizing rendering performance</b> means to remove unnecessary work, simplify structures |
| and processes, manage bitmaps properly, and be mindful of the natural constraints imposed by the |
| hardware and the Android system.</p> |
| |
| <p><b>The result of great rendering performance</b> is instantly INVISIBLE to your users. That |
| is, your app runs so fast and smoothly, that users fully focus on their task, not on your |
| app's UI and performance.</p> |
| |
| <p>You can test for and improve common rendering problems by using the tools and strategies |
| recommended in this course.</p> |
| |
| <h2>Lessons</h2> |
| |
| <dl> |
| <dt> |
| <strong><a href="{@docRoot}training/app/rendering/overdraw.html"> |
| Visualizing and Reducing Overdraw</a></strong> |
| </dt> |
| <dd> |
| Every time your app draws a pixel on the screen, it takes time. Learn how to |
| find and fix performance problems related to drawing the same pixel more than once |
| per screen. |
| </dd> |
| <dt> |
| <strong><a href="{@docRoot}training/app/rendering/profile-gpu.html"> |
| Improving GPU Rendering Performance</a></strong> |
| </dt> |
| <dd> |
| The most common issues that can make your app slow are related to the process of |
| drawing on the screen. Learn how to find and fix issues that keep your app from |
| rendering smoothly. |
| </dd> |
| <dt> |
| <strong><a href="{@docRoot}training/app/rendering/hierarchies.html"> |
| Simplifying Complex View Hierarchies</a></strong> |
| </dt> |
| <dd> |
| With feature-rich apps, the view hierarchy can grow large and complex and become a |
| source of performance problems. Learn how to examine and simplify you app's view |
| hierarchy. |
| </dd> |
| <dt> |
| <strong><a href="{@docRoot}training/app/rendering/rendering-checklist.html"> |
| Rendering Problems Checklist</a></strong> |
| </dt> |
| <dd> |
| There are many issues that can affect the rendering performance of your app. Learn |
| how to diagnose and fix the most common ones. |
| </dd> |
| </dl> |
| |
| |
| <h2>Resources</h2> |
| |
| <dl> |
| <dt> |
| <strong><a href="https://plus.sandbox.google.com/communities/116342551728637785407"> |
| Android Performance G+ Community</a></strong> |
| </dt> |
| <dd> |
| Join our G+ community for more information, tips, and support. It's all about |
| Performance! |
| <br>#perfmatters. |
| </dd> |
| <dt> |
| <strong><a href="https://www.udacity.com/course/android-performance--ud825"> |
| Android Performance Course on Udacity</a></li></strong> |
| </dt> |
| <dd> |
| Dive deeply into Android Performance with this from-the-ground-up course. |
| </dd> |
| <dt> |
| <strong><a href="https://www.youtube.com/playlist?list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu">Android |
| Performance Patterns on YouTube</a></strong> |
| </dt> |
| <dd> |
| Watch the whole series of Android Performance Patterns videos. |
| </dd> |
| </dl> |