Course: Jetpack Compose for Mobile Development
duration: 23 hours |
Language: English (US) |
access duration: 180 days |
Details
In this course, you will learn how to work with Jetpack Compose for Android applications. You will gain an understanding on how to build layouts, navigation, gestures, and animations.
You will also receive information on data processing using CRUD (Create, Read, Update, and Delete) and how to access internet data.
Additionally, you will become familiar with Firebase for building comprehensive applications.
At the end of this course there will be an exam to assess your understanding of working and building with Jetpack Compose.
Result
After this course, you will have an understanding on how to build an app with Jetpack Compose. You will have gained information on creating layouts, navigation, gestures, and animations.
You will have been introduced to Firebase and how to use it.
Additionally, you will have learned more about data processing and applying data.
Prerequisites
No formal requirements. However, some prior knowledge of programming is recommended.
Target audience
Software Developer, Web Developer
Content
Jetpack Compose for Mobile Development
Jetpack Compose: Getting Started
Jetpack Compose is a modern toolkit for building user interfaces (UIs) in Android applications. Its relevance lies in its ability to simplify UI development, improve code maintainability, and provide a more flexible and interactive user experience in Android apps. In this course, you will dive into Android Jetpack Compose, learning how to think in Compose and designing UI components as functions that describe their appearance and behavior. Next, you will explore the life cycle of composables and how to organize and compose UI elements effectively. Then you will discover the practical aspects of setting up a Compose project and running the emulator. You will configure a development environment and create a new Compose project using Android Studio. Finally, you will run a composable app and preview it using the Android Studio preview pane. You will apply themes and customize the appearance of your UI elements, ensuring a consistent and visually appealing design. By the end of the course, you will have the knowledge and skills to create UI components using Android Jetpack Compose.
Jetpack Compose: Layouts & State Management
In Jetpack Compose, layouts define the structure of user interface (UI) elements, allowing for flexible and dynamic UI design, while state management involves handling the data that drives the UI, ensuring that the UI responds to user interactions appropriately. In this course, you will go beyond the basics of Android Jetpack Compose, learning how to customize screens using the versatile column and row composables to arrange UI elements. Next, you will use the image composable to incorporate images seamlessly into your Compose app and implement scrolling functionality within a column or a row. Then you will explore managing state in Compose, focusing on the remember function and creating interactive UI components, such as drop-down menus and sliders. Finally, you will hoist state to enhance state access and reusability and you will integrate LiveData and ViewModel with Compose, to manage and share data effectively. At the end of this course, you will be able to develop complex and interactive user screens to display your app's content.
Jetpack Compose: Lazy Composables & Navigation
Lazy composables in Jetpack Compose enable efficient rendering and scrolling of large lists or grids. Navigation in Jetpack Compose provides a powerful way to navigate between different screens or destinations within an app. Together, lazy composables and navigation enhance the user experience by enabling seamless scrolling and smooth transitions between screens in Jetpack Compose apps. In this course, you will learn how to efficiently display large lists of items using the lazy column and preserve their state across screen rotations or app restarts. Next, you will explore the lazy grid, and with the help of the coil library, you will asynchronously load images in your Compose app. Then you will set up the NavController and NavHost and define the structure and connections between different screens. You will also examine advanced techniques for passing data between composables and querying data from the data layer. Finally, you will test your app on a real Android device and implement navigation using the bottom navigation bar. When you are finished with this course you will have the skills and ability to develop multiscreen applications using Jetpack Compose.
Jetpack Compose: Gestures & Animation
Gestures in Jetpack Compose allow developers to handle user interactions such as taps, scrolls, and drags. Additionally, animations in Jetpack Compose empower developers to bring user interface (UI) elements to life by adding dynamic transitions, effects, and visual enhancements. In this course, you will explore the preferred techniques to handle gestures using built-in gesture handling available on specific composables. By utilizing gesture modifiers, you will be able to detect and respond to tap gestures, implement smooth scrolling behavior for UI components, and create interactive and draggable elements. Additionally, you will implement swipe-to-dismiss functionality. Next, you will dive into animated visibility effects and apply slide, scale, expand, and shrink effects to UI elements. Finally, you will explore advanced animation techniques and learn how to smoothly transition between different states using animated content, create animated counters with fluid motion, and seamlessly cross-fade between different screens. When you're finished with this course you will have the toolkit for creating rich and interactive animations in Compose, with visually engaging elements.
Building Android Apps: Accessing Data from the Internet
Networking is crucial for real-world Android apps to enable seamless communication between the apps and external services, such as remote servers, databases, and application programming interfaces (APIs). Networking allows applications to store data in a persistent manner on remote servers and access this data in a well-designed and secure manner. In this course, you will learn the essential aspects of networking operations in Android applications, empowering you to interact with APIs and handle network requests effectively. We will provide an overview of the clients available for accessing REST points and guide you through best practices for accessing the Internet from your app. Next, you will set up and configure an Android Views Project. We will explore the powerful Glide library, which allows you to efficiently load and display images, even in image-heavy applications. Then, we will use real-world APIs to make GET requests using the HTTPUrlConnection client and parse JSON using the Gson library. You will master app architecture structuring, create data and user interface (UI) layers in your app, and implement robust data handling mechanisms. By incorporating coroutines, you will gain proficiency in fetching data from the backend in a more concise and structured manner. By the end of this course, you will have acquired a comprehensive skill set in Android networking, enabling you to create modern apps that interact seamlessly with APIs and deliver dynamic content from the web.
Building Android Apps: Performing CRUD Operations
Android offers a built-in standard HttpURLConnection client for making network requests, but it can be cumbersome and involve boilerplate code for handling responses and errors. In contrast, the Retrofit library simplifies networking by providing a high-level interface, reducing boilerplate, and making application programming interface (API) interactions more concise and efficient. Additionally, using coroutines for background networking operations allows for asynchronous and non-blocking execution, preventing user interface (UI) freezes. In this course, you will learn how to set up and configure a local simple HTTP server to handle requests in your Android application. You will retrieve data from the server, display a list of restaurants, and implement functionality to view individual restaurant details. You will also handle HTTP methods like POST, PUT, and DELETE to add, edit, and remove restaurants, creating a fully functional app with server communication. Next, you will explore the powerful Retrofit library, which streamlines handling HTTP requests in your Android app. You will learn to access REST endpoints more efficiently and reduce boilerplate code, resulting in a cleaner and more maintainable codebase. Finally, you will integrate the Retrofit client with Compose, a modern Android UI toolkit, to build a seamless user interface.
Building Android Apps: Persisting Data Locally
Various methods can be used for persisting data locally in an Android device. App-specific files and preferences offer a lightweight and straightforward approach for storing small amounts of data, such as user settings and preferences. SQLite databases and the Room API provide a robust and efficient solution for more structured and organized data. This enables data persistence for larger datasets with powerful querying capabilities and data manipulation operations. In this course, you will learn the essential aspects of data and file storage on Android. Through hands-on practice, you will build a simple app that stores recipes locally using app-specific files. Next, you will work with storing and retrieving shared preferences, a simple yet effective method to store key-value pairs in Android. Using shared preferences, you will build features to track and utilize recently searched items and prefill forms in your app. Finally, you learn to store app details in a local SQLite database, retrieve and modify data using the SQLite API, and later connect to SQLite using the Room API.
Building Android Apps: Building a Complete Application with Firebase
Integrating Android apps with Firebase offers a seamless and secure solution for managing user sign-in and registration processes while enabling real-time data synchronization. Firebase Authentication provides a range of authentication methods, including email, phone number, and social media logins. Firestore serves as a scalable NoSQL cloud database, allowing developers to store and retrieve data in real-time, ensuring dynamic content delivery to users. In this course, you will learn how to integrate Android applications with Firebase. You will discover Firebase's diverse services as we build a restaurant reservation app. You will implement user authentication and explore real-time data storage using Cloud Firestore. Next, you will set up strings, styles, and themes to create a visually appealing and consistent user interface (UI). You will see how dependency injection enhances code maintainability and testability, and you will integrate the Hilt Framework for efficient dependency injection that simplifies access to the Firebase backend. Finally, you will explore advanced concepts in Android app development. Mastering login and signup flows will create a secure and user-friendly app. You will set up a navigation drawer and top bar for app navigation and manage app screens and data using View Models. By the end of the course, you will integrate all these components to create a complete application with a cloud backend.
Final Exam: Building Android Apps Using Jetpack Compose
Final Exam: Building Android Apps with Jetpack Compose will test your knowledge and application of the topics presented throughout the Building Android Apps with Jetpack Compose track.
Course options
We offer several optional training products to enhance your learning experience. If you are planning to use our training course in preperation for an official exam then whe highly recommend using these optional training products to ensure an optimal learning experience. Sometimes there is only a practice exam or/and practice lab available.
Optional practice exam (trial exam)
To supplement this training course you may add a special practice exam. This practice exam comprises a number of trial exams which are very similar to the real exam, both in terms of form and content. This is the ultimate way to test whether you are ready for the exam.
Optional practice lab
To supplement this training course you may add a special practice lab. You perform the tasks on real hardware and/or software applicable to your Lab. The labs are fully hosted in our cloud. The only thing you need to use our practice labs is a web browser. In the LiveLab environment you will find exercises which you can start immediately. The lab enviromentconsist of complete networks containing for example, clients, servers,etc. This is the ultimate way to gain extensive hands-on experience.
Sign In
WHY_ICTTRAININGEN
Via ons opleidingsconcept bespaar je tot 80% op trainingen
Start met leren wanneer je wilt. Je bepaalt zelf het gewenste tempo
Spar met medecursisten en profileer je als autoriteit in je vakgebied.
Ontvang na succesvolle afronding van je cursus het officiële certificaat van deelname van Icttrainingen.nl
Krijg inzicht in uitgebreide voortgangsinformatie van jezelf of je medewerkers
Kennis opdoen met interactieve e-learning en uitgebreide praktijkopdrachten door gecertificeerde docenten
Orderproces
Once we have processed your order and payment, we will give you access to your courses. If you still have any questions about our ordering process, please refer to the button below.
read more about the order process
Een zakelijk account aanmaken
Wanneer u besteld namens uw bedrijf doet u er goed aan om aan zakelijk account bij ons aan te maken. Tijdens het registratieproces kunt u hiervoor kiezen. U heeft vervolgens de mogelijkheden om de bedrijfsgegevens in te voeren, een referentie en een afwijkend factuuradres toe te voegen.
Betaalmogelijkheden
U heeft bij ons diverse betaalmogelijkheden. Bij alle betaalopties ontvangt u sowieso een factuur na de bestelling. Gaat uw werkgever betalen, dan kiest u voor betaling per factuur.
Cursisten aanmaken
Als u een zakelijk account heeft aangemaakt dan heeft u de optie om cursisten/medewerkers aan te maken onder uw account. Als u dus meerdere trainingen koopt, kunt u cursisten aanmaken en deze vervolgens uitdelen aan uw collega’s. De cursisten krijgen een e-mail met inloggegevens wanneer zij worden aangemaakt en wanneer zij een training hebben gekregen.
Voortgangsinformatie
Met een zakelijk account bent u automatisch beheerder van uw organisatie en kunt u naast cursisten ook managers aanmaken. Beheerders en managers kunnen tevens voortgang inzien van alle cursisten binnen uw organisatie.
What is included?
Certificate of participation | Yes |
Monitor Progress | Yes |
Award Winning E-learning | Yes |
Mobile ready | Yes |
Sharing knowledge | Unlimited access to our IT professionals community |
Study advice | Our consultants are here for you to advice about your study career and options |
Study materials | Certified teachers with in depth knowledge about the subject. |
Service | World's best service |
Platform
Na bestelling van je training krijg je toegang tot ons innovatieve leerplatform. Hier vind je al je gekochte (of gevolgde) trainingen, kan je eventueel cursisten aanmaken en krijg je toegang tot uitgebreide voortgangsinformatie.
FAQ
Niet gevonden wat je zocht? Bekijk alle vragen of neem contact op.