Привет Я использую Braintree и пытаюсь получить одноразовый номер с помощью экспресс-проверки.но проблема в том, что мои платежные экраны могут открываться, но в моем журнале я нигде не получаю nonce.и еще одна проблема - после оплаты я хочу перенаправить на один из моих фрагментов, но он не перенаправляет.Может ли кто-нибудь помочь мне с этим?
Я следую официальную демо Braintree.
https://developer.paypal.com/docs/accept-payments/express-checkout/ec-braintree-sdk/client-side/android/v2/
public void setupBraintreeAndStartExpressCheckout() {
PayPal.requestOneTimePayment(mBraintreeFragment, getPayPalRequest(rus.replace("$","").replace(" ","")));
}
private PayPalRequest getPayPalRequest(@Nullable String amount) {
PayPalRequest request = new PayPalRequest(amount);
request.currencyCode("USD");
request.displayName(preference.getUserName(this));
request.landingPageType(PayPalRequest.LANDING_PAGE_TYPE_LOGIN);
request.userAction(PayPalRequest.USER_ACTION_COMMIT);
// request.intent(PayPalRequest.INTENT_SALE);
return request;
}
@Override
public void onPaymentMethodNonceCreated(PaymentMethodNonce paymentMethodNonce) {
// Send nonce to server
nonce = paymentMethodNonce.getNonce();
if (paymentMethodNonce instanceof PayPalAccountNonce) {
PayPalAccountNonce payPalAccountNonce = (PayPalAccountNonce)paymentMethodNonce;
// payPalAccountNonce.getPayerId()
String paymentNonce = payPalAccountNonce.getNonce();
Intent intent = new Intent()
.putExtra("tests", paymentMethodNonce);
getActivity().setResult(Activity.RESULT_OK, intent);
getActivity().finish();
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
//If the result is from paypal
//If the result is OK i.e. user has not canceled the payment
if (resultCode == RESULT_OK) {
//Getting the payment confirmation
Parcelable returnedData = data.getParcelableExtra("tests");
if (returnedData instanceof PaymentMethodNonce) {
String paymentNonce = ((PaymentMethodNonce) returnedData).getNonce();
System.out.println("NONCE CREATED"+nonce);
BuyerSuccessModel bm=new BuyerSuccessModel();
orderid=bm.getOrderid();
BuyerMembershipSuceesFragment BMSSuccessFragment = new BuyerMembershipSuceesFragment();
Bundle bundle = new Bundle();
bundle.putString("OrderID", orderid);
bundle.putString("PaypalStatus", paymentNonce);
BMSSuccessFragment.setArguments(bundle);
addFragment(R.id.activity_home_fl_container, BuyerMembershipDetailFragment.this, BMSSuccessFragment, true, false);
}}}