Как получить данные платежа из библиотеки PayPal? - PullRequest
0 голосов
/ 28 октября 2019

Я настраиваю приложение, которое получает информацию о платеже из PayPal SDK для отправки на сервер, но информация о результате проблемного платежа не содержит информацию о покупателе, такую ​​как payer_id, как я могу ее получить?

Приложение Gradle:

implementation 'com.paypal.sdk:paypal-android-sdk:2.16.0'

объявить PayPalConfiguration:

    private static PayPalConfiguration config = new PayPalConfiguration()
            .environment(PayPalConfiguration.ENVIRONMENT_SANDBOX)
            .clientId(Constants.CLIENT_ID);

при нажатии кнопки:

public void pay(View view) {
        PayPalPayment payment = new PayPalPayment(new BigDecimal("0.01"), "USD", "sample item",
                PayPalPayment.PAYMENT_INTENT_SALE);
        Intent intent = new Intent(this, PaymentActivity.class);

        // send the same configuration for restart resiliency
        intent.putExtra(PayPalService.EXTRA_PAYPAL_CONFIGURATION, config);
        intent.putExtra(PaymentActivity.EXTRA_PAYMENT, payment);
        startActivityForResult(intent, PAYPAL_REQUEST_CODE);

    }

при результате активности:

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (resultCode == Activity.RESULT_OK) {
            PaymentConfirmation confirm = data.getParcelableExtra(PaymentActivity.EXTRA_RESULT_CONFIRMATION);
            if (confirm != null) {
                try {
                    Log.e("paymentExample", confirm.toJSONObject().toString());
                    } catch (JSONException e) {
                    Log.e("paymentExample", "an extremely unlikely failure occurred: ", e);
                    }
                }

и Журналраспечатайте это:

"response": {
            "create_time": "2019-10-28T09:44:56Z",
            "id": "PAYID-LW3LR********38174A",
            "intent": "sale",
            "state": "approved"
        }

в ответ нет никакой информации о Покупателе !!

...