Tags
Language
Tags
June 2025
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 1 2 3 4 5
    Attention❗ To save your time, in order to download anything on this site, you must be registered 👉 HERE. If you do not have a registration yet, it is better to do it right away. ✌

    ( • )( • ) ( ͡⚆ ͜ʖ ͡⚆ ) (‿ˠ‿)
    SpicyMags.xyz

    Modern Food Recipes App - Android Development With Kotlin

    Posted By: ELK1nG
    Modern Food Recipes App - Android Development With Kotlin

    Modern Food Recipes App - Android Development With Kotlin
    Last updated 12/2021
    MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
    Language: English | Size: 7.44 GB | Duration: 15h 54m

    Develop beautiful and fully functional Android App in Android Studio using the power of Kotlin programming language.

    What you'll learn
    Develop a fully functional Android App
    Food Recipes Android app
    ROOM Database
    Dependency Injection - Dagger-Hilt
    Retrofit
    Offline Cache
    Local & Remote Data Sources
    Kotlin
    Kotlin Coroutines
    Android Architecture Component
    Navigation Component
    DataStore Preferences
    Data Binding
    ViewModel
    AndroidViewModel
    LiveData
    Flow
    DiffUtil
    RecyclerView
    Search Recyclerview
    REST API
    Client - Server Communication
    Send HTTP Request
    Parse HTTP Response
    Dark and Light Theme
    Night Mode
    Motion Layout
    Material Components
    Material Design
    Create Shimmer Effect
    Database Inspector
    ViewPager
    ViewPager2
    Create Contextual Action Mode
    Share Data with Other Apps
    Create Modal Bottom Sheet
    Nice looking UI Design
    Migration from kotlin-android-extensions plugin
    And more…
    Requirements
    Basic knowledge of Kotlin programming langauge
    Basic knowledge of Android Architecture Components
    Knowledge about Adobe XD is a plus (but not necessary)
    Description
    Hello there and welcome to my course, in this course I'm going to teach you how to create a fully functional Android application using the power of Kotlin programming language. We are going to develop Food Recipes application, where we can browse recipes from various different kind of meal and diet types. This App Design will be a lot similar to the one from my Material UI Design course which I made a while ago.Our application will work with both Remote and local data sources. And for Remote data source we will use a third party API for food recipes, called Spoonacular. I'm going to teach you how to establish connection between your app and the server. So basically we will send GET Request to our API and receive a list of food recipes as a Response. Also our app will be able to handle no internet connection, and store or cache the data localy to our database when it's needed.Also from our application we will be able to search recipes from our API directly. So if you have your favorite flavor you can search it here and probably you'll find many amazing recipes. Next our app will have Favorites Fragment where we can save our favorite recipes for later use when we need them. And finally our app will have it's fun side, and that is food joke fragment.However this course is not for Absolute Beginners in Android Development, at least you need to have a basic knowledge about most popular Android Architecture components, and Kotlin programming language in general. This is not going to be easy task especially if you haven't worked before simultaneously with API and local database. Still don't get discouraged everything is learnable here, if you are motivated enough of course.One more thing, so this course will be an ongoing project which means that I will post updates on a regular basis, whenever we find a new bug, or whenever some code cleanup is required. Which is why I want to involve all of you who watch this course to work together with me in making this  app even better. I'm going to give me you more details about that at the end of this course of course.So what are you waiting for, let's get started developers!Source code: Visit my Github profile (stevdza-san)

    Overview

    Section 1: Introduction

    Lecture 1 Introduction

    Lecture 2 Application Design

    Lecture 3 Application Preview

    Lecture 4 Project Structure Overview

    Lecture 5 Introducing with API

    Lecture 6 API Response Example

    Lecture 7 Github Repository

    Section 2: Navigation Component Setup

    Lecture 8 Project Setup

    Lecture 9 Navigation Component Setup

    Section 3: Design RecipesFragment Layout

    Lecture 10 Design RecipesFragment Layout

    Lecture 11 Design RecipesRowLayout

    Lecture 12 Design Recyclerview Placeholder Layout

    Section 4: Start with Retrofit

    Lecture 13 Introducing with Retrofit

    Lecture 14 Generate Model classes for API

    Lecture 15 Create Constants class

    Lecture 16 Create RecipesApi interface

    Lecture 17 Project Structure Overview & RemoteDataSource class

    Section 5: Introducing with Dependency Injection

    Lecture 18 Dependency Injection Overview

    Lecture 19 Manual Dependency Injection

    Lecture 20 Dagger Basics

    Lecture 21 Hilt - Dependency Injection Library | Part 1

    Lecture 22 Hilt - Dependency Injection Library | Part 2

    Lecture 23 Component Scoping

    Section 6: Dagger-Hilt Setup - NetworkModule

    Lecture 24 Create MyApplication class

    Lecture 25 Create NetworkModule

    Lecture 26 Inject RemoteDataSource class

    Lecture 27 Create and Inject Repository class

    Lecture 28 Create NetworkResult class

    Lecture 29 Create and Inject MainViewModel class

    Section 7: Introducing with Data Binding

    Lecture 30 Introducing with Data Binding

    Lecture 31 Binding Adapters

    Section 8: Display API Data in Recyclerview

    Lecture 32 Create RecipesAdapter class

    Lecture 33 DiffUtil - Create RecipesDiffUtil class

    Lecture 34 Create RecipesRowBinding class

    Lecture 35 RecipesFragment - Connect the Dots

    Lecture 36 Create RecipesViewModel class

    Lecture 37 Let's Recap

    Section 9: Introducing with ROOM Library

    Lecture 38 Introducing with ROOM Library

    Section 10: ROOM Database

    Lecture 39 Offline Caching

    Lecture 40 Introducing with Kotlin Flow

    Lecture 41 Create Entity (RecipesEntity)

    Lecture 42 Create DAO (RecipesDao)

    Lecture 43 Create Type Converter (RecipesTypeConverter)

    Lecture 44 Create Database (RecipesDatabase)

    Section 11: Dagger-Hilt Setup - DatabaseModule

    Lecture 45 Create DatabaseModule

    Lecture 46 Create and Inject LocalDataSource

    Lecture 47 MainViewModel - Offline Cache

    Lecture 48 RecipesFragment - Read from Database

    Lecture 49 ObserveOnce - Extension Function

    Lecture 50 Database Inspector

    Lecture 51 Placeholder Image - Error

    Lecture 52 Create RecipesBinding class

    Section 12: Introducing with DataStore Preferences

    Lecture 53 Introducing with DataStore Preferences

    Section 13: Add Bottom Sheet

    Lecture 54 About BottomSheet

    Lecture 55 Design RecipesBottomSheet

    Lecture 56 Navigate to RecipesBottomSheet

    Lecture 57 Customize Chip Style

    Lecture 58 Create and Inject DataStoreRepository class

    Lecture 59 Modify and Inject RecipesViewModel

    Lecture 60 RecipesBottomSheet - Persist Selected Chips

    Lecture 61 Handle Return from BottomSheet - Safe Args

    Lecture 62 Bottom Sheet - Recap

    Section 14: Handle Internet Connection

    Lecture 63 Introducing with StateFlow

    Lecture 64 Create NetworkListener class

    Lecture 65 RecipesFragment - Listen for Internet Connection

    Lecture 66 Back Online - Persist data with DataStore

    Section 15: Search Recipes

    Lecture 67 Design RecipesFragment Menu

    Lecture 68 FoodRecipesApi - searchRecipes()

    Lecture 69 RemoteDataSource - searchRecipes()

    Lecture 70 MainViewModel - Handle Search Response

    Lecture 71 RecipesFragment - searchApiData()

    Section 16: DetailsActivity & OverviewFragment

    Lecture 72 Design activity_details Layout

    Lecture 73 Send Result to DetailsActivity - Safe Args

    Lecture 74 Create PagerAdapter class

    Lecture 75 Design fragment_overview Layout

    Lecture 76 OverviewFragment - Display Recipe Data

    Lecture 77 Parse HTML Text - Jsoup

    Section 17: IngredientsFragment

    Lecture 78 Design fragment_ingredients Layout

    Lecture 79 Design ingredients_row_layout

    Lecture 80 Modify RecipesDiffUtil class

    Lecture 81 Create IngredientsAdapter class

    Lecture 82 IngredientsFragment - Display Ingredients Data

    Section 18: InstructionsFragment

    Lecture 83 Modify InstructionsFragment

    Lecture 84 Modify OverviewFragment & recipes_row_layout

    Section 19: ROOM Database - Favorite Recipes

    Lecture 85 Create FavoritesEntity class

    Lecture 86 Modify RecipesTypeConverter class

    Lecture 87 Modify RecipesDao interface

    Lecture 88 Modify LocalDataSource class

    Lecture 89 Modify MainViewModel class

    Lecture 90 Modify RecipesDatabase class

    Section 20: Add to Favorites - Details Activity

    Lecture 91 Create details_menu

    Lecture 92 Save Recipe to Favorites

    Lecture 93 Check if Recipe is Saved

    Lecture 94 Remove Recipe from Favorites

    Section 21: FavoriteRecipesFragment

    Lecture 95 Design fragment_favorite_recipes Layout

    Lecture 96 Design favorite_recipes_row_layout

    Lecture 97 Create FavoriteRecipesAdapter class

    Lecture 98 Display Favorite Recipes

    Lecture 99 Create FavoriteRecipesBinding class

    Section 22: Contextual Action Mode

    Lecture 100 FavoriteRecipesFragment - Single Click Listener

    Lecture 101 FavoriteRecipesFragment - Long Click Listener

    Lecture 102 Apply Contextual Action Mode Style

    Lecture 103 Recipe Selection Style - onLongClick

    Lecture 104 Apply Contextual Action Mode Title

    Lecture 105 Delete Selected Favorite Recipes

    Lecture 106 Close Contextual Action Mode

    Lecture 107 FavoriteRecipesFragment - ParseHTML

    Lecture 108 Recap - Contextual Action Mode

    Lecture 109 Create favorite_recipes_menu

    Section 23: FoodJokeFragment

    Lecture 110 Design fragment_food_joke

    Lecture 111 Create FoodJoke model class

    Lecture 112 Create FoodJoke GET Request

    Lecture 113 Modify RemoteDataSource - FoodJoke

    Lecture 114 Modify MainViewModel - FoodJoke

    Lecture 115 Offline Cache - FoodJoke

    Lecture 116 FoodJokeFragment - Let's Start

    Lecture 117 FoodJokeBinding class - Part 1

    Lecture 118 FoodJokeBinding class - Part 2

    Lecture 119 Add Share Menu

    Lecture 120 Recap - FoodJokeFragment

    Section 24: Splash Screen

    Lecture 121 Add Splash Screen

    Section 25: Dark Theme

    Lecture 122 RecipesFragment - Dark Theme

    Lecture 123 FavoriteRecipesFragment - Dark Theme

    Lecture 124 FoodJokeFragment - Dark Theme

    Lecture 125 RecipesBottomSheet - Dark Theme

    Lecture 126 Placeholder Row Layout - Dark Theme

    Lecture 127 DetailsActivity - Dark Theme

    Lecture 128 OverviewFragment - Dark Theme

    Lecture 129 IngredientsFragment - Dark Theme

    Section 26: Motion Layout

    Lecture 130 Add Motion Layout - OverviewFragment

    Section 27: App Icon

    Lecture 131 Add App Icon

    Section 28: Final Word

    Lecture 132 Final Word

    Section 29: Course Updates - Bug Hunt & Code Cleanup

    Lecture 133 DataStore 1.0.0-alpha04 - Package Issue Fixed

    Lecture 134 Internet Connection Bug - Fixed

    Lecture 135 Migrate from 'kotlin-android-extensions' plugin

    Lecture 136 Migrate to ViewPager2

    Lecture 137 Code Cleanup - RecipesBinding & RecipesRowBinding

    Lecture 138 Fix a Memory Leak - RecipesBottomSheet

    Lecture 139 FavoriteRecipesBinding - Code Cleanup

    Lecture 140 Yellow Star Issue - Fixed

    Lecture 141 Multi Selection Mode - Fixed

    Lecture 142 RecyclerView - Item Selection State - Fixed

    Lecture 143 Dependency Update - Dagger-Hilt and Data Store

    Lecture 144 Dependency Update - DataStore-Alpha07

    Lecture 145 OverviewFragment - Code Cleanup

    Lecture 146 Jcenter Migration + Code Cleanup & Bug Fix

    Lecture 147 RecipesBottomSheet bug fixed & Updated updateChip() fun

    Lecture 148 Motion Layout & View Pager gestures conflict - Fixed

    Lecture 149 NetworkListener's class function Updated

    Android Developers,Mobile App Developers,Software Developers,Kotlin Programmers