StripePayment.canMakeNativePayments 和 StripePayment.deviceSupportsNativePay() 陷入异步暂停

时间:2021-03-27 21:17:43

标签: android flutter dart stripe-payments

在 IOS 上完全正常,但在 Android(模拟器和设备)上永远不会返回 - 我尝试在 mainActivity.kt 文件中设置 mainActivity 来扩展 FlutterFragmentActivity,但没有成功。

void checkIfNativePayReady() async {
print('started to check if native pay ready');
bool deviceSupportNativePay = await StripePayment.deviceSupportsNativePay(); // never returns

bool isNativeReady = await StripePayment.canMakeNativePayPayments(
    ['american_express', 'visa', 'maestro', 'master_card']); // never returns

isNativeReady
    ? createPaymentMethodNative()
    : createPaymentMethod();
}

这是日志;

E/flutter (13783): [ERROR:flutter/lib/ui/ui_dart_state.cc(186)] Unhandled Exception: PlatformException(error, null, null, java.lang.IllegalArgumentException
E/flutter (13783): at com.gettipsi.stripe.util.ArgCheck.isTrue(ArgCheck.java:39)
E/flutter (13783): at com.gettipsi.stripe.PayFlow.getEnvironment(PayFlow.java:44)
E/flutter (13783): at com.gettipsi.stripe.GoogleApiPayFlowImpl.createPaymentsClient(GoogleApiPayFlowImpl.java:64)
E/flutter (13783): at com.gettipsi.stripe.GoogleApiPayFlowImpl.isReadyToPay(GoogleApiPayFlowImpl.java:77)
E/flutter (13783): at com.gettipsi.stripe.GoogleApiPayFlowImpl.deviceSupportsAndroidPay(GoogleApiPayFlowImpl.java:218)
E/flutter (13783): at com.gettipsi.stripe.StripeModule.deviceSupportsAndroidPay(StripeModule.java:132)
E/flutter (13783): at de.jonasbark.stripepayment.StripePaymentPlugin.onMethodCall(StripePaymentPlugin.kt:23)
E/flutter (13783): at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:233)
E/flutter (13783): at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(DartMessenger.java:85)
E/flutter (13783): at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:818)
E/flutter (13783): at android.os.MessageQueue.nativePollOnce(Native Method)
E/flutter (13783): at android.os.MessageQueue.next(MessageQueue.java:363)
E/flutter (13783): at android.os.Looper.loop(Looper.java:173)
E/flutter (13783): at android.app.ActivityThread.main(ActivityThread.java:8178)
E/flutter (13783): at java.lang.reflect.Method.invoke(Native Method)
E/flutter (13783): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
E/flutter (13783): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1101)
E/flutter (13783): )
E/flutter (13783): #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:581:7)
E/flutter (13783): #1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:158:18)
E/flutter (13783): asynchronous suspension
E/flutter (13783): #2 _payViewState.checkIfNativePayReady (package:leaf_app/VIEWS/stripe/pay.dart:30:35)
E/flutter (13783): asynchronous suspension 

0 个答案:

没有答案
相关问题