Philipp Lackner
Philipp Lackner
  • 922
  • 24 937 757
How to Share Resources in Compose Multiplatform - KMP for Beginners
In this video I'll show you how to share resources in Compose Multiplatform!
👉 Check out my course Building Industry-Level Multiplatform Apps With KMP here: pl-coding.com/kmp?
💻 Let me be your mentor and become an industry-ready Android developer in 10 weeks:
pl-coding.com/drop-table-mentoring?
⭐ Courses with real-life practices
⭐ Save countless hours of time
⭐ 100% money back guarantee for 30 days
⭐ Become a professional Android developer now:
pl-coding.com/premium-courses?
Get my FREE PDF about 20 things you should never do in Jetpack Compose:
pl-coding.com/jetpack-compose-mistakes?
Regular programming advice on my Instagram page: _philipplackner_
Join my Discord server:
discord.gg/cwQbmUstEu
Переглядів: 563

Відео

Expect/Actual in Kotlin Multiplatform - KMP for Beginners
Переглядів 5 тис.10 годин тому
In this video I'll show you how Expect/Actual in Kotlin Multiplatform works! 👉 Check out my course Building Industry-Level Multiplatform Apps With KMP here: pl-coding.com/kmp? 💻 Let me be your mentor and become an industry-ready Android developer in 10 weeks: pl-coding.com/drop-table-mentoring? ⭐ Courses with real-life practices ⭐ Save countless hours of time ⭐ 100% money back guarantee for 30 ...
Building Your First Compose Multiplatform Hello World App - KMP for Beginners
Переглядів 12 тис.20 годин тому
In this video you'll learn how you build you first Compose Multiplatform Hello World App! 👉 Check out my course Building Industry-Level Multiplatform Apps With KMP here: pl-coding.com/kmp? 💻 Let me be your mentor and become an industry-ready Android developer in 10 weeks: pl-coding.com/drop-table-mentoring? ⭐ Courses with real-life practices ⭐ Save countless hours of time ⭐ 100% money back guar...
What Is Kotlin Multiplatform And How Does It Work? - KMP for Beginners
Переглядів 22 тис.День тому
This is the first video of my new KMP Playlist! Here you'll learn what Kotlin Multiplatform is and how it works. 👉 Check out my course Building Industry-Level Multiplatform Apps With KMP here: pl-coding.com/kmp? 💻 Let me be your mentor and become an industry-ready Android developer in 10 weeks: pl-coding.com/drop-table-mentoring? ⭐ Courses with real-life practices ⭐ Save countless hours of time...
Why I Stopped Using popBackStack() to Navigate Back
Переглядів 13 тис.14 днів тому
In this video I'll show you why I stopped using popBackStack() to Navigate Back. 💻 Let me be your mentor and become an industry-ready Android developer in 10 weeks: pl-coding.com/drop-table-mentoring? ⭐ Courses with real-life practices ⭐ Save countless hours of time ⭐ 100% money back guarantee for 30 days ⭐ Become a professional Android developer now: pl-coding.com/premium-courses? Get my FREE ...
KMP vs. Flutter - Who Will Win The Cross-Platform Battle?
Переглядів 31 тис.14 днів тому
In this video I'll compare the two most viable cross-platform technologies for mobile developers in 2024. 👉 Check out my KMP course: pl-coding.com/kmp? 💻 Let me be your mentor and become an industry-ready Android developer in 10 weeks: pl-coding.com/drop-table-mentoring? ⭐ Courses with real-life practices ⭐ Save countless hours of time ⭐ 100% money back guarantee for 30 days ⭐ Become a professi...
Kotlin 2.0, Google IO, Android 15 and More - Philipp's Android News June 2024
Переглядів 25 тис.21 день тому
The hottest new sh*t of the Android world 😎 💻 Let me be your mentor and become an industry-ready Android developer in 10 weeks: pl-coding.com/drop-table-mentoring? ⭐ Courses with real-life practices ⭐ Save countless hours of time ⭐ 100% money back guarantee for 30 days ⭐ Become a professional Android developer now: pl-coding.com/premium-courses? Get my FREE PDF about 20 things you should never ...
Automatically Adjust Navigation Based On Screen Size With NavigationSuiteScaffold
Переглядів 9 тис.21 день тому
In this video I'll show you how to automatically adjust navigation based on screen size with NavigationSuiteScaffold! 💻 Let me be your mentor and become an industry-ready Android developer in 10 weeks: pl-coding.com/drop-table-mentoring? ⭐ Courses with real-life practices ⭐ Save countless hours of time ⭐ 100% money back guarantee for 30 days ⭐ Become a professional Android developer now: pl-cod...
List + Detail Screens Just Got SO MUCH Easier - NavigableListDetailPaneScaffold
Переглядів 11 тис.21 день тому
List Detail Screens Just Got SO MUCH Easier - NavigableListDetailPaneScaffold
Building an Android Video Calling App With the Stream SDK
Переглядів 11 тис.Місяць тому
Building an Android Video Calling App With the Stream SDK
How to Use the Google's New Screenshot Testing Framework for Compose
Переглядів 19 тис.Місяць тому
How to Use the Google's New Screenshot Testing Framework for Compose
How to Setup a Room DB for Kotlin Multiplatform Compose
Переглядів 9 тис.Місяць тому
How to Setup a Room DB for Kotlin Multiplatform Compose
Type-Safe Navigation with the OFFICIAL Compose Navigation Library
Переглядів 38 тис.Місяць тому
Type-Safe Navigation with the OFFICIAL Compose Navigation Library
How to Share ViewModels in Compose Multiplatform (with Dependency Injection!)
Переглядів 14 тис.Місяць тому
How to Share ViewModels in Compose Multiplatform (with Dependency Injection!)
I've Tested Android Studio's New Code Companion Gemini
Переглядів 20 тис.Місяць тому
I've Tested Android Studio's New Code Companion Gemini
How to Implement a Shared Element Transition In Jetpack Compose
Переглядів 13 тис.Місяць тому
How to Implement a Shared Element Transition In Jetpack Compose
💻 Code Companion AI for Android Studio, Shared Element Transitions & More - Android News 2024
Переглядів 15 тис.Місяць тому
💻 Code Companion AI for Android Studio, Shared Element Transitions & More - Android News 2024
Learn to Build a Multi-Module Running Tracker App + Wear OS App In My NEW Course
Переглядів 9 тис.Місяць тому
Learn to Build a Multi-Module Running Tracker App Wear OS App In My NEW Course
Why YOU Have the WRONG Focus as an Android Developer
Переглядів 18 тис.2 місяці тому
Why YOU Have the WRONG Focus as an Android Developer
I'm Coding for 13 Years to Find Out About THIS
Переглядів 11 тис.2 місяці тому
I'm Coding for 13 Years to Find Out About THIS
MVVM vs. MVI - Understand the Difference Once and for All
Переглядів 31 тис.2 місяці тому
MVVM vs. MVI - Understand the Difference Once and for All
The ONLY Thing to MASTER as an Android Developer (And Why 99% FAIL!)
Переглядів 20 тис.2 місяці тому
The ONLY Thing to MASTER as an Android Developer (And Why 99% FAIL!)
Does Native Android Development Have a Future?
Переглядів 48 тис.2 місяці тому
Does Native Android Development Have a Future?
Sealed Classes for UI State are an ANTI-PATTERN - Here's why!
Переглядів 19 тис.2 місяці тому
Sealed Classes for UI State are an ANTI-PATTERN - Here's why!
💻 Android Studio Iguana, Compose Multiplatform Changes & More - Philipp's Android News 2024
Переглядів 24 тис.2 місяці тому
💻 Android Studio Iguana, Compose Multiplatform Changes & More - Philipp's Android News 2024
DON'T Make This Clean Architecture Packaging Mistake
Переглядів 12 тис.2 місяці тому
DON'T Make This Clean Architecture Packaging Mistake
How to Implement a Pull-to-Refresh LazyColumn with Material3 in Android Studio
Переглядів 11 тис.2 місяці тому
How to Implement a Pull-to-Refresh LazyColumn with Material3 in Android Studio
If You're Making These 5 Use Case Mistakes, You Haven't Understood Clean Architecture
Переглядів 20 тис.3 місяці тому
If You're Making These 5 Use Case Mistakes, You Haven't Understood Clean Architecture
How to Implement Biometric Auth in Your Android App
Переглядів 14 тис.3 місяці тому
How to Implement Biometric Auth in Your Android App
This Is My FAVORITE Error Handling Class
Переглядів 26 тис.3 місяці тому
This Is My FAVORITE Error Handling Class

