diff --git a/app/src/main/java/com/aurora/store/view/ui/details/AppDetailsActivity.kt b/app/src/main/java/com/aurora/store/view/ui/details/AppDetailsActivity.kt
index 708c4eef4..78e6c1d8e 100644
--- a/app/src/main/java/com/aurora/store/view/ui/details/AppDetailsActivity.kt
+++ b/app/src/main/java/com/aurora/store/view/ui/details/AppDetailsActivity.kt
@@ -33,6 +33,7 @@ import com.aurora.extensions.*
import com.aurora.gplayapi.data.models.App
import com.aurora.gplayapi.data.models.AuthData
import com.aurora.gplayapi.data.models.File
+import com.aurora.gplayapi.exceptions.ApiException
import com.aurora.gplayapi.helpers.AppDetailsHelper
import com.aurora.gplayapi.helpers.PurchaseHelper
import com.aurora.store.MainActivity
@@ -426,9 +427,30 @@ class AppDetailsActivity : BaseDetailsActivity() {
updateActionState(ActionButton.State.IDLE)
}
} failUi {
- expandBottomSheet(it.message)
updateActionState(ActionButton.State.IDLE)
- Log.e("Failed to purchase ${app.displayName} : ${it.message}")
+ var reason = "Unknown"
+
+ when (it) {
+ is ApiException.AppNotPurchased -> {
+ reason = getString(R.string.purchase_invalid)
+ }
+
+ is ApiException.AppNotFound -> {
+ reason = getString(R.string.purchase_not_found)
+ }
+
+ is ApiException.AppNotSupported -> {
+ reason = getString(R.string.purchase_unsupported)
+ }
+
+ is ApiException.EmptyDownloads -> {
+ reason = getString(R.string.purchase_no_file)
+ }
+ }
+
+ expandBottomSheet(reason)
+
+ Log.e("Failed to purchase ${app.displayName} : $reason")
}
}
@@ -456,7 +478,7 @@ class AppDetailsActivity : BaseDetailsActivity() {
}
} else {
updateActionState(ActionButton.State.IDLE)
- expandBottomSheet(getString(R.string.purchase_no_file))
+ expandBottomSheet(getString(R.string.purchase_session_expired))
}
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index cf2b80d7f..13985888a 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -306,7 +306,10 @@
"Download Failed"
"App not purchased"
+ "App not supported"
+ "App not found"
"Could not get files"
+ "Session expired, re-login to obtain new session."
"Make sure you re-login to apply the spoof"