Flutter In-App Subscription Tutorial (iOS and Android)

Поділитися
Вставка
  • Опубліковано 21 лип 2024
  • In this complete guide to setting up Flutter subscriptions, you’ll learn how to configure monthly and yearly subscriptions for a Flutter app. We’ll cover how to configure subscriptions for both iOS and Android using RevenueCat.
    One huge benefit of using RevenueCat is that it acts as a single source of truth for a user subscription status. You also don’t need to worry about validating purchases or managing servers - which can become tedious and complex.
    Useful Links:
    Complete code on GitHub: github.com/RevenueCat/purchas...
    Configure your app in App Store Connect: www.revenuecat.com/docs/ios-p...
    Configure your app in Google Play Store: www.revenuecat.com/docs/andro...
    Creating test user iOS: www.revenuecat.com/docs/apple...
    Creating test user Android: www.revenuecat.com/docs/googl...
    Chapters:
    0:00 - Intro
    0:27 - Project setup
    2:19 - Configure RevenueCat
    4:23 - Connect to App Store Connect
    6:31 - Connect to Play Store
    11:31 - Add Products to RevenueCat
    16:33 - Testing on iOS
    20:50 - Testing on Android
    22:58 - Applying the sample app to your own app
    30:10 - Restoring purchases
    #flutter
  • Наука та технологія

