If you’ve ever hit performance issues that affect your app’s usability, this course will teach you how to identify and diagnose your performance problems. By the end of this course, you’ll be able to perform exploratory tests, run profiling tools, use outputs to navigate to problematic code, and design a plan of attack to mitigate poor performance. You’ll also gain a higher level of understanding about how program code and the Android platform interact, which will help you optimize for performance in the future.
Users want apps that download and run fast and efficiently. If your app performs well on low-end devices and slower internet connections, your user base, and thus your impact and potential for monetization, can increase dramatically. The ability to make conscious coding decisions that focus on the user experience is a trait that separates mediocre Android programmers from the leaders of the industry.
You may have the most exciting Android app in the world, but if it is slow and drains the battery, users will uninstall it, and leave you bad ratings because of it. Performance matters to users, so it must matter to you.
By the end of this course, you will understand how common performance problems arise from your hardware, OS, and application code. Using profiling tools to gather data, you will be able to identify and fix performance bottlenecks, so users can have that smooth 60 FPS experience that will keep them coming back for more.
To get the most from this course, you should have experience developing apps in Java on Android devices, understand the basics of the Android life cycle, and know how to perform basic operations in a terminal.
You also need access to an Android device, and working knowledge of Github, in order to follow along with the exercises.
If you’ve never developed a working Android app, check out our Developing Android Apps course before taking this one.
If you're unfamiliar with Github, check out our course on How to Use Git and Github.
See the Technology Requirements for using Udacity.
An introduction to the course content and structure.
How to identify and diagnose the key performance problems that come with drawing to the screen.
Understand how code is executed in your program, and how to handle the performance problems associated with compute and memory.
How to detect and diagnose battery problems, and why it matters to your users.
Colt McAnlis is a Developer Advocate at Google focusing on Performance and Gaming; Before that, he was a graphics programmer in the games industry working at Blizzard, Microsoft, and Petroglyph. He’s been an Adjunct Professor at SMU Guildhall, a UDACITY instructor, and a Book Author. Recently, he’s been teaching Android Devs the Zen of Performance. When he's not working with developers, Colt spends his time preparing for an invasion of giant ants from outer space.
You can follow him on G+ (+Colt McAnlis) or Twitter (@duhroach)
Driven by a love for transformative products, Chris charted an early career path with stints in hardware and software at IBM, Microsoft and Qualcomm. At Udacity, he's motivated to encourage others to embrace computing as a medium to realize their dreams. Chris holds a Masters in Computer Science from U.C. San Diego and a Bachelors of Science from Syracuse University. Outside of work, there’s a good chance you’ll find him surfing waves, playing music, and/or exploring new locations in search of the next incredible meal.
View more courses in
Android