Optimizing Apps for Speed and Usability
About this Course
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.
Approx. 4 weeks
Included in Product
Rich Learning Content
Taught by Industry Pros
What You Will Learn
- Discover why performance is so critical to the success of your Android App.
- Learn how to profile your code.
- Employ a few best practices to help resolve common issues in the areas of rendering, memory, compute, and battery.
- How to identify and diagnose the key performance problems that come with drawing to the screen.
Compute and Memory
- Discover the tools in android studio that will help you detect and resolve memory leaks and memory churn.
- Use systrace to evaluate and improve the performance of functions.
Prerequisites and Requirements
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.
Why Take This Course
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.
What do I get?
- Instructor videos
- Learn by doing exercises
- Taught by industry professionals