КОМЕНТАРІ • 72

  • @KeithSheppard
    @KeithSheppard Рік тому +15

    If only all tutorials were so well done. This is perfect.

  • @armagan_gok
    @armagan_gok Місяць тому +1

    Bro explained everything, thank you so much

  • @moonalie262
    @moonalie262 Рік тому +2

    Thanks for posting this tutorial 😍

  • @Xynic48
    @Xynic48 4 місяці тому +1

    Why you put ads on official tutorials?

  • @ukbloke5740
    @ukbloke5740 Рік тому +1

    Is 'restore purchases' actually relevant to subscriptions or just 'consumables' ?
    The app stores will know who I am by my identity and will track my subscription accordingly but they won't know if I've spent (for example) in-app currency?

  • @zakblacki
    @zakblacki Рік тому

    Is it mandatory to fill out agreements tax and banking for paid apps in order to use IAP? I mean does the status has to be "active"

  • @ivanogarcia9554
    @ivanogarcia9554 4 місяці тому

    Thanks for your video. I have an issue when I’m trying to test in a physical iPhone. I’m getting a gray screen. I read that it’s possible because the subscription created in the apple is not approved. But my problem is that Apple can approve my subscription because when they are testing the app the gray screen is visible. Do you have any idea how I can fix or what’s the correct flow. Thanks a lot for your support.

  • @annam5302
    @annam5302 Рік тому +4

    What if there is no 'Pub/Sub Admin' role in Google Cloud?

  • @tuvshinturmanlaibaatar6487
    @tuvshinturmanlaibaatar6487 7 місяців тому

    How can i notify payments in backend service ? Or i have to verify payments in our backend service.

  • @edilsondev
    @edilsondev 9 місяців тому +1

    Can see anything in "API Access" with account owner. It seems outdated.
    "The API access page has gone away"
    "Use Google Play Developer API to publish and manage your apps ...."
    when trying importing we get: We even have gone to user and permission directly and setup the permission for our user created related the credentials JSON mentioned before.

  • @africulture9960
    @africulture9960 Рік тому

    I created an account with Revenuecat and configured my app for in-app subscription. Months later I couldn't login to my Revenuecat. So I created another and configured the same app, but I am having invalid credential error and I have also tried all the possible solutions. Please I need help.

  • @jemmytech5474
    @jemmytech5474 4 місяці тому

    Hello!
    Sir we have two subscriptions in a single group. We give app user id as we have login system. So the issue is that it is working well but we need the following:
    1. User want to upgrade from PRO to ELITE within the app. mean changing subscription plans within the app. Please guide me how to do it.

  • @brawlboy1382
    @brawlboy1382 3 місяці тому

    Does constant.dart have to be included in gitignore?

  • @spectrum_tutorials_968
    @spectrum_tutorials_968 6 місяців тому +1

    how to cancel the auto renewable subscriptions?

  • @antyzzzz
    @antyzzzz 8 місяців тому +1

    How can we enable the user to cancel their subscription?

  • @thiagomiranda6753
    @thiagomiranda6753 7 місяців тому

    In my app, in the subscription options, the name of the App is displayed, does anyone know how to remove it?
    Premium Month (Magic Weather Premium)
    Premium Year (Magic Weather Premium)

  • @LukePighetti
    @LukePighetti 6 місяців тому +2

    "API Access" is not visible in Google Play Console, anyone have any ideas?

    • @abdullahchauhan
      @abdullahchauhan 5 місяців тому +1

      You can link your cloud project under "App integrity" --> "Play Integrity API".

  • @openmedschool3171
    @openmedschool3171 Рік тому

    The best ever!

  • @MikeJones3
    @MikeJones3 Рік тому

    Useful links are not workign for me

  • @pavsoor
    @pavsoor Рік тому +12

    Unless I'm mistaken, the sample project has old code which is not null safe, and quite long winded trying to use. I was expecting from a video 3 months ago, that the sample project would be updated code!

    • @thehumbleservant21
      @thehumbleservant21 Рік тому +2

      @@hunteraustin4522 It will be good experience for you to go through the code and debug the issues.

  • @brawlboy1382
    @brawlboy1382 3 місяці тому

    In real life, we don't need logging in/out, do we? We just choose a subscription package and pay for it. I don't understand it

  • @steveninfo2082
    @steveninfo2082 Рік тому +1

    Hello
    I help set up the monthly subscription package on my flutter . I will pay for that .
    Thank

  • @jaredalidjinou9908
    @jaredalidjinou9908 Рік тому

    Hi. When users payed their subscription or realised one time payments, how is it possible to configure a transfer of the ammount to a bank account such like stripe or others solutions do.

    • @rebinu
      @rebinu Рік тому +1

      Through App Store/Google play

  • @serious.194
    @serious.194 Рік тому

    Hi, I configured revenuecat, wrote the code, and tested it on the simulator, and real device and everything is working fine. But when I uploaded the build to test flight to test, I started getting empty offerings. Why is that? Do I need to follow some additional steps for prod build?

    • @edilsondev
      @edilsondev 11 місяців тому

      You might have to sign paid app agreement (apple). No need for any build to be sent to review (just fully configured, status ready to submit in each subscription)

  • @Just_JasonZA
    @Just_JasonZA 11 місяців тому +1

    Thank you for this, but a lot of the data discussed in this have changed, Appstore no longer have the option for app specific shared secret in plain sight and I can't find it.

    • @hanefightnow
      @hanefightnow 11 місяців тому +2

      It is under "General" and then under "App Information". It has moved since.

  • @LaurentiuSzabo
    @LaurentiuSzabo Рік тому +1

    Field '_instance' should be initialized because its type 'StoreConfig' doesn't allow null.
    Is there a fix for that?

    • @cihan1
      @cihan1 Рік тому

      add late to prefix

  • @ahmedosama6373
    @ahmedosama6373 9 місяців тому +1

    What happens if a user wants to change their subscription to yearly instead of monthly for example ? Would the old subscription be cancelled in favor of the new one or not ?

    • @faizulla5838
      @faizulla5838 8 місяців тому

      No 1 answers from him below , will "copy pust" video from other chanal .... rewriter

  • @caualeite3537
    @caualeite3537 Рік тому +1

    app specific shared secret moved to "general > app info"

  • @maroni305
    @maroni305 Рік тому +1

    Does anyone know of any flutter iap packages that actually work?

  • @user-lm3zh7lv7q
    @user-lm3zh7lv7q Рік тому

    What happens if I have multiple entitlements in my app?

  • @thiagomiranda6753
    @thiagomiranda6753 Рік тому +4

    if you want to make a new video it would be nice to add "sharedpreference"

  • @senor7857
    @senor7857 11 місяців тому +6

    This tutorial is outdated, the role "Monitoring Viewer" for example, doesn't exist anymore

  • @Yuraadmin
    @Yuraadmin Рік тому +1

    Tell me, can I transfer purchases to another device without logging in ('Enter App User ID')? If yes, what is better
    use (Flutter) on a new device, Purchases.restorePurchases() or Purchases.restoreTransactions()?

  • @LucaL1fe
    @LucaL1fe 2 місяці тому

    Yeahh skipped the last 3 Minutes. Got Rejected because i didn't have a Restore Button. Nice :)

  • @Nithinjith1988
    @Nithinjith1988 9 місяців тому

    I want to give one month free trial for fresh users. Is it possible to set these configuration from revenuecat?

    • @alpkarky3429
      @alpkarky3429 7 місяців тому

      Were you able to add a free trial?

  • @artem-ai
    @artem-ai Рік тому

    Hello, please tell me in Russia there will be monthly payments?

    • @thehumbleservant21
      @thehumbleservant21 Рік тому

      Brother this is dependant on policies by Google and Apple . Maybe RevenueCat have additional information about this on their website.

  • @dev.faizan
    @dev.faizan Рік тому

    are u 1Man startup ?

  • @thiagomiranda6753
    @thiagomiranda6753 Рік тому

    I managed to make it work, but it took some work because it was a little outdated

    • @RevenueCat
      @RevenueCat  Рік тому

      Which steps were outdated?

    • @thiagomiranda6753
      @thiagomiranda6753 Рік тому

      @@RevenueCat null safety

    • @RevenueCat
      @RevenueCat  Рік тому +2

      @@thiagomiranda6753 Thanks! We'll get that updated

    • @litfiles
      @litfiles Рік тому

      Any updates on this?

    • @awlad
      @awlad Рік тому

      @@RevenueCat Any update on this?

  • @SamuelMinale21
    @SamuelMinale21 6 місяців тому

    Does this tutorial work well in 2024 too?? Please respond ASAP.

    • @RevenueCat
      @RevenueCat  5 місяців тому +1

      It should still be accurate, although we now support RevenueCat Paywalls in Flutter which makes this even easier. The RevenueCat docs will reflect the most up to date information www.revenuecat.com/docs/getting-started/installation/flutter

    • @felixizarra8513
      @felixizarra8513 5 місяців тому

      AppStore connect has changed, would be nice to have an update or some description on how to do that. @@RevenueCat

    • @SamuelMinale21
      @SamuelMinale21 4 місяці тому

      @@RevenueCat Ok thanks, I will look into it.

  • @chris_james
    @chris_james Місяць тому

    Biggest pain in the ass ever. Solution: Create new app with subscription, direct users towards it fixed

  • @roneicouto
    @roneicouto Рік тому +1

    In ua-cam.com/video/31mM8ozGyE8/v-deo.html my offerings.current is always : The non-nullable local variable 'offerings' must be assigned before it can be used.
    Try giving it an initializer expression, or ensure that it's assigned on every execution path.
    And in my offerings.current : The non-nullable local variable 'offerings' must be assigned before it can be used.
    Try giving it an initializer expression, or ensure that it's assigned on every execution path.dartnot_assigned_potentially_non_nullable_local_variable
    The argument type 'Offering?' can't be assigned to the parameter type 'Offering'.dartargument_type_not_assignable
    Someone can help , please ? I'm stucked!