КОМЕНТАРІ

  • @IoannisAnifantakis
    @IoannisAnifantakis 3 години тому

    Hey Philipp! Are you planning on doing a Runique CMP premium course that contains all the treats combined like? Room, Compose Navigation, Ktor, Notifications, GPS, etc? Runique (not the wearable part) course but with as many google based libraries we all love that are now making it into KMP world like the new Navigation and Room. That would compare directly to the android course you have and would be a marvel as we would be able to see how many common parts can be used and how from a large app like Runique for which we already have a very good gasp about how to make.

    • @PhilippLackner
      @PhilippLackner 3 години тому

      Yes but not yet as it's not stable yet. Don't want it to be outdated in 2 months

  • @revs87
    @revs87 4 години тому

    Any idea how to share a mp4 file?

  • @tahersmc6558
    @tahersmc6558 4 години тому

    I suffer from a lack of resources, and the auxiliary libraries on KMP, unlike Flutter, are very rich I hope KMP grows quickly because I fell in love with it

  • @gloria3216
    @gloria3216 5 годин тому

    Mr. Poop 🥲😍

  • @Frozen_Priest
    @Frozen_Priest 5 годин тому

    First frame scared me)

  • @raza404y
    @raza404y 5 годин тому

    Right now things are looking a little bit messed up in kmp, looking difficult 😅

  • @oneclickmobiledevelopers7825
    @oneclickmobiledevelopers7825 5 годин тому

    Which theme you are using in the android studio, It's awsome..!

  • @zakariabouchantouf5141
    @zakariabouchantouf5141 5 годин тому

    Literally solved today's problem 😂❤

  • @SamuelStevens-ff7wn
    @SamuelStevens-ff7wn 5 годин тому

    I am just starting my journey and wondered if these tutorials are still valid to follow?I have found that following along as a beginner on these older versions of the IDE gets me lost because things are so different on the video to the new IDE.

    • @PhilippLackner
      @PhilippLackner 5 годин тому

      They are, existing language features don't change much. Regarding the IDE there can of course be some differences

    • @saxonmckenzie9260
      @saxonmckenzie9260 4 години тому

      ​@PhilippLackner Thank you so much. I'm going to binge your videos and try to get a grip on it. I haven't studied for a long time and it's a completely new concept to be but very interesting and I like the idea of being able to work remotely on projects. Thanks so much for all your content!!

  • @bitwisedevs469
    @bitwisedevs469 5 годин тому

    iOS support for SVG is way superior than Android, as well as their SF symbols. However this is good to have feature.Does this also work when using native UI framework on both platform such as view base and UIKit?

  • @MixwellSidechains
    @MixwellSidechains 5 годин тому

    Hi Phillip! I'm following this series closely, thanks for it. I'd like to contribute that to have the Desktop app run by clicking the run button you could: * Open the Run Configuration settings * Add a Shell configuration name it DesktopApp if you want * On the window set it to run the script from "text" not "From File" * Add those parameters "./gradlew run" and ensure that the absolute path of the configuration is the project folder * Save and run it as normal in the drop-down list. Hope it helps others. Maybe you can review that with others in the next video. I know you'll get what I mean. Thanks again for the videos. Can't wait for more.

  • @begalisydykov6404
    @begalisydykov6404 5 годин тому

    You can use gradle tasks to generate resources. I use following tasks to generate resources ./gradlew generateComposeResClass ./gradlew generateResourceAccessorsForCommonMain and you don't have to wait.

  • @alillolindo
    @alillolindo 5 годин тому

    could you make a tutorial on how to implement it in an jetpack compose app from the default navigation system?

  • @ganshakumari5196
    @ganshakumari5196 5 годин тому

    Can we use GraphQL instead of retrofit in this project?

  • @vishwam8632
    @vishwam8632 5 годин тому

    👍

  • @gerdsfargen6687
    @gerdsfargen6687 6 годин тому

    Hey...Phillipp video! To elaborae, Philipp, just so many thanks to you for all your invaluable android kotlin and KMP videos. Im way behind as Im still only a relatively new Android developer, but enjoying getting up to speed with it all. Youve done so much for the Android community. Thanks heaps. Nick.

  • @aboutthat9930
    @aboutthat9930 6 годин тому

    2nd comment

  • @RachealKloke
    @RachealKloke 6 годин тому

    Das Maß an Engagement ist hier erstklassig. Es ist klar, dass sich alle intensiv mit dem jeweiligen Thema beschäftigen.🍓

  • @2chotti
    @2chotti 8 годин тому

    How do we test it with Face id?

  • @virajbenade5572
    @virajbenade5572 9 годин тому

    dear phillip sir i kindly request you to make such short videos with other content it really helpful me sir

  • @peppermint362
    @peppermint362 10 годин тому

    The more I learn about Google, the more I hate them. I hope they are out of business one day.

  • @2chotti
    @2chotti 10 годин тому

    Thank you. really helpful

  • @jordyetienne8109
    @jordyetienne8109 13 годин тому

    You got a new follower!

  • @Theo-os3zi
    @Theo-os3zi 14 годин тому

    Its been only 4 months and it's already changed, oh how I hate android...

  • @SharmaPros
    @SharmaPros 15 годин тому

    So what should we learn as I am good in compose and I am learning compose multi-platform what should I do sir.

  • @Kaiyes_
    @Kaiyes_ 16 годин тому

    so whats the difference between compose multiplatform vs kotlin multiplatform ?

  • @ekhiw
    @ekhiw 17 годин тому

    What about library? For example bluetooth or serial communication

  • @FabricioMTL
    @FabricioMTL 19 годин тому

    My question it is stable hot web use and for iOS I will use swift

  • @RonnyBubke
    @RonnyBubke 19 годин тому

    First of all the UseCase suffix is not necessary. Also capsuling a function into a class where no dependencies are needed is also not necessary. Makes it more complex. You should use operator function "invoke" if you need a class for injecting deps and name the class like a function (ValidateEmail). You can call the instance easily like a function ("validateEmail(...)"). Really good readable. Example 2 is wrong IMHO. There is no such thing like the representation layer and a dogmatic assignment. Historically the splitting of View and Logic (Presenter, VM, Controller) was because of testing issues. The View isn't really good testable because of the huge framework which it brings with it. Therefore ALL code, which is testable should be tested and the View should have as less conditions (logic) as possible. It was always the responsibility of the Presenter (VM, Controller) to map the Data from different sources into an format the View can understand (ViewState) and which needs no further mapping/conditions (if possible) to be able to test the logic. I recommend lectures from Kent Beck, Ian Cooper, Robert C Martin (Uncle Bob), Martin Fowler. With the abstractions you are absolutely right. The problem with testing use cases is explained by Ian Cooper (TDD, Where Did It All Go Wrong). You shouldn't test use cases. Test should never know them. Just call the public interface (for instance ViewModel - on...Clicked()) and check for the out coming ViewState. Only external dependencies like a Database or a Http-Layer (Retrofit) should be mocked. I personally use Koin as dependency framework, which allows to override dependencies. Perfect to replace a Retrofit datasource by a mocked one. Install the production Koin Module + Override definitions in the Test. E.g. in the Test you always test the full path and never call implementation details like Usecases or Repositories. Otherwise the Code isn't really tested and refactoring is mostly impossible. Watch Ian Cooper and try to understand him!!! A good indicator you do it wrong is when you use VisibleForTesting annotation. Testing in isolation doesn't mean to test the production classes independent of each other but running the Tests independent of each other ->> Kent Beck You think too much in Layers and belongings. These things are just there to bring order into the code. Technical depth is fine if you have a good feature test coverage. Spaghetti code is fine if your have a good test coverage. If you test like Kent Beck you can refactor each time and the test will tell you if your features are still work. Your code is frozen, when you test each class and it make zero sense. I hope this wasn't to offensive and will bring you to the next level. -> Watch Ian Cooper!!!

  • @WakeupDev.
    @WakeupDev. 22 години тому

    I actually prefer the idea of using SwiftUI and Compose for iOS and Android respectively

  • @architgoyal4u
    @architgoyal4u 23 години тому

    How tofind the remote jobs

  • @twokayoh9347
    @twokayoh9347 День тому

    Its been stable for years now

  • @monk3y206
    @monk3y206 День тому

    This is the issue I have with Azure ARM template. It always ONLY give me 1 error then exit and I need to retry every time until all errors are solved!! Run checks and give me all the errors at once pleaseeeeee This looks nice, but not user friendly. Capture all the fails and present them all to the user dammit

  • @tejashsingh2060
    @tejashsingh2060 День тому

    Any cross platform framework can't produce app with efficiency of native wheather it's kmp or flutter, if company requires efficient and scalable products it must be made using native languages and framework swift for ios and kotlin for android

  • @rolandringgenberg8501
    @rolandringgenberg8501 День тому

    Looked from the point of view of the "innovative" and next gen sutff (Web3 and beyond) it's a clear yes from me. This even includes the wasm targets. Having the maturity of Kotlin and JetBrains, combined with their "write ones, run anywhere" vision, and the level how far KMP (incl. Compose) came over the last years, it's a no-brainer for me. Yes there are Dragons, but hey, are they not always there some how? ;) You'll find a way to work around the gaps, your a Dev! (addressed to all, not neceserily Philipp :)

  • @way5063
    @way5063 День тому

    I am confused, I thought KMP and compose multiplatform they're the same thing

    • @_hudeifa23
      @_hudeifa23 День тому

      Compose multiplatform is when sharing ui and logic as well

  • @anudeepananth
    @anudeepananth День тому

    You should start learning compose multiplatform and build sample apps. It will be ready for production mid of 2025. For native Android (non iOS) devs who are serious about their apps running on iOS as well then you should learn swift and some basics of SwiftUI. ( As in build a simple native SwiftUI App without using KMP ) Even though Google has announced support for KMP. Firebase does not support KMP and libraries like ROOM, navigation, jetpack viewModel are still in alpha. And do remember that on iOS for background tasks( Android's equivalent of Work Manager ) cannot be written in Kotlin, it has to be written in Swift so you will still need some Swift skills. Swift is great its modern, easy to learn and concise ( not as enjoyable as Kotlin thou ). Jetbrains has full support for Kotlin to Objective C interop but not with Swift, I am guessing Kotlin Swift interop might be released end of 2025. ( After that there is no stopping KMP + CMP )

    • @_hudeifa23
      @_hudeifa23 День тому

      When it becomes ready and stable there is no need to learn flutter or react native as native developer right ?

    • @anudeepananth
      @anudeepananth День тому

      KMP is an alternative to flutter and react so you don't need to learn those... There will be some trade offs if you were to use (KMP+CMP) on iOS as oppossed to a native SwiftUI app, the trade offs in most cases should be minimal but I am keeping a close eye on the performance implications of SKIA (the UI rendering engine CMP uses to draw the UI on iOS) as flutter moved away from SKIA to impeller due to jank/slow start up times a year or so ago so it will be interesting to see if CMP is prone to the same perf issues since they are using an engine that flutter dumped

    • @_hudeifa23
      @_hudeifa23 23 години тому

      @@anudeepananth thanks I started learning android 5 months ago because my internship company want to build taxi app + ecommerce with compose multiplatform infact they already started it i met some difficult to understand the compose since I didn't master the basics of native development do you think I should master the native development first ?

    • @anudeepananth
      @anudeepananth 23 години тому

      @@_hudeifa23 Basics of iOS development will definitely help, the key concepts like networking, background, data persistence, combine framework and some basic swiftUI should do it.

    • @anudeepananth
      @anudeepananth 23 години тому

      @@_hudeifa23 On the android side definately learn jetpack compose since compose is basically jetpack compose tailored to work on other platforms as well, plenty of courses out there including a few created by our own Philip lackner

  • @mariondorsett
    @mariondorsett День тому

    It's four years later, and there is no activty_main.xml file :( Looks like it's now in the Kotlin code with an @Composable annotation....? It's so hard to get started because it's constantly changing....#endGripe

    • @mariondorsett
      @mariondorsett День тому

      To follow the tutorials in this play list you will need to select the Empty View Activity when creating your project. If you select the Empty Activity, you will get a different build type that doesn't use the XML file to build the views.

    • @PhilippLackner
      @PhilippLackner День тому

      The Playlist is quite old, start with this to learn the modern approach :) ua-cam.com/video/6_wK_Ud8--0/v-deo.htmlsi=2Mhg5aXW-0-mUwGz

    • @mariondorsett
      @mariondorsett 20 годин тому

      @@PhilippLackner Thank you for the reply, and the updated video. To clarify, my frustration wasn't aimed at you but the speed in which Android is changed. It feels like every 6 months it's a different beast.

  • @adrianikeaba
    @adrianikeaba День тому

    We use Compose Multiplatform at my job to develop applications for middle-sized companies and it works perfectly fine.

    • @_hudeifa23
      @_hudeifa23 День тому

      Did not you see any problems or drawbacks?

    • @daurenkassen5473
      @daurenkassen5473 День тому

      Did u publish it in production?

    • @adrianikeaba
      @adrianikeaba День тому

      @@daurenkassen5473 I believe they are in production, yes.

    • @adrianikeaba
      @adrianikeaba День тому

      @_hudeifa23 Of course, some unexpected bugs, especially on the iOS side. But we found workarounds for all of them.

  • @xacompany
    @xacompany День тому

    Is a good time to continue to learn, so when the right time arrives, knowledge and opportunity are going to meet! And that’s the key to success.

  • @fahadtahir6
    @fahadtahir6 День тому

    Hey Phillip, is it possible if we can convert CurrencyEvent sealed class into generic sealed class just like Resource for a bigger project. ua-cam.com/video/ct5etYgB5pQ/v-deo.html

  • @Beatris-xl3nc
    @Beatris-xl3nc День тому

    Die Vielfalt der hier vertretenen Hintergründe ist wirklich bemerkenswert. Es verleiht dem Gespräch eine enorme Fülle.💞

  • @fashionproducts88
    @fashionproducts88 День тому

    Hey I have a doubt I purchased Google console in 2022 do I need 20 testers to publish app now since I published an app in 2022

    • @name1566
      @name1566 День тому

      No

    • @zidan6900
      @zidan6900 День тому

      Nope

    • @name1566
      @name1566 День тому

      If you want to sell your account then please contact

  • @abdelrahmankhaled7575
    @abdelrahmankhaled7575 День тому

    Yes!, U should at least start learning it nowadays and build sample apps

  • @abeehaturi650
    @abeehaturi650 День тому

    Thank you so much for your videos. There's one question though, how can I make the borders of the image round?

  • @user-hg7qw3pl7o
    @user-hg7qw3pl7o День тому

    Just installed hackintosh to follow this!

  • @FessNiklas1987
    @FessNiklas1987 День тому

    Дерганный какой-то