diff options
author | Torsten Grote <t@grobox.de> | 2020-08-05 14:31:10 -0300 |
---|---|---|
committer | Torsten Grote <t@grobox.de> | 2020-08-05 14:31:10 -0300 |
commit | b1acd03f70a33f069a321c6755943421330d2d8d (patch) | |
tree | 44a4775ab769a8686e16338c1a7eeefe704d8e14 /wallet/src/main/java/net/taler/wallet/Utils.kt | |
parent | 35f7ed512ed7445362d6caee1bf60441f4ce979e (diff) | |
download | taler-android-b1acd03f70a33f069a321c6755943421330d2d8d.tar.gz taler-android-b1acd03f70a33f069a321c6755943421330d2d8d.tar.bz2 taler-android-b1acd03f70a33f069a321c6755943421330d2d8d.zip |
[wallet] show more user-friendly error messages for operations
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/Utils.kt')
-rw-r--r-- | wallet/src/main/java/net/taler/wallet/Utils.kt | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/Utils.kt b/wallet/src/main/java/net/taler/wallet/Utils.kt index e299245..ea01552 100644 --- a/wallet/src/main/java/net/taler/wallet/Utils.kt +++ b/wallet/src/main/java/net/taler/wallet/Utils.kt @@ -30,6 +30,7 @@ import android.widget.Toast import android.widget.Toast.LENGTH_LONG import androidx.annotation.RequiresApi import com.google.zxing.integration.android.IntentIntegrator +import org.json.JSONObject fun scanQrCode(activity: Activity) { IntentIntegrator(activity).apply { @@ -90,6 +91,22 @@ private fun connectToWifiDeprecated(context: Context, ssid: String) { } } +fun getErrorString(json: JSONObject): String { + return StringBuilder().apply { + append(json.getString("talerErrorCode")) + append(" ") + append(json.getString("message")) + json.optJSONObject("details")?.let { details -> + details.optJSONObject("errorResponse")?.let { errorResponse -> + append("\n\n") + append(errorResponse.optString("code")) + append(" ") + append(errorResponse.optString("hint")) + } + } + }.toString() +} + fun cleanExchange(exchange: String) = exchange.let { if (it.startsWith("https://")) it.substring(8) else it }.trimEnd('/') |