![Mirzamehdi Karimov Profile](https://pbs.twimg.com/profile_images/1665474805917704192/nVv9tpJJ_x96.jpg)
Mirzamehdi Karimov
@mirze_mehdi
Followers
122
Following
243
Statuses
360
Android Developer Building https://t.co/ZzGkK4S09T (Kotlin Multiplatform boilerplate code) to launch mobile apps less than a week) π±β‘
Budapest, Hungary
Joined May 2023
#AppBuilder is now live, and Iβve called it @KAppMaker! ππIn just 5 minutes, you will have both Android and iOS apps ready! Iβm offering 70% OFF($139 off) only to the first 70 customers. Use promo code LAUNCH70 at checkout to claim your discount! π
1
2
4
@filippkowalski But still thinking what if that customer id somehow "leaked" and it is worse that now every user can have access to free feature, that was worse than "storing and checking locally only" case
1
0
0
@filippkowalski that's why I always check "user has premium access" on server side as well, and except auth I can't find a good solution. Some people suggested to send RevenueCat anonymous customer id to server and check there.
0
0
0
@filippkowalski obviously it is not an easy thing to change for average user, but if just one person modifies app, that's already compromising for "free access to premium features"
0
0
0
@filippkowalski the thing about storing locally, it can be manipulated. but looks like that's the trade off that I have to go
0
0
0
@filippkowalski What about for credit based things? (or some kind of coin pack) Also how would you approach checking user's has premium access on the server side? (this was especially case on android side, so there used to be a lot of "mod apps" that was checking only in client side
1
0
0
@VivienMahe this is one of videos that I saved to use next time. Maybe helped you too
1
0
1
@jackfriks Why not? Let's try, I am in πͺ. Now I know that this time I had to focus on marketing thing more
0
0
1
@filippkowalski Next thing will be: " - Why you deleted your account? - Well, I thought, if I try to delete my account, I'll get 50% discount :D "
0
0
1
@arkann1985 My understanding is that emitter function also had to set value in Dispatchers.Main.immediate context as well
1
0
0