Gradle for Beginners (Build Types, Product Flavors, Build Variants, Source Sets)

  Рет қаралды 85,935

Philipp Lackner

Philipp Lackner

Күн бұрын

Пікірлер: 127
@HiImMatthewN
@HiImMatthewN 2 жыл бұрын
You sir is a gift from heaven for us Intermediate developers.
@disgruntled_llama
@disgruntled_llama 4 ай бұрын
Why is it that ever time I go searching for an explanation of something in Android development I always seem to end up on this channel? Thanks for all of this information, Philipp! Danke Schoen!
@devenderchaturvedi9903
@devenderchaturvedi9903 2 жыл бұрын
Best Gradle video ever. I'm desperately waiting for the next part in this series. Also, If we don't want to have 2 apks for free and paid features, instead we want to have it in one apk, and unlock paid feature modules on subscription basis. How to manage this use case? Please make a video on this. There's literally no video on it.
@stephensiapno7361
@stephensiapno7361 2 жыл бұрын
If that is your usecase, then you don't need to create a buildFlavor. You just need to create a different module to separate the concern for free and paid features.
@devenderchaturvedi9903
@devenderchaturvedi9903 2 жыл бұрын
@@stephensiapno7361 Thanks. Sure I'll try the multi-modular approach.
@haykmkrtchyan7093
@haykmkrtchyan7093 2 жыл бұрын
@@devenderchaturvedi9903 If it's one apk and it's in app subscription, just use the billing library with multi module I guess
@mikec4220
@mikec4220 2 жыл бұрын
Hoooray! Finally ! This is soo important to learn as early as possible in your dev career and many of us fail to do so! Thanks a lot Philipp
@Alchemist10241
@Alchemist10241 Жыл бұрын
you're right, I've postponed learning Gradle till this video and I've suffered the consequences
@dariusfathi5520
@dariusfathi5520 2 жыл бұрын
After years of android development, finally I'm going to understand product flavors! Great work Thanks
@trendystatuses161
@trendystatuses161 2 жыл бұрын
Just what I needed, thank you
@adcmjbe
@adcmjbe Жыл бұрын
You do have a way of making complex concepts "almost" simple ;) Thanks for another great video ...
@101mdataullah8
@101mdataullah8 3 ай бұрын
This is the best intro to Gradle
@luke7551
@luke7551 2 жыл бұрын
Gradle is most confusing thing when I start to learn Android development. Thank you so much for such useful content. I hope you will making tutorials on working with rich text formatting on typing.
@CivoMT
@CivoMT 2 жыл бұрын
Great and easy to understand as always! Philip could you make a video with explanation of MVI architecture? Or Even some application with usage of this architecture? More and more companies are asking for MVI as it suit pretty well with jetpack compose. I think lot of people would appreciate it. Thank y :-)!
@thishandleistaken.
@thishandleistaken. 2 жыл бұрын
Great Idea, also I would like to see series or maybe a 3hour long video of him making a real app from absolute scratch (with setting up gradle, manifest file, all the implementations) and show the process of uploading it into play store
@kkp559
@kkp559 2 жыл бұрын
Did you read about Elmslie from vivid money? It’s good library to understand mvi flow
@dawidtyburek
@dawidtyburek 2 жыл бұрын
This is an amazing MVI talk imho kzbin.info/www/bejne/homliZZ-hsp3gqc
@jamief123
@jamief123 2 жыл бұрын
Thanks for this. Gradle is a bit of a mystery to me and I never really understood what it was doing.
@PhilippLackner
@PhilippLackner 2 жыл бұрын
Hope it helped!
@dreablin
@dreablin 2 жыл бұрын
Thanks, I faced with Flavors just 2 weeks ago on a new job :) It may be not 100% clear from this video, but you can use different res folders as well. Waiting for the next part!
@adeltarek9114
@adeltarek9114 2 жыл бұрын
I didn't watched it yet But of course I LIKED IT Because You decided to talk about something has a lack of resources, I appreciate it ❤️
@PhilippLackner
@PhilippLackner 2 жыл бұрын
❤️
@shabari13
@shabari13 Жыл бұрын
Thank you for doing this..For a Gradle beginner, this is such a good start
@muhammadirvan8655
@muhammadirvan8655 2 жыл бұрын
Great explanation for beginner, its complicated sometime for new comers who learn Android Apps to know what is Gradle actually. thank you Philipp
@PhilippLackner
@PhilippLackner 2 жыл бұрын
You're very welcome!
@timurabdyraev4447
@timurabdyraev4447 2 жыл бұрын
Beg you: Make a detailed video about Gradle version catalogs. Really need it now
@alphacoder3822
@alphacoder3822 2 жыл бұрын
2 german dudes making amazing android content. 1. Philip 2. Florin walther from coding in flow
@tiamabderezai5374
@tiamabderezai5374 2 жыл бұрын
Philipp! Make a video explaining build variants and flavors (release, debug, etc) please
@kushiskinng
@kushiskinng 2 жыл бұрын
I m really glad I follow this channel.. Thanks Philip! Your content is really helpful
@TiagoDvl
@TiagoDvl 2 жыл бұрын
As always: super helpful! I would love to have more insights on how do you know what folder to choose from that long list when you type "test" or "testDebug".
@PhilippLackner
@PhilippLackner 2 жыл бұрын
It's really just about deciding which build variant you have specific behavior or specific resources for and then picking the folder for that build variant. Usually, you either select the /java folder or /res folder depending on what differs for that variant. If you write tests for it, you of course choose the test or androidTest source set depending on the type of tests.
@masoudfallahpour3650
@masoudfallahpour3650 2 жыл бұрын
Just a small correction. At 2:29 you say "package name" when highlighting the "applicationId" in the IDE. Package name is not the same thing as application ID.
@amirhosseinparhizgar4528
@amirhosseinparhizgar4528 2 жыл бұрын
Nice one! waiting for next video on gradle. thank you Philipp
@unaisulhadi9102
@unaisulhadi9102 2 жыл бұрын
Amazing video! Please do a video about Kotlin DSL also.
@pandukaful
@pandukaful 2 жыл бұрын
Thank you for creating this video, it is so helpful mate.
@rowenarrow
@rowenarrow 2 жыл бұрын
Fantastic video. I learned a lot on something I have wanted to learn about. Got some good notes from this and I am looking forward to watching more of your content.
@cashat
@cashat 2 жыл бұрын
Thank you for this awesome video , Wil you organize it with the second video in a playlist?! I couldn't find the other one
@sujit_ghimire
@sujit_ghimire 2 жыл бұрын
Thanks Philipp for this video. You're the best.
@sumukhaithal2819
@sumukhaithal2819 2 жыл бұрын
Simple and easy to understand. Thank you. Could you make a videos about applying pro guard and r8 for a project as well ?
@PhilippLackner
@PhilippLackner 2 жыл бұрын
Already have that, search on my channel 😁
@sumukhaithal2819
@sumukhaithal2819 2 жыл бұрын
@@PhilippLackner ah my bad !. Thanks again
@milon27
@milon27 2 жыл бұрын
i was waiting for so long
@elfarouk3306
@elfarouk3306 2 жыл бұрын
I can't wait for the next video ... *You are the best*
@rajeevkumargupta532
@rajeevkumargupta532 2 жыл бұрын
Content and knowledge, up to the mark as always ❣️
@augustocera574
@augustocera574 2 жыл бұрын
Thank you for this video Philipp!
@kushal7966
@kushal7966 Жыл бұрын
Thanks for the video .. its helpful at right time ....
@axw-ei3fn
@axw-ei3fn 2 жыл бұрын
This videos tutorials is very helpful to me .
@TheChustek
@TheChustek Жыл бұрын
OP explanation Philipp, Good Job!
@jjhoninatan55sabadi
@jjhoninatan55sabadi 2 жыл бұрын
I wish i could like your video 100 times!
@samsammaniamantap
@samsammaniamantap 2 жыл бұрын
Thanks Phil, sekarang saya lebih mengerti tentang Flavors
@chrisfelix9065
@chrisfelix9065 2 жыл бұрын
God bless you for treating this topic
@rileyfarro6801
@rileyfarro6801 2 жыл бұрын
I really needed this, thank you!
@PhilippLackner
@PhilippLackner 2 жыл бұрын
You're welcome!
@hdkloh6857
@hdkloh6857 2 жыл бұрын
Nice video as always.... Android/Google team needs to make gradle thing similar to iOS... If a fresher gets a gradle sync failed error it's a nightmare for them....
@maverick7695
@maverick7695 2 жыл бұрын
Always amazing philipp ,, keep up the good tutorials ❤❤
@PhilippLackner
@PhilippLackner 2 жыл бұрын
More to come!
@adamjacob5482
@adamjacob5482 2 жыл бұрын
Thanks mate, really good content and very helpful as always
@elangovankr110
@elangovankr110 2 жыл бұрын
Very useful video. Expecting more like this.
@PhilippLackner
@PhilippLackner 2 жыл бұрын
Sure 👍
@smelkova5826
@smelkova5826 Жыл бұрын
Thank you so much for this helpful video
@oxitroy
@oxitroy 2 жыл бұрын
I guess i'm missing something about products flavor and having one app that can have different minsdk ; If you have one product flavor with minSdk 21 and one with minSdk 18, when the app is released on store will it be available to phone with sdk 18 ? Even with product flavor you are forced to release 2 app with different minsdk, dont you? Great video as always
@PhilippLackner
@PhilippLackner 2 жыл бұрын
yes, but you still have one code base instead of two
@niroshanrathnayake7002
@niroshanrathnayake7002 2 жыл бұрын
Really helpful. Good one. Thank You
@kapileshrajput456
@kapileshrajput456 2 жыл бұрын
Really great explanation, thank you.
@omidphoenix4883
@omidphoenix4883 2 жыл бұрын
Thanks brother! good job! 🙏
@ashwinpatidar2878
@ashwinpatidar2878 2 жыл бұрын
Superb Explanation
@AndroidDojo
@AndroidDojo 2 жыл бұрын
Wow, this is cool Man, can you create a GradleBasicplaylist please 🙏, this is soooooo important. There are no videos talking about Android Gradle exactly like this 😀.
@PhilippLackner
@PhilippLackner 2 жыл бұрын
This video is about gradle basics 😅
@udaiti6784
@udaiti6784 3 ай бұрын
For Android instrumentation test with release build, what build configuration does gradle use? Specifically what proguard file does it use?
@jeckonly5853
@jeckonly5853 2 жыл бұрын
So thanks!!!You help me a lot!! 😲
@alihosseinnezhad2957
@alihosseinnezhad2957 2 жыл бұрын
Interesting. Thanks Philip 😊.
@anandbehera1969
@anandbehera1969 2 жыл бұрын
Helpful Content.. Thanks
@Talaria.School
@Talaria.School 2 жыл бұрын
Great topic. Thanks a lot
@عبدالمؤمننيال
@عبدالمؤمننيال 2 жыл бұрын
Please Help I am new to this channel First I started learning kotlin language and fundamental tutorial and I am currently working on an application. Is the next step to learn Corotin Course or mvvm and add there are two mvvm series on the channel what is the difference between them thank you philipp
@mustafaammar551
@mustafaammar551 2 жыл бұрын
Very cool video thank you BRO 🔥🔥🔥 👍👍👍
@haykmkrtchyan7093
@haykmkrtchyan7093 2 жыл бұрын
Great tutorial. Just one more question. If we have some flavours, do we use source sets to implement the flavour specific functionality? Like one source set for the free app and one source set for the paid one?
@Basirafeef
@Basirafeef Жыл бұрын
thanks for sharing great knowledge sir. sir i created an app for multiple people from the same source with different name, themes, server and google's .json configuration file. the problem is when i update one i need to update others too. is there a why to create multiple apps from the same source with different name, themes, server and google's .json configuration file from one project with different source sets. thanks.
@pickemparty
@pickemparty Жыл бұрын
Can you show Generating Multiple APKs for Android ABIs (diff CPUs) in Gradle?!
@Sepphirex
@Sepphirex 2 жыл бұрын
Thank you so much!
@santoshs490
@santoshs490 2 жыл бұрын
Great video...!! Thanks
@salmaK20012
@salmaK20012 Жыл бұрын
Hi, is ktor currently a good choice for backend development?
@milon27
@milon27 2 жыл бұрын
love you man
@MrNDQuattro
@MrNDQuattro Жыл бұрын
Thanks for the vid. Why would we need apks with different minSdk? Anyway we need to handle API check logic in code if we use new features.
@PhilippLackner
@PhilippLackner Жыл бұрын
If a whole feature is only for a certain min sdk, you don't want to include all that code in an app which can't even use that feature
@amineayachi335
@amineayachi335 2 жыл бұрын
what a great video thanks
@alannelson4001
@alannelson4001 Жыл бұрын
Two questions: 1.) How do we define from where the implementations SDKs are pulled from? I know it's usually from maven repository but is it defined in the gradle someplace? 2.) Does anyone have any good resources for establishing a "bypassLogin" build that would have all mock data provided for all API responses?
@studiomacbookpro159
@studiomacbookpro159 2 жыл бұрын
very nice topic
@footballCartoon91
@footballCartoon91 2 жыл бұрын
i want to learn MVVM but i dont understand the code you wrote in the build.gradle (project) .. because it involves buildscript object and allprojects object.. in my project it only contains plugins object..so that s why i am here
@rubinho388
@rubinho388 2 жыл бұрын
in recent android studio versions the items in the gradle are displayed a little bit differently from olders version. If you want to add buildScript to your project level gradle just add it above the plugins block
@TerryboyVictor
@TerryboyVictor 2 жыл бұрын
On the Minimum SDK part, how do you then upload to the store targeting difference SDK if you can only upload one apk/bundle ? Or by building it packages both and on installing on individual device, it will target the device API and choose appropriately ?
@rapidretrovenue563
@rapidretrovenue563 Жыл бұрын
does gradle HAVE to be in C drive? I need to move it to D, would that be possible? If so, how do I point to the directory? Thanks in advance everyone!
@SpaceGuideHub
@SpaceGuideHub Жыл бұрын
I'm completely newby in this topic. And I have problems with run your old and new examples from Github. I don't undestand how people maintains android projects, if when I or someone else try to run this project on his local mashine and need to fight with many buid issues, which is not have relation to real code writing. This is a big pain in my life now...
@gratefulamateur1393
@gratefulamateur1393 2 ай бұрын
Gradle macht das Kotlin suess! 😁
@erasmonepomuceno1719
@erasmonepomuceno1719 2 жыл бұрын
Hi Phillip, can you make a video how to use AD (Banner or Native) in recicleview but gettind data from api? I'm bennigner in android and i'm trying this, i see a lot tutorial but don't work with getting data from api
@PhilippLackner
@PhilippLackner 2 жыл бұрын
I'll put it on my list :)
@erasmonepomuceno1719
@erasmonepomuceno1719 2 жыл бұрын
@@PhilippLackner Tks a lot
@anmolkulshrestha5855
@anmolkulshrestha5855 2 жыл бұрын
Thanks man
@varshabhatia5487
@varshabhatia5487 2 жыл бұрын
Nice video. Thank you. I have a question: For example in my project I have 4 variants/ product flavours. I have one file which is already created in main folder but I want to use the same file with extra code for different product flavours. So is that possible via source set? I tried it but it won’t work. Example: I have xyz class in main folder. I cretaed 4 product flavours in build.gradle. Now I want to use the same xyz file with some extra code. I tried to copy and pasted the same file into newly created sourceset folder with some extra connection. But it won’t work that way.
@pickemparty
@pickemparty Жыл бұрын
Lastly, you didnt cover splits... is there a reason for that?
@ReddSpark
@ReddSpark Жыл бұрын
Had to wait till 2:20 to actually find an answer to "What the fook is gradle?"
@rafaelparanhos7435
@rafaelparanhos7435 2 жыл бұрын
Is there a way to config a flavor with plugin com.android.application and other flavor with com.android.library. If so, how to config it?
@vinaykumarpatel649
@vinaykumarpatel649 2 жыл бұрын
Thanks
@h4ktbtw
@h4ktbtw 2 жыл бұрын
Gradle takes endless time to build? Oh boy, have you ever used Maven to build Java/Kotlin project?
@stonedcodingtom9097
@stonedcodingtom9097 7 ай бұрын
It helped me, bump
@alexthebased
@alexthebased 2 жыл бұрын
Automatically like
@milon27
@milon27 2 жыл бұрын
thank you
@coffeebytez
@coffeebytez 2 жыл бұрын
great video!
@PhilippLackner
@PhilippLackner 2 жыл бұрын
Glad you enjoyed it
@gautamsharma7607
@gautamsharma7607 2 жыл бұрын
thanku so much
@chanikafernando4928
@chanikafernando4928 2 жыл бұрын
Thank you for the cool video. I just encountered an issue after uograde to kotlin 1.6.10. i have fragments with tablayout and viewpager fragments. When i go to another screen and come back, it is not loading viewpager fragments. This happened after upgrading kotlin to 1.6.10. Do you have any idea why? Could you please help?
@MrOmsa12
@MrOmsa12 10 ай бұрын
I did as you did in the tutorial but i could not use freeMinSdk21DebugImplementation, for some reason it did not work for me.
@safionweb
@safionweb 2 жыл бұрын
Amazing
@footballCartoon91
@footballCartoon91 2 жыл бұрын
bro please help me my gradle wrapper build fails
@ff2x701
@ff2x701 Жыл бұрын
Thannkkk Yooouuuuu!!!!
@datel666
@datel666 2 жыл бұрын
Nice vid!
@AdityaMishra-cj7kt
@AdityaMishra-cj7kt Жыл бұрын
Awesome
@imnithish
@imnithish 2 жыл бұрын
🔥
@quantumgaming7
@quantumgaming7 2 жыл бұрын
It that course price really 28900 euros??
@quantumgaming7
@quantumgaming7 2 жыл бұрын
If it is in India it’s like 2.4 Millions an average person don’t even earn that much in there entire life 🌝
@WeslleyCampos-kw3pm
@WeslleyCampos-kw3pm Жыл бұрын
Clean Task is no longer necessary, it's default now.
@clerdsonjuca3823
@clerdsonjuca3823 2 жыл бұрын
thanks ,videos CI/CD
@kamertonaudiophileplayer847
@kamertonaudiophileplayer847 2 жыл бұрын
Awesome, more stupid system for building apps than Gradle I never met. Nice,that somebody tried to explain it.
@manishakamble7473
@manishakamble7473 4 ай бұрын
👍
@AnB-em9wo
@AnB-em9wo 10 ай бұрын
I recommend you upgrade your microphone. Sound quality on your channel is no good
How to Automate Tasks Using Gradle - Android Studio Tutorial
18:55
Philipp Lackner
Рет қаралды 27 М.
5 Fatal Coroutine Mistakes Nobody Tells You About
18:15
Philipp Lackner
Рет қаралды 88 М.
Will A Guitar Boat Hold My Weight?
00:20
MrBeast
Рет қаралды 274 МЛН
Un coup venu de l’espace 😂😂😂
00:19
Nicocapone
Рет қаралды 4,9 МЛН
pumpkins #shorts
00:39
Mr DegrEE
Рет қаралды 72 МЛН
Gradle Course for Beginners | Get Going with Gradle
56:59
Tom Gregory Tech
Рет қаралды 32 М.
What is the Context? - Android Basics 2023
11:22
Philipp Lackner
Рет қаралды 58 М.
Shrink, Optimize and Secure Your App With R8 & ProGuard - Full Guide
18:08
Gradle tutorial for complete beginners
24:48
Tom Gregory Tech
Рет қаралды 223 М.
The Most Important Design Pattern in React
35:04
Cosden Solutions
Рет қаралды 63 М.
Full Guide to Delegation in Kotlin  - Android Studio Tutorial
18:10
Philipp Lackner
Рет қаралды 69 М.
How Much FASTER Is Python 3.13 Without the GIL?
10:00
ArjanCodes
Рет қаралды 161 М.
How to wrap native libraries | Expo modules tutorial
29:26
ChatGPT-o1 Created A Programming Language...
19:45
Conner Ardman
Рет қаралды 78 М.
Will A Guitar Boat Hold My Weight?
00:20
MrBeast
Рет қаралды 274 МЛН