gpt4 book ai didi

Android Stripe 应用程序在添加新支付来源时崩溃

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:56:01 26 4
gpt4 key购买 nike

Desired payment flow

我正在尝试使用此文档在 android 中使用 stripe SDK 实现上述结帐流程 https://stripe.com/docs/mobile/android/customer-information .我创建了一个返回临时 key 的后端调用,如下所示

{
"id": "ephkey_EPHEMERAL_KEY_HERE",
"object": "ephemeral_key",
"associated_objects": [
{
"id": "cus_CUSTOMER_ID_HERE",
"type": "customer"
}
],
"created": 1535352558,
"expires": 1535356158,
"livemode": true,
"secret": "ek_live_SECRET_HERE"
}

在我的应用中,正在初始化我的 CustomerSession 并像这样启动 PaymentMethodsActivity

CustomerSession.initCustomerSession(
new MyEphemeralKeyProvider(
new MyEphemeralKeyProvider.ProgressListener() {
@Override
public void onStringResponse(String string) {

if (string.startsWith("Error: ")) {
new android.support.v7.app.AlertDialog.Builder(SelectCardActivity.this).setMessage(string).show();
}

Intent payIntent = PaymentMethodsActivity.newIntent(SelectCardActivity.this);
startActivityForResult(payIntent, REQUEST_CODE_SELECT_SOURCE);
}
}));

然后我有这个 onActivityResult 方法

  @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_CODE_SELECT_SOURCE && resultCode == RESULT_OK) {
String selectedSource = data.getStringExtra(PaymentMethodsActivity.EXTRA_SELECTED_PAYMENT);
Source source = Source.fromString(selectedSource);
// This is the customer-selected source.
// Note: it isn't possible for a null or non-card source to be returned at this time.
}
}

它打开 PaymentMethodsActivity 正常,并在添加新的付款方式时,当我尝试提交应用程序崩溃时出现以下堆栈跟踪。我可能错过了什么?

E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.stealthdroids.itransfer, PID: 22404
java.lang.IllegalStateException: Attempted to get instance of PaymentConfiguration without initialization.
at com.stripe.android.PaymentConfiguration.getInstance(PaymentConfiguration.java:29)
at com.stripe.android.view.AddSourceActivity.onActionSave(AddSourceActivity.java:133)
at com.stripe.android.view.StripeActivity.onOptionsItemSelected(StripeActivity.java:88)
at com.stripe.android.view.AddSourceActivity.onOptionsItemSelected(AddSourceActivity.java:33)
at android.app.Activity.onMenuItemSelected(Activity.java:2970)
at android.support.v4.app.FragmentActivity.onMenuItemSelected(FragmentActivity.java:407)
at android.support.v7.app.AppCompatActivity.onMenuItemSelected(AppCompatActivity.java:195)
at android.support.v7.view.WindowCallbackWrapper.onMenuItemSelected(WindowCallbackWrapper.java:108)
at android.support.v7.view.WindowCallbackWrapper.onMenuItemSelected(WindowCallbackWrapper.java:108)
at android.support.v7.app.ToolbarActionBar$2.onMenuItemClick(ToolbarActionBar.java:63)
at android.support.v7.widget.Toolbar$1.onMenuItemClick(Toolbar.java:203)
at android.support.v7.widget.ActionMenuView$MenuBuilderCallback.onMenuItemSelected(ActionMenuView.java:780)
at android.support.v7.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:822)
at android.support.v7.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:171)
at android.support.v7.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:973)
at android.support.v7.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:963)
at android.support.v7.widget.ActionMenuView.invokeItem(ActionMenuView.java:624)
at android.support.v7.view.menu.ActionMenuItemView.onClick(ActionMenuItemView.java:150)
at android.view.View.performClick(View.java:4848)
at android.view.View$PerformClick.run(View.java:20270)
at android.os.Handler.handleCallback(Handler.java:815)
at android.os.Handler.dispatchMessage(Handler.java:104)
at android.os.Looper.loop(Looper.java:194)
at android.app.ActivityThread.main(ActivityThread.java:5668)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:963)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:758)

最佳答案

它提示您没有使用可发布的 key 初始化 PaymentConfiguration 对象。

PaymentConfiguration.init(<<YOUR PUBLISHABLE KEY HERE>>);

关于Android Stripe 应用程序在添加新支付来源时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52038058/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com