How to Use the Google Play In-App Update API | Android Studio Tutorial

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 ก.ย. 2024
  • In this video you'll learn how you can make use of the Google Play In-App Update API to let your users update your app on the fly.
    ⭐ Learn professional CI/CD for Android here:
    pl-coding.com/...
    💻 Let me be your mentor and become an industry-ready Android developer in 10 weeks:
    pl-coding.com/...
    Get my FREE PDF about 20 things you should never do in Jetpack Compose:
    pl-coding.com/...
    Join this channel to get access to perks:
    / @philipplackner
    Join my Discord server:
    / discord
    Regular programming advice on my Instagram page: / _philipplackner_
    Checkout my GitHub: github.com/phi...
    You like my free content? Here you can buy me a coffee:
    www.buymeacoff...

ความคิดเห็น • 99

  • @ViniciusVieira13
    @ViniciusVieira13 ปีที่แล้ว +17

    I can see you put on a lot of effort into that video. Thank you so much

  • @mikeshilovski1512
    @mikeshilovski1512 ปีที่แล้ว +10

    There's an easier way to test it. If your app is already in the play market, just hardcore a lower build version and build release variant. It should show the dialog.

    • @heshamfas7353
      @heshamfas7353 6 หลายเดือนก่อน +1

      That will not work. You'll get an error "App is not owned by any user on this device......."

    • @mikeshilovski1512
      @mikeshilovski1512 6 หลายเดือนก่อน

      @@heshamfas7353 I have already done it at work, this works

  • @ytheekshana
    @ytheekshana ปีที่แล้ว +3

    Please create a new video of this with the new ActivityResultLauncher

  • @riverboatgambler3401
    @riverboatgambler3401 ปีที่แล้ว +4

    Absolutely amazing tutorial. Such a relief from some of the other garbage that is found on TH-cam. Now, I'm a "subscriber for life". Update management has been a real challenge for me, but this video helped me to better understand the workflow and get things working elegantly. I definitely plan to watch all other videos you've posted or will post. One of the biggest takeaways for me was related to testing this feature. I had never picked up that it was necessary to hit the Internal Shared App link to the subsequent "update" release in order to ensure the installed app recognized that an update existed. That was huge for me! Thank you!
    Suggestion: I may have missed it, but it would be extremely handy if the source code from the video(s) was made accessible as a download.
    Observation: I've had a couple of situations where the Internal Shared App link didn't want to load. It would appear that there are some latency issues between the time that the release gets uploaded and it's truly available. I find if I wait about 1-2 minutes to incorporate a new upload into the testing process, everything works seamlessly.
    Thanks again. You're a great speaker and a great instructor. You speak clearly and intelligently and I appreciate that there isn't a lot of extraneous music/background noise. Kudos to you! It's nice to find someone who really knows what he's talking about.

  • @mhmdawad001
    @mhmdawad001 ปีที่แล้ว +3

    Always comes at the right time! But I have a question here, Is it applicable to change the update type from console instead the app code? I mean what if I have a bug and need users to immediately update but the last build I shared is a flexible update?

    • @furkanbozkurt836
      @furkanbozkurt836 11 หลายเดือนก่อน

      you can use firebase remote config

  • @francisco.montero
    @francisco.montero ปีที่แล้ว +4

    Everytime i need to do a specific thing it turns out that you just published a new video about it a few days ago.
    I like your videos because you provide updated examples about these topics, thats why i also get your courses

  • @OmarAhmed-jo1cf
    @OmarAhmed-jo1cf 5 หลายเดือนก่อน

    in the flex dialog if you go to the background then the download is finished then you come back to the app the download doesn't complete

  • @arturmenter1431
    @arturmenter1431 ปีที่แล้ว +2

    ​ @PhilippLackner 12:50 shared email

  • @MIISohag
    @MIISohag ปีที่แล้ว +1

    Hey philipp Thanks for this wonderfull tutorial.
    I have an query as we see onActivityResult deprecated is there any other way to do this process ???

  • @srabbijan
    @srabbijan ปีที่แล้ว +1

    I maintain a custom API for app updates are available or not. This video released this type of maintenance action. This video is very effective. Make more videos on unique and effective topics.

  • @nagaisk3820
    @nagaisk3820 6 หลายเดือนก่อน

    When will we be receiving Either Flexible Or Intermediate ? What triggers this action

  • @jaygitonga2026
    @jaygitonga2026 ปีที่แล้ว +3

    Phillip never misses! Comes in clutch all the time!

  • @OmarAhmed-jo1cf
    @OmarAhmed-jo1cf 5 หลายเดือนก่อน

    for some reason the app-icon on the left after flex dialog downloads doesn't appear in my case

  • @francisyousefagawin7535
    @francisyousefagawin7535 ปีที่แล้ว

    Does this work for apps that are published in Huawei App Gallery or devices without Google Mobile Services?

  • @StrikWolf
    @StrikWolf 5 หลายเดือนก่อน

    Thank you so much mi brother 😎. Sempre me ajudando, mesmo não entendo muito pouco de English, eu ativo as legendas e até a explicação consigo entender bem, se não, acompanho o tutorial e faço igual. Ótima explicação, + 1 Like. (Greetings from Brazil 🇧🇷)

  • @ranbirsharma6067
    @ranbirsharma6067 ปีที่แล้ว +5

    Hi, Can you make a video for how we can set In-app update priority whether it's flexible or Immediate from Google developer API? I did a little RND on it like we need Google developer API and we have to mention app accessToken from play console, EditId, and update type(FLEXIBLE or IMMEDIATE) but didn't get it completly. So, can you help? Thanks.

    • @jamili1983.android
      @jamili1983.android 8 หลายเดือนก่อน

      I am also looking for the same..Please share here if you find

    • @oppenheimer_td
      @oppenheimer_td 6 หลายเดือนก่อน

      Have you found any way to set update priority. I am facing the same problem the popup is not comming.

  • @setteroid
    @setteroid ปีที่แล้ว

    Phillip please make video about KotlinDL in Android

  • @lindaporsius
    @lindaporsius ปีที่แล้ว

    Thank you Phillip! This is something I want to implement right away in my code. Could I ask you something else? Android Studio Flamengo is now declared stable. It seems to have a lot of impact. Could you please shed a light on that? I would be ever so grateful, thank you.

  • @Bhavdip2023
    @Bhavdip2023 10 หลายเดือนก่อน

    Hi @Philipp, You are explaning very well in details. I am having one question.
    Can we totally remove app from internal testing and closed testing?

  • @suhaibkazi7
    @suhaibkazi7 ปีที่แล้ว

    Video pops up exactly when i begin implementing this for my app. TIMING THO

  • @cnukal3904
    @cnukal3904 ปีที่แล้ว

    Hi @Phillip can you please make a videos on Android asset play delivery with cloud storage. Thankyou.

  • @amitray769
    @amitray769 3 หลายเดือนก่อน

    This is a complete guid to in app update thanks man. My question is where should we place the in app update checking code in the Application class or in the main activity of the app?

  • @royabhriya
    @royabhriya 10 หลายเดือนก่อน

    After installing the update, the app is not relaunching. What could be the reason?

  • @MobileAppMentor
    @MobileAppMentor ปีที่แล้ว

    Thanks bro. May I know which Android version you have tested. For me, it displays the flexible In-App update at the bottom not in the center.

  • @yugadevan8057
    @yugadevan8057 8 หลายเดือนก่อน

    Could anyone please tell if i already have a app in playstore is it possible to test with downgrading the version and signing the app and directly installing in device ??

  • @abdullahkardas8887
    @abdullahkardas8887 10 หลายเดือนก่อน

    Android In app update immediate update is cancelable so I think it is not convenient if we want to user required to update app

  • @mediad4162
    @mediad4162 ปีที่แล้ว

    One doubt please clear...
    Is it a good practice after new update installation done then we should logout the user and prompt re login again?

  • @silientlips
    @silientlips ปีที่แล้ว

    Hi Philipp,
    I learned a lot from
    your TH-cam channel. May I know the specifications of your machine or MacBook that you are using? Android and IOS development are RAM eaters. I am planning to buy a Mac machine soon. Can you include the specifications of the machine that you are using in the description?
    Thank you.

  • @hajerprzodowy133
    @hajerprzodowy133 ปีที่แล้ว

    Ok, but how to handle FLEXIBLE update?

  • @armaanmollah6002
    @armaanmollah6002 ปีที่แล้ว

    How would you implement an auto lock functionality in jetpack compose where you use multiple composables? Would you use the onUserInteraction in the base activity of the application and run a loop for the lock out time of the app and launch the lock screen if completed without user interaction or would you use another way?

  • @anandakumarakr1665
    @anandakumarakr1665 7 หลายเดือนก่อน

    Nice Explanation... Thank you so much

  • @michaelk7942
    @michaelk7942 8 หลายเดือนก่อน

    Hey Philipp thanks for the video, all very clear. The issue however is that I (and I presume many others) do not know how to actually publish the app releases in a way so that the priority is considered and the in-app update notification gets shown for production apps. If I understood it correctly, it needs to be done with the Google Cloud Console. Any chance that you can add a video showing how it is done? Google's documentation on this is not helpful, and I am sure it will be helpful for many!

    • @jamili1983.android
      @jamili1983.android 8 หลายเดือนก่อน

      I am also looking for the same..Hey Philipp please share video if you have

    • @oppenheimer_td
      @oppenheimer_td 6 หลายเดือนก่อน

      Have you found any way to set update priority. I am facing the same problem the popup is not comming.

  • @nurinwonderland
    @nurinwonderland 8 หลายเดือนก่อน

    Thank you Philipp espicially for testing part

  • @islamicfootprints1938
    @islamicfootprints1938 5 หลายเดือนก่อน

    Thanks lots

  • @ghdocco
    @ghdocco 10 หลายเดือนก่อน

    deprecated

  • @amilcar2406
    @amilcar2406 ปีที่แล้ว

    thank you so much from argentina. You are the best Philipp !!!

  • @nurtorekelesov4286
    @nurtorekelesov4286 3 หลายเดือนก่อน

    This was very useful thank you!

  • @gregas3068
    @gregas3068 ปีที่แล้ว

    Nice tut, as always. However, at the Google Play Console, I don't know why someone would use Internal sharing as opposed as Interntal Testing. If someone can explain why you use that, would appreciate. Was having issues (meaning I could not upload bundle in Internal app sharing). I got an error and couldn't upload it there. However, I am uploading apk bundlesto INternal sharing, and it works fine there. I hope it will work in production as well, since I haven't publish there yet.

  • @KotlinBek
    @KotlinBek ปีที่แล้ว

    You are the best, I mean it bro

  • @MenaSamer
    @MenaSamer ปีที่แล้ว

    It was really cool as expected ... thanks

  • @andongwisyemwamengo5699
    @andongwisyemwamengo5699 ปีที่แล้ว

    You saved my day thank you for sharing this useful content

  • @jobgetabu5892
    @jobgetabu5892 ปีที่แล้ว

    Great content Philipp. I am trying to purchase the PL bundle. How do I access ? it after purchase is done ?

    • @PhilippLackner
      @PhilippLackner  ปีที่แล้ว +1

      After purchase you'll get an email with all other instructions. The courses are hosted on elopage.com :)

  • @samsammaniamantap
    @samsammaniamantap ปีที่แล้ว

    this is what I'm looking for. The easier version of in app update tutorial. Thanks Philipp

  • @Another0neTime
    @Another0neTime ปีที่แล้ว

    Exactly what I was looking for.

  • @kios1973
    @kios1973 ปีที่แล้ว

    this was a really well done tutorial, easy and str8 forward, appriciated

  • @rpitpatel1004
    @rpitpatel1004 ปีที่แล้ว

    Great explanation @Philipp and thank you for your effort. Is there any functionality in that we can check min version supported on that update ? What kind of info we can get from that API ?

    • @vladimirrozin713
      @vladimirrozin713 ปีที่แล้ว

      I think, it would be up to you to determine if the current update is the "breaking changes". You might want to use firebase remote config to store the app version.

  • @thanuj_
    @thanuj_ 9 หลายเดือนก่อน

    How to being two apps into one app

  • @shadirvanislive
    @shadirvanislive ปีที่แล้ว

    How do i do this in flutter

  • @ibrahimkhalilshakir2414
    @ibrahimkhalilshakir2414 ปีที่แล้ว

    Owo. Nice topic😊. Thank you man.

  • @nizamuddinahmed9165
    @nizamuddinahmed9165 ปีที่แล้ว

    Nyc one.....Looking forward for more

  • @mehmetpeker9047
    @mehmetpeker9047 ปีที่แล้ว +1

    How we can set update priority?

    • @ChrisAthanas
      @ChrisAthanas ปีที่แล้ว

      He shows you, it’s in the code

    • @mehmetpeker9047
      @mehmetpeker9047 ปีที่แล้ว

      @@ChrisAthanas What section was it on, I didn't see it?

    • @mehmetpeker9047
      @mehmetpeker9047 ปีที่แล้ว

      @@ChrisAthanas can you help me? 😀

    • @ChrisAthanas
      @ChrisAthanas ปีที่แล้ว

      @@mehmetpeker9047 watch it again and also google

    • @mehmetpeker9047
      @mehmetpeker9047 ปีที่แล้ว +2

      @@ChrisAthanas There is no such content in this video and google.For example, I want to set the update priority as 3, how can I do this?

  • @USS_Daedalus
    @USS_Daedalus ปีที่แล้ว

    Hero

  • @yadavramkesh9
    @yadavramkesh9 8 หลายเดือนก่อน

    Nice and Updated Video.

  • @emwagner
    @emwagner ปีที่แล้ว

    What about on iOS?

  • @freshtechtips
    @freshtechtips ปีที่แล้ว

    Why did you not use coroutines? So await for the task, there is jetbrains dependency that support the task class

    • @raheemadamboev
      @raheemadamboev ปีที่แล้ว

      cuz we don't care about the result

    • @freshtechtips
      @freshtechtips ปีที่แล้ว

      @@raheemadamboev What if we do? this library will help "org.jetbrains.kotlinx:kotlinx-coroutines-play-services:1.6.4"

  • @MrFilo122
    @MrFilo122 ปีที่แล้ว

    Thanks for the video.
    I just wonder, since you're using the ktx version of this library, why you're not using the built-in Coroutines and Flow support that's available there?
    You could then get rid of all those old-school listeners and just have all the App Update logic in 1 reactive stream.

    • @aplikasisimulaskredit
      @aplikasisimulaskredit ปีที่แล้ว

      😮😊😢😮😮

    • @bernardomesk
      @bernardomesk 10 หลายเดือนก่อน

      Can you do a video tutorial showing us how to do that?

  • @4ytonly
    @4ytonly ปีที่แล้ว

    What are those annotations new* and Philip Lackner* ???

    • @DonMarv00
      @DonMarv00 ปีที่แล้ว +2

      it's from git, it shows who wrote the exact code

    • @DonMarv00
      @DonMarv00 ปีที่แล้ว +1

      new* are probably the changes since the last pull from git

    • @4ytonly
      @4ytonly ปีที่แล้ว

      @@DonMarv00 Yes, I kinda figured that's the case, I asked the wrong question. How do you enable that, and can you use that version control offline?

    • @osisuper98
      @osisuper98 ปีที่แล้ว

      @@4ytonlyupdate to the latest Android Studio version (Electric Eel or Flamingo)

  • @newbnda7234
    @newbnda7234 ปีที่แล้ว

    Great Video as always

  • @unaisulhadi9102
    @unaisulhadi9102 ปีที่แล้ว

    Informative

  • @manshalkhatri9289
    @manshalkhatri9289 ปีที่แล้ว

    Thanks Philip

  • @thencode8403
    @thencode8403 ปีที่แล้ว

    Sweet just what I was looking for ❤

  • @TheZaurHasanov
    @TheZaurHasanov ปีที่แล้ว

    thanks!

  • @quantumgaming7
    @quantumgaming7 ปีที่แล้ว

    Great video

  • @Rajmanov
    @Rajmanov ปีที่แล้ว +2

    I have seen some apps doing it and after a while, they remove this feature because it is buggy and has different results for the same contexts.

    • @ChrisAthanas
      @ChrisAthanas ปีที่แล้ว +1

      Any specific details or resources on this?

    • @sebastianseno9285
      @sebastianseno9285 ปีที่แล้ว +1

      my apps running well with this library.

  • @mkjvd
    @mkjvd ปีที่แล้ว

    cool