Separates messages when product request fails + additional information

od
Laurent 6 years ago
parent 1fcea0946a
commit 374c65871c
  1. 6
      app/src/main/java/net/pokeranalytics/android/ui/fragment/SubscriptionFragment.kt
  2. 9
      app/src/main/java/net/pokeranalytics/android/util/billing/AppGuard.kt
  3. 3
      app/src/main/res/values-fr/strings.xml
  4. 3
      app/src/main/res/values/strings.xml

@ -56,14 +56,16 @@ class SubscriptionFragment : PokerAnalyticsFragment(), SkuDetailsResponseListene
val isConnected: Boolean = activeNetwork?.isConnected == true
if (!isConnected) {
Toast.makeText(requireContext(), R.string.billingclient_unavailable, Toast.LENGTH_LONG).show()
Toast.makeText(requireContext(), R.string.connection_unavailable, Toast.LENGTH_LONG).show()
return
}
this.showLoader(R.string.loading_please_wait)
if (!AppGuard.requestProducts(this)) {
this.hideLoader()
Toast.makeText(requireContext(), R.string.billingclient_unavailable, Toast.LENGTH_LONG).show()
var message = requireContext().getString(R.string.billing_client_unavailable)
message += " [code=${AppGuard.billingResponseCode}]"
Toast.makeText(requireContext(), message, Toast.LENGTH_LONG).show()
}
}

@ -44,6 +44,11 @@ object AppGuard : PurchasesUpdatedListener {
*/
private var billingClientAvailable: Boolean = false
/**
* The code of the billing request response
*/
var billingResponseCode: Int? = null
/**
* Returns the true state of the user's pro subscription
*/
@ -59,7 +64,7 @@ object AppGuard : PurchasesUpdatedListener {
if (this.endOfUse != null) return true
return if (BuildConfig.DEBUG) {
true
false //true
} else {
this._isProUser
}
@ -105,6 +110,8 @@ object AppGuard : PurchasesUpdatedListener {
billingClient.startConnection(object : BillingClientStateListener {
override fun onBillingSetupFinished(@BillingClient.BillingResponse billingResponseCode: Int) {
this@AppGuard.billingResponseCode = billingResponseCode
if (billingResponseCode == BillingClient.BillingResponse.OK) {
// The BillingClient is ready. You can query purchases here.
billingClientAvailable = true

@ -10,7 +10,8 @@
<string name="initial_value">Valeur initiale</string>
<string name="less_then_2_values_for_display">Il faut au moins deux valeurs pour afficher ce rapport!</string>
<string name="invalid_object">L\'objet est invalide</string>
<string name="billingclient_unavailable">Les services de paiement sont indisponibles. Veuillez vérifier votre connexion internet et réessayez plus tard.</string>
<string name="connection_unavailable">Il semblerait que vous n\'êtes pas connectés à Internet. Veuillez vérifier votre connexion et réessayez plus tard.</string>
<string name="billing_client_unavailable">Les services de paiement sont indisponibles. Veuillez réessayer plus tard ou contactez-nous.</string>
<string name="pro_upgrade">Devenez membre Pro</string>
<string name="pro_purchase">Passer Pro</string>
<string name="free_trial">d\'essai gratuit</string>

@ -11,7 +11,8 @@
<string name="initial_value">Initial Value</string>
<string name="less_then_2_values_for_display">Can\'t show because there is less than two values to display!</string>
<string name="invalid_object">The object you\'re trying to access is invalid</string>
<string name="billingclient_unavailable">The billing services are unavailable at the moment. Please check your internet connection and retry later.</string>
<string name="connection_unavailable">It appears that you are not connected at the moment. Please check your internet connection and retry later.</string>
<string name="billing_client_unavailable">The billing services are unavailable at the moment. Please retry later or contact us.</string>
<string name="pro_upgrade">Upgrade to Pro</string>
<string name="pro_purchase">Go Pro</string>
<string name="free_trial">free trial</string>

Loading…
Cancel
Save