I am using the plugin: In-App Purchase (IAP) 2: iOS, Android, Windows, macOS & Xbox Apps
I have trouble detecting the “Slow test card, declines after a few minutes” case when testing from an Android device.
My code has handlers for when product is loaded, approved, verified, cancelled, and error.
It is also catching errors after calling “order(product)”.
But in this particular case, none of the cancelled/error status is triggered. So I just leave the user with an endless loading screen.
Is there any special trick for noticing this case?
All the others seem to work fine (“card approves”, “card declines”, “slow card, approves after a few minutes”)
I don’t like the idea of adding some sort of timeout, since it doesn’t guarantee working every time, plus it could mess up with the “slow card, approves after a few minutes” case.
I’ve read some forums pointing that this may be a problem to be solved by Android, but there’s also not many people complaining which leads me to believe there might be a workaround to handle it.
My ionic info just in case:
Ionic CLI : 5.4.9
Ionic Framework : @ionic/angular 4.9.0
@angular-devkit/build-angular : 0.801.3
@angular-devkit/schematics : 8.1.3
@angular/cli : 8.1.3
@ionic/angular-toolkit : 2.0.0
Cordova CLI : 9.0.0 (firstname.lastname@example.org)
Cordova Platforms : android 8.1.0, ios 5.1.1
Cordova Plugins : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.1.1, (and 10 other plugins)
cordova-res : 0.10.0
native-run : 0.3.0
Android SDK Tools : 26.1.1 (C:—\tools_r25.2.3-windows)
NodeJS : v12.18.3 (C:\Program Files\nodejs\node.exe)
npm : 6.11.3
OS : Windows 10
And the devices I’m using to test have Android 7 and Android 11.