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 - Наука та технологія
If only all tutorials were so well done. This is perfect.
Can u help me ?
Bro explained everything, thank you so much
Thanks for posting this tutorial 😍
Why you put ads on official tutorials?
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?
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"
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.
What if there is no 'Pub/Sub Admin' role in Google Cloud?
How can i notify payments in backend service ? Or i have to verify payments in our backend service.
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.
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.
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.
Does constant.dart have to be included in gitignore?
how to cancel the auto renewable subscriptions?
How can we enable the user to cancel their subscription?
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)
"API Access" is not visible in Google Play Console, anyone have any ideas?
You can link your cloud project under "App integrity" --> "Play Integrity API".
The best ever!
Useful links are not workign for me
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!
@@hunteraustin4522 It will be good experience for you to go through the code and debug the issues.
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
Hello
I help set up the monthly subscription package on my flutter . I will pay for that .
Thank
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.
Through App Store/Google play
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?
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)
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.
It is under "General" and then under "App Information". It has moved since.
Field '_instance' should be initialized because its type 'StoreConfig' doesn't allow null.
Is there a fix for that?
add late to prefix
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 ?
No 1 answers from him below , will "copy pust" video from other chanal .... rewriter
app specific shared secret moved to "general > app info"
Does anyone know of any flutter iap packages that actually work?
RevenueCat works very well
What happens if I have multiple entitlements in my app?
you only provide 'premium'
if you want to make a new video it would be nice to add "sharedpreference"
or Hive
This tutorial is outdated, the role "Monitoring Viewer" for example, doesn't exist anymore
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()?
Yeahh skipped the last 3 Minutes. Got Rejected because i didn't have a Restore Button. Nice :)
I want to give one month free trial for fresh users. Is it possible to set these configuration from revenuecat?
Were you able to add a free trial?
Hello, please tell me in Russia there will be monthly payments?
Brother this is dependant on policies by Google and Apple . Maybe RevenueCat have additional information about this on their website.
are u 1Man startup ?
I managed to make it work, but it took some work because it was a little outdated
Which steps were outdated?
@@RevenueCat null safety
@@thiagomiranda6753 Thanks! We'll get that updated
Any updates on this?
@@RevenueCat Any update on this?
Does this tutorial work well in 2024 too?? Please respond ASAP.
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
AppStore connect has changed, would be nice to have an update or some description on how to do that. @@RevenueCat
@@RevenueCat Ok thanks, I will look into it.
Biggest pain in the ass ever. Solution: Create new app with subscription, direct users towards it fixed
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!