aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt')
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt19
1 files changed, 12 insertions, 7 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt b/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt
index 964e771c..669b2c9e 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt
@@ -158,13 +158,18 @@ private fun SettingsActivity.finishRestore(snackbar: Snackbar, hasPro: Boolean)
*/
fun Activity.validatePro() {
L.d("Play Store Validate pro")
- getInventory(Prefs.pro, false, { if (Prefs.pro) playStoreNoLongerPro() }) {
- inv, helper ->
- val proSku = inv.hasPurchase(FROST_PRO)
- L.d("Play Store Validation finished: ${Prefs.pro} should be $proSku")
- if (!proSku && Prefs.pro) playStoreNoLongerPro()
- else if (proSku && !Prefs.pro) playStoreFoundPro()
- helper.disposeWhenFinished()
+ try {
+ getInventory(Prefs.pro, false, { if (Prefs.pro) playStoreNoLongerPro() }) {
+ inv, helper ->
+ val proSku = inv.hasPurchase(FROST_PRO)
+ L.d("Play Store Validation finished: ${Prefs.pro} should be $proSku")
+ if (!proSku && Prefs.pro) playStoreNoLongerPro()
+ else if (proSku && !Prefs.pro) playStoreFoundPro()
+ IAB.dispose(helper)
+ }
+ } catch (e: Exception) {
+ L.e(e, "Play store validation exception")
+ IAB.dispose()
}
}