onActivityResult: resultCode 总是 returns 2
onActivityResult: resultCode always returns 2
我正在尝试将 BrainTree 集成到我的应用程序中,但我在使用 startActivityForResult()
和 onActivityResult()
时遇到了一些问题。我已经正确检索了一个 clientToken,但由于某种原因,我总是在 onActivityResult
中收到 2 的 resultCode。此外,我还在我的日志中得到这个:
I/art: Rejecting re-init on previously-failed class
java.lang.Class
知道发生了什么事吗?以下是我的一些代码片段,希望对您有所帮助:
这是我片段中的 onClick 方法。
void onPaymentClick() {
PaymentRequest paymentRequest = new PaymentRequest().clientToken("<client_token>");
getActivity().startActivityForResult(paymentRequest.getIntent(storeOrderActivity), 1);
}
}
这是我 activity 中的 onActivityResult 代码。 (PostOrder
是应该 运行 一旦 Braintree 将随机数发回给我的函数,但这甚至 运行 因为我得到的 resultCode 为 2 )
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
if (resultCode == Activity.RESULT_OK) {
PaymentMethodNonce paymentMethodNonce = data.getParcelableExtra(
BraintreePaymentActivity.EXTRA_PAYMENT_METHOD_NONCE
);
PostOrder.postOrder(this, fabCartAdapter.getCart(), paymentMethodNonce.getNonce());
}
}
}
resultCode==2
保留给 BRAINTREE_RESULT_DEVELOPER_ERROR
:
The payment method flow halted due to a resolvable error (authentication, authorization, SDK upgrade required). The reason for the error will be returned in a future release.
可能您需要仔细检查 SDK 是否设置正确。
我正在尝试将 BrainTree 集成到我的应用程序中,但我在使用 startActivityForResult()
和 onActivityResult()
时遇到了一些问题。我已经正确检索了一个 clientToken,但由于某种原因,我总是在 onActivityResult
中收到 2 的 resultCode。此外,我还在我的日志中得到这个:
I/art: Rejecting re-init on previously-failed class java.lang.Class
知道发生了什么事吗?以下是我的一些代码片段,希望对您有所帮助:
这是我片段中的 onClick 方法。
void onPaymentClick() {
PaymentRequest paymentRequest = new PaymentRequest().clientToken("<client_token>");
getActivity().startActivityForResult(paymentRequest.getIntent(storeOrderActivity), 1);
}
}
这是我 activity 中的 onActivityResult 代码。 (PostOrder
是应该 运行 一旦 Braintree 将随机数发回给我的函数,但这甚至 运行 因为我得到的 resultCode 为 2 )
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
if (resultCode == Activity.RESULT_OK) {
PaymentMethodNonce paymentMethodNonce = data.getParcelableExtra(
BraintreePaymentActivity.EXTRA_PAYMENT_METHOD_NONCE
);
PostOrder.postOrder(this, fabCartAdapter.getCart(), paymentMethodNonce.getNonce());
}
}
}
resultCode==2
保留给 BRAINTREE_RESULT_DEVELOPER_ERROR
:
The payment method flow halted due to a resolvable error (authentication, authorization, SDK upgrade required). The reason for the error will be returned in a future release.
可能您需要仔细检查 SDK 是否设置正确。