【发布时间】:2021-08-01 18:15:48
【问题描述】:
我正在使用com.stripe:stripeterminal:1.0.17,我正在尝试在应用程序中切换读卡器,但尝试 initTerminal 时出现崩溃:您只能在请求终端实例之前调用 initTerminal第一次。
我在清缓存,我觉得这个功能有问题,我对java不太感兴趣,所以很难找到问题:
public void stripeTerminal(String stripeTerminalToken) {
Activity currentActivity = getCurrentActivity();
terminalToken = stripeTerminalToken;
try {
Log.i("find_me", "terminal: " + terminal);
if (terminal != null) {
terminal.clearCachedCredentials();
}
Terminal.initTerminal(mContext, LogLevel.VERBOSE, new TokenProvider(),
new TerminalEventListener());
terminal = Terminal.getInstance();
} catch(TerminalException e) {
Exception exception = new Exception(e.getErrorMessage());
Crashlytics.logException(exception);
WritableMap params = Arguments.createMap();
params.putString("errorMsg", e.getErrorMessage());
sendEventToJS(mContext, "stripeDevicesList", params);
if (terminal != null) {
terminal.clearCachedCredentials();
}
terminal = null;
}
}
【问题讨论】:
标签: java stripe-payments