I have an application for different platforms. Let it be iOS, Android and Windows. To use the application, you need to pay a monthly fee, but you just need to pay to use all platforms. This is the same as with Spotify, therefore, by paying once, you can use each platform.
As recommended by Google and Apple, I have to offer an in-app purchase for a monthly fee. The system is connected to user accounts that are managed by a server that is under my control. I store user subscription data, so if a user uses In-App purchases in iOS, the information is transferred to the central server to unlock the Android application (in case it has already been paid on another platform)
The problem is the following scenario: The user has a valid subscription that was paid through Google Play. IOS and Windows apps are also unlocked. Now the user uninstalls the Android application, goes to the Google Play website and cancels the subscription. In the current scenario, I cannot detect this, and the subscription will be valid for all other platforms.
Question: Is there any pattern to get around this? Spotify and co also solve this problem, so there must be a solution for this
source share