
Learn to build a currency app with RecyclerView and Glide for flags, Jetpack navigation, bottom sheets, search, and an interactive chart, using MVVM, Retrofit, Room, coroutines, and Hilt.
Create and configure an android studio project in kotlin with an empty activity, apply kotlin dsl for build, explore manifest and layout files, and run on an android 14 emulator.
Create a rates fragment and display mock currency data in a RecyclerView, defining a rates item data class and a view binding enabled adapter to populate the list.
Adopt a model-view-viewmodel architecture by integrating the Rates Repository and use cases into a rates ViewModel, then observe changes in a fragment via state flow and update the RecyclerView.
Master unit testing by creating a rates repository test and validating simple and advanced tests. Learn to cache generated mock rates, compare lists, and ensure consistent results across device rotation.
Implement dependency injection with hilt in an Android app by annotating the application class, ViewModel, use case, and repository, wiring them with inject constructors and hilt components.
Implement a bottom navigation bar in an Android app using Material Design components and vector icons. Add dependencies, create menu XML, update layout constraints, and preview the icons and strings.
Learn to add a charts screen with Jetpack navigation, view binding, and Hilt-injected view model, wiring a navigation graph and bottom navigation to switch between fragments.
Implement currency selection in an Android app by building a two view holder rates list, handling add currency actions, and wiring MVVM with Hilt.
Move from a single module to a multi-module Android app by modularizing screens (rates, edit symbols, chart), extracting interfaces, and wiring dependencies with Hilt bindings.
Create a multi-module Android project by adding common and service modules, split user settings into interface and implementation modules, and configure rates repository to enable modularization and Gradle synchronization.
Finalize modularization by creating the use case module in service folder, wiring dependencies with Gradle and Hilt (including repositories, rates, and user settings), then sync, run, and celebrate multimodular setup.
Learn to manage a bottom navigation bar visibility, hiding it on currency selection, and implement a virtual back button and app bar configuration for the rates and charts fragments.
Learn retrofit integration by creating a retrofit module, wiring dependencies (retrofit, OkHttp, Kotlin serialization) and a Hilt-enabled retrofit instance with converter factory, then build a rates API to fetch currencies.
Develop and test a retrofit get latest rates function for the rates API, using from, currencies, and amount parameters to map the JSON to an object.
Integrate a rates API using retrofit and hilt, convert symbols to string, run network calls on IO with coroutines, and map responses into rates items for display in the app.
Fetch web currencies with descriptions, add symbol item details, implement in-memory caching with mutex synchronization, and update use cases and view models to select symbols for exchange rates.
Learn to persist user selected currencies across restarts using SharedPreferences, with suspend functions and coroutines, Hilt injected app context, and a mutex to prevent concurrency issues.
learn to input a conversion amount with a bottom sheet keyboard, wire rate item clicks to open it, validate input, and update the rates list via a viewmodel state.
Create a user base amount class, store the base currency and amount in shared preferences, and wire this data through a use case, the view model, and rates updates.
Build a standalone, reusable currency flag component that draws a flag from a currency code via a country service. Use Glide for image loading.
Enhance the app interface with a custom app bar and coordinated layout. Implement locale-aware currency formatting, a one-unit rate reference, and updated theming and menus.
Implement a calculator feature for the currency converter app by building a Kotlin-based calculator model with numbers and operators, precedence weights, parsing, evaluation, tests, and user interface integration.
Implement a search and filter feature for the Edit Symbols fragment by adding a search and filter menu, wiring ViewModel state flows, and updating the adapter to reflect symbol filtering.
We prepare the rates api service by defining a data class and a time series function, delegating to Retrofit, mapping to time series rates, and flattening nested maps.
Set up room database to cache historical rates for charts, define a time series entity with a composite primary key, implement a dao with insert and query.
Fetch and cache time series rates data by validating cached entries, detecting missing periods, querying the web service in chunks, and refreshing the database.
Build a time series line chart by implementing the get time series rates use case, wiring it to the chart view model, and rendering data via a custom view.
Define dimension resources and paints, then render a grid and labels on the chart, adjusting margins, offsets, and label measurements for correct spacing.
Add toggle buttons to select the chart period and save settings in preferences. Implement chart period enum, symbol pair, and chart settings with Kotlin serialization in user settings.
Learn to build an Android currency selector with two dropdowns and a swap button, using a modal bottom sheet and a shared ViewModel to update chart settings.
Learn to handle view touch events on a chart, tap to display the nearest rate with date, and update the user interface via a chart view callback.
Add a loading state to the chart view by overlaying a semi-transparent foreground. Show an indeterminate progress indicator, disable touch during loading, and implement fade in and fade out animations.
Elevate Your Skills with Our Complete Android Development Course!
Ever thought of becoming a top-notch Android developer? Or do you have an innovative app idea but lack the skills to make it real? Your solution is here! Whether you're new to programming or a developer looking to enhance your skill set, our course is crafted to guide you every step on your way.
Why Enroll in This Android App Development Course?
Expert Guidance: Learn from industry professionals with years of experience in Android application development and teaching.
Comprehensive Curriculum: Master everything from the basics to advanced Android features, including Kotlin, Jetpack Components, and modern development tools.
Interactive Learning: Dive into practical exercises, real-world projects, and detailed demos designed to reinforce your knowledge.
Top-Tier Course Content:
30+ high-quality video lessons
Step-by-step in-code tutorials
Extensive hands-on projects
Regular updates with new content
What You'll Master in Android Mobile App Development:
Kotlin Programming: Learn the ins and outs of Kotlin, the preferred language for Android development.
Android Jetpack: Understand and implement the latest libraries and tools to build robust, scalable apps.
User Interface Design: Create stunning UI with XML and Jetpack Compose.
Networking: Master API integration and asynchronous calls using Retrofit and other libraries.
Database Management: Utilize Room database for efficient data storage.
Unit Testing: Learn to write robust unit tests to ensure your code is reliable and maintainable.
Hilt: Simplify dependency injection in your Android apps with Hilt, making your code cleaner and more testable.
Coroutines: Master Kotlin Coroutines to handle asynchronous programming with ease and efficiency.
Multi-modular App Development: Learn to build scalable and maintainable Android apps by organizing your project into multiple modules.
LIMITED TIME OFFER: 30-DAY Money-Back Guarantee!
Don't miss this chance to transform your career or bring your app ideas to life. Enroll now in our Android application development course and start your journey to becoming a professional Android developer!