Build, Modernize and Troubleshoot your Android Apps
What you'll learn
- Explore MVVM architecture to build scalable apps.
- Perform integration tests that mock data persistence with dependency injections.
- Understand Kotlin and experience how simple it is to write code using it as opposed to Java.
- Overcome a lot of issues that were prevalent in the past using a variety of Jetpack libraries.
- Stay up to date with the latest and greatest methods to implement common use cases that you will come across when developing future apps.
- Debug your UI and manage the way you want it to look.
- Ways to optimize your app for good battery usage.
- Basic Android Development Knowledge is assumed.
Are you willing to modernize the Android application built on Java using Kotlin and common Android architecture patterns as well as enhance your applications by overcoming common performance issues with Android? Then this course is for you!
As this course assumes basic android development knowledge, you will get started with learning to create a strong architectural background for your app, edit and customize the foundations of the app & much more. Then, you’ll learn to implement Life Cycle Aware Components, use the ViewModel LiveData framework, and perform data management and persistence with the Room persistence solution. Moving further you will delve into fixing issues such as memory management, where we will look at memory leaks and tracking allocations as well as look at optimizing your user experience when working with data on the cloud.
By the end of the course, you’ll be able to build real-world applications more efficiently, modernize your Android apps using all the new features & deploy applications more efficiently, without having to worry about your code affecting the performance and user experience.
Contents and Overview
This training program includes 3 complete courses, carefully chosen to give you the most comprehensive training possible.
The first course, Building Professional Android Applications we’ll create a strong architectural background for your app. You’ll be able to edit and customize the foundations of the app so it’s transferable between different projects. Then, you’ll learn the most productive ways to save and read data on Android with the Room framework, ObjectBox, and the Firebase database. The third section is about utilizing efficient data structures to maintain speed, even when the amount of data is huge. Finally, we’ll explore different ways to test Android applications such as: unit tests, integration tests, and end-to-end tests. The last section is about designing the front end of your app, including professional-level features, such as custom view development and explanatory user onboarding. Also, you’ll learn to upload your Android app to the Google Play store and discover advanced topics such as Payments, Android N Tiles, and voice interaction. By the end of the course, you’ll have the essential skills needed to build a real-world application.
The second course, Modernizing Your Android Applications you’ll take an existing Android application build in Java and modernize it using the Kotlin language, seeing the importance of planning the architecture using SOLID principles and common Android Architecture using the MVP, MVC, and MVVM patterns. Moving on, you’ll implement Life Cycle Aware Components, use the ViewModel LiveData framework, and perform data management and persistence with the Room persistence solution. You’ll see how Kotlin efficiently accelerates the development by improving the code base. With the advanced Architectural Components, you’ll not only be able to improve the performance but also enhance the UI of your application to a whole new level. By the end of this course, you’ll have modernized your Android app using all the new features from coding it in Kotlin to implementing Architecture Components to enhancing the UI of your app, which gives you more control on your app and makes it easy to maintain.
The third course, Troubleshooting Android Performance will help you overcome common performance issues on Android. In this course, we go over the important and common areas that can affect performance such as memory, network, UI, and battery. We delve into issues such as memory management, where we will look at memory leaks and tracking allocations. We also look at optimizing your user experience when working with data on the cloud. We also go into some common pitfalls when working with your UI and how to debug it. Finally, we look at ways to optimize and debug your app's battery usage to ensure that it doesn't annoy users when they've installed your app. When you're completed with this course, you will be developing applications more efficiently, without having to worry about your code affecting the performance that your users experience.
About the Authors:
Yusuf Saber is an Android developer with over 5 years' professional experience. Yusuf earned his master's degree in Computer Engineering from Ryerson University in 2011 and started his career as a .NET developer before quickly turning to Android. He has worked on a large range of Android apps, from social to multimedia to B2B and more!
Who this course is for:
- This course is for Android developers, mobile developer, looking to enhance the UI of your application & accelerate your development skills with less code in a more structured way.
Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.
With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.
From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.
Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.