1.0.3: Fixed iOS confirmation flow. Refactored TokenizationResult, now it's have SuccessTokenizationResult, ErrorTokenizationResult and CanceledTokenizationResult versions.
This commit is contained in:
+1
@@ -6,6 +6,7 @@ import ru.yoomoney.sdk.kassa.payments.checkoutParameters.PaymentMethodType
|
||||
|
||||
fun TokenizationResult.toJson(): String {
|
||||
val json = JSONObject()
|
||||
json.put("status", "success")
|
||||
json.put("paymentToken", paymentToken)
|
||||
json.put("paymentMethodType", when(paymentMethodType) {
|
||||
PaymentMethodType.YOO_MONEY -> "yoo_money"
|
||||
|
||||
+8
-1
@@ -36,6 +36,9 @@ import ru.yoomoney.sdk.kassa.payments.checkoutParameters.TestParameters
|
||||
import ru.yoomoney.sdk.kassa.payments.TokenizationResult
|
||||
import ru.yoomoney.sdk.kassa.payments.checkoutParameters.UiParameters
|
||||
|
||||
private const val CANCELED_RESULT = "{\"status\":\"canceled\"}"
|
||||
private const val ERROR_RESULT = "{\"status\":\"error\"}"
|
||||
|
||||
class YookassaPaymentsFlutterPlugin: FlutterPlugin, MethodCallHandler, ActivityAware, PluginRegistry.ActivityResultListener {
|
||||
|
||||
private lateinit var flutterResult: Result
|
||||
@@ -123,9 +126,13 @@ class YookassaPaymentsFlutterPlugin: FlutterPlugin, MethodCallHandler, ActivityA
|
||||
|
||||
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?): Boolean {
|
||||
if (requestCode == REQUEST_CODE_TOKENIZE) {
|
||||
if (resultCode == Activity.RESULT_OK && data != null) {
|
||||
if (resultCode == Activity.RESULT_CANCELED) {
|
||||
flutterResult.success(CANCELED_RESULT)
|
||||
} else if (resultCode == Activity.RESULT_OK && data != null) {
|
||||
val result: TokenizationResult = Checkout.createTokenizationResult(data);
|
||||
flutterResult.success(result.toJson())
|
||||
} else {
|
||||
flutterResult.success(ERROR_RESULT)
|
||||
}
|
||||
} else if (requestCode == REQUEST_CODE_CONFIRMATION) {
|
||||
flutterResult.success(resultCode)
|
||||
|
||||
Reference in New Issue
Block a user