How to Build an MVI Clean Code Weather App in Android Studio (Jetpack Compose)

preview_player
Показать описание
In this video, you'll learn how you can make use of the Open Meteo API to get weather data and nicely display it in an Android app.

Check the API here:

⭐ Get certificates for your future job
⭐ Save countless hours of time
⭐ 100% money back guarantee for 30 days
⭐ Become an industry-ready Android developer now with this course:

Inspired by this design:

Get the initial source code here:

Get the final source code for this video here:

Join my Discord server:

You like my free content? Here you can buy me a coffee:
Рекомендации по теме
Комментарии
Автор

Little correction for 34:48, you'd actually also need to take care of the case when the time would be 23:50 for example, then you want to take 12am of the next day, not of the current one. Take it as a homework 😂

PhilippLackner
Автор

Philip, today I'll starting doing a lot of your videos and learning Compose. I said this a lot of times here, but, man... You rock!! You are really awesome!! I've been seeing how you're growing as an youtuber. How your videos are getting better quality wise, how you are making funny stories, how you are taking about more hard topics such as SOLID, how you are using new stuff such as Compose... Anyway, you really have an awesome channel and I wish you all best!! You deserve to become a huge channel and I'm looking forward to see that :D

leonardosibela
Автор

thanks philipp, you are my teacher, more project with jetpack compose CRUD with room, restful api, and firebase, please, thanks

edycole
Автор

currently searching for how to implement location service in jetpack compose and boom saw dis video .. Great video

softcoder
Автор

The app looks so powerful. Thank you for great videos as always.

MKRN_
Автор

Hey man..in fact we are very lucky to have someone like you in the field of designing Android applications.. .you are a gift sent to us

Can you explain how FCM deals with the API Request and also receiving a real notification from a chat application or something?

hossamqandel
Автор

Is MVI better suited for Compose (seen many examples) or you just used it for a change since everyone uses MVVM all the time?

TarunKumar-sqwj
Автор

finally after two weeks finished this video.

JamesBond-mqpd
Автор

Philipp saying 30 degree HOT! meanwhile me chilling in 44 degrees 🥲

hellosagar
Автор

Hi Philipp,
This tutorial is well made, as a general feedback it would be great if at the end of any video you would add some hints into how you would expand this app.

ZanluSk
Автор

I liked the idea of the app and your simple explanation for the concepts, thanks Philipp

sarahmohamed
Автор

What a bummer, followed and coded the entire way up to 1:16:16 and the app doesn't work, just tried the source code from master and that one doesn't work either, presumably due to the location code issue that someone else in the comments mentioned was deprecated...

nrg
Автор

Hey Philipp, I thought I will see something new with MVC architecture but there is nothing difference compared to MVVM.. am i missing something or you accidentally mentioned MVC instead of MVVM

Zeeshan-Syed
Автор

Wow really nice walk through. Thanks for taking it every step of the way.

benkabore
Автор

Hey @Philipp Lackner, I watched this video to see how does MVI architecture look like and how does it differ from 'classic' MVVM, but i don't see any differences from other tutorial apps done with MVVM (besides the difference of not using UseCases here)
Could You please clarify or explain what the actual difference is? (since I always assumed that MVI does not use ViewModels but some other classes to resolve UI state control)

Matiplayer
Автор

Wireless debugging works ok on Electric Eel but if you are using a cable, try a better quality one, even if the cable you're using now seems fine

OtarBediashvili
Автор

Where u declarate your Intentions??? You have your WeatherState I think that you have a WhatherIntention for example: sealed class WhatherIntention{ object FetchData: MainInten() ... } and cosuming in your viewModelm and cosuming in your viewModel

pauloCosteira
Автор

Hi @Philipp, the part for getting the location 47:07 in the code for "lastLocation" this shows an error

I checked online and found lastLocation is deprecated, what is the alternative i can add in the code

alex
Автор

Thanks a lot for your amazing tutorials

animekingdom
Автор

Clean Architecture does seem interesting but agreed with what you said at start that it can be overkill for smaller apps like this (to include Use Cases, etc).

I'm using it for rewriting an old Android app of mine and I'm not even half done and am actually considering starting over and dropping CA or at least neutering it, lmao. The app is so much more complicated now (using Kotlin/Room/Clean Arch, from just Java/Sqlite) and has at least 3-4 times the number of files as the old app and I'm not even half done yet. It's just a super simple mainly data entry and listview type app with a few screens.

clamum