Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Software Development Tools No-Code Development
Business
Entrepreneurship Communication Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certifications Network & Security Hardware Operating Systems & Servers Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Paid Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement & Gardening Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition & Diet Yoga Mental Health Martial Arts & Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Learning Teacher Training Test Prep Other Teaching & Academics
Web Development JavaScript React Angular CSS Node.Js PHP HTML5 Vue JS
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Amazon AWS Cisco CCNA Microsoft AZ-900 CompTIA Security+
Microsoft Power BI SQL Tableau Data Modeling Business Analysis Business Intelligence MySQL Qlik Sense Data Analysis
Unity Unreal Engine Game Development Fundamentals C# 3D Game Development C++ Unreal Engine Blueprints 2D Game Development Blender
Google Flutter iOS Development Android Development Swift React Native Dart (programming language) Kotlin Mobile App Development SwiftUI
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting Canva InDesign Character Design Procreate Digital Illustration App
Life Coach Training Neuro-Linguistic Programming Personal Development Personal Transformation Life Purpose Mindfulness Sound Therapy Meditation CBT Cognitive Behavioral Therapy
Business Fundamentals Entrepreneurship Fundamentals Freelancing Business Strategy Startup Business Plan Online Business Blogging Leadership
Digital Marketing Social Media Marketing Marketing Strategy Google Analytics Internet Marketing Email Marketing Copywriting YouTube Marketing Startup

DevelopmentMobile DevelopmentAndroid Development

Build Modern Android App with REST API and Ktor Server

Develop an Android App with Kotlin. Fetch Data from REST API deployed on your Backend Server developed with Ktor.
Rating: 4.7 out of 54.7 (159 ratings)
1,236 students
Created by Stefan Jovanovic
Last updated 5/2022
English
English [Auto]

What you'll learn

  • Develop an Android Application
  • Develop a Backend Server with Ktor
  • Create your own REST API
  • Design App UI using Jetpack Compose UI toolkit
  • Clean Architecture + Use Cases
  • Create and Configure a Backend Server
  • Learn about Server Engines
  • Learn about Server Modules
  • Learn about Server Plugins
  • Handle Server Requests and Responses
  • Display Static Content on the Server
  • Templating
  • Auto-Reload Server feature
  • How to use Postman
  • Generate Ktor Project
  • Create and Handle Server Endpoints
  • Implement Serialization
  • Custom Headers
  • Static Pages
  • Testing Server Endpoints
  • Paging 3 Library with Jetpack Compose
  • Offline Caching with Remote Mediator
  • Work with multiple Paging Sources in Android Studio
  • ROOM as a Local Database
  • Dependency Injection on both Server and Android project
  • Dependency Injection with Koin
  • Dependency Injection with Dagger-Hilt
  • Implement On Boarding Screens
  • Implement Compose Navigation
  • Implement Swipe to Refresh
  • Search Widget - Custom UI Component with Jetpack Compose
  • Rating Widget - Custom UI Component with Jetpack Compose
  • Ordered List - Custom UI Component with Jetpack Compose
  • Info Box - Custom UI Component with Jetpack Compose
  • Testing Custom UI Components
  • Testing Android Application (Partially)
  • Shimmer Effect
  • Beautiful App Design
  • Animated Splash Screen
  • Palette API
  • Dynamic Layout Colors
  • Extract Colors from an Image and Apply them into the Layout
  • MVVM
  • Retrofit
  • Send HTTP Requests
  • KotlinX Serialization
  • Coil Image Loading Library
  • Horizontal Pager
  • Pager Indicators
  • System UI Controller
  • Both Light and Dark Theme Design
  • Server Deployment on Heroku
  • AND MORE...

Requirements

  • You should be already familiar with a Jetpack Compose (Watch my To-Do course with Jetpack Compose first)
  • You should be already familiar with a Kotlin programming language
  • You should be already familiar with basic Android Architecture Components

Description

Hello there and welcome to my course!

This course will be special. Why? Well because I'm going to teach you how to build not just another android application, but also a backend server, your own REST API!

The main purpose of that server will be to provide the data to our Android Application. You will learn how to successfully establish a quality communication between client, or in this case our Android App, and a backend server.

For the backend we will use ktor framework which is built primarily on Kotlin  and Coroutines! You will learn everything about that framework, how to create your own endpoints, how to work with client requests, receive query parameters, process that same request on your backend, and finally send a fully prepared response to your clients, or in this case an Android App which we are going to develop as well.


Now, our Android Application will use the newest API's and libraries. For designing our Application layout we will use a modern UI toolkit called jetpack compose. For communicating with our backend we will use a retrofit, and paging 3 library along with remote mediator, so we can automatically store and cache that data from the server into our Local ROOM database. That way we will be able to load the data into our Application, even if we don't have an internet connection.


And that's not all, I will also teach you how to test your Backend Server as well as  your Android App. We are going to test all our server endpoints, the most important parts of our Android application and few custom UI components which we are going to build using Jetpack Compose! I'm going to teach you how to create a custom UI component called Rating Widget, using Jetpack Compose, it will look amazing!


Next you will learn how to implement a swipe to refresh functionality in your app, how to implement a palette API so you can display dynamic colors into your layout depending on the image we load into our Screen. And many other different things Bottom Line, there is a lot of work to do, so get ready, because this will be quite of a journey!


So what are you waiting for developers. Let's get started!

Who this course is for:

  • Android Developers
  • Android Designers
  • Mobile Developers
  • Anyone who wants to learn how to develop Android App using the Newest and Modern technologies and API's
  • Anyone who wants to learn how to develop Develop Android Apps with Kotlin programming language
  • Anyone who wants to learn how to develop an Android App using the modern UI Toolkit called Jetpack Compose
  • Anyone who wants to learn how to develop an App using a clean architecture.

Instructor

Stefan Jovanovic
Android Developer/Designer
Stefan Jovanovic
  • 4.6 Instructor Rating
  • 2,145 Reviews
  • 8,464 Students
  • 21 Courses

I’m an Android Developer/Designer and technology enthusiast. Love working on a new and exciting projects, sharing my knowledge with  others, and always willing to learn more. I believe that permanent  education is the key to success.  I've been working as a developer/designer for 5 years so far.

Have a lots of projects on my mind, and I will be creating many useful courses in the future, hope to hear from you as you enroll in some of my courses!

Kind Regards,
Stefan Jovanovic (Stevdza-San).

Top companies choose Udemy Business to build in-demand career skills.
NasdaqVolkswagenBoxNetAppEventbrite
  • Udemy Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Investors
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Accessibility statement
Udemy
© 2022 Udemy, Inc.