Как показать опцию Google Pay в Braintree Dropin?

При запуске демонстрационного приложения braintree для Android с здесь , похоже, можно показать опцию Google Pay в Dropin-UI в режиме песочницы.

Однако, когда я пытаюсь создать Dropin-UI самостоятельно, я не могу этого сделать, Dropin показывает только варианты Paypal и Credit или Debit card.

При просмотре документации я не могу найти чего-то, чего не хватает в моем собственном коде / конфигах.

Я добавил последние зависимости в свой build.gradle:

implementation 'com.braintreepayments.api:drop-in:5.0.1'
implementation 'com.braintreepayments.api:braintree:3.14.2'
implementation 'com.braintreepayments.api:google-payment:3.3.1'
implementation 'com.google.android.gms:play-services-wallet:18.1.2'

Я изменил свой AndroidManifest.xml, чтобы он содержал следующую часть:

<meta-data android:name="com.google.android.gms.wallet.api.enabled" android:value="true"/>

Я создаю dropin-запрос с помощью ключа токенизации следующим образом:

DropInRequest dropInRequest = new DropInRequest()
    .clientToken("sandbox_...") //Tokenization key from the Control Panel
    .googlePaymentRequest(getGooglePaymentRequest());

startActivityForResult(dropInRequest.getIntent(MainActivity.this), 4949);

и я создаю GooglePaymentRequest следующим образом:

private GooglePaymentRequest getGooglePaymentRequest() {
    GooglePaymentRequest googlePaymentRequest = new GooglePaymentRequest()
        .transactionInfo(TransactionInfo.newBuilder()
            .setTotalPrice("1.00")
            .setTotalPriceStatus(WalletConstants.TOTAL_PRICE_STATUS_FINAL)
            .setCurrencyCode("USD")
            .build())
        .billingAddressRequired(true);

    return googlePaymentRequest;
}

И я включил Google Pay в панели управления моей учетной записи Sandbox.

введите описание изображения здесь

Но, к сожалению, результат все же такой:

введите описание изображения здесь

Я просматривал документацию несколько раз, но не вижу, что могло быть причиной этого.

Кто-нибудь видит, что мне не хватает?

С уважением, Феликс


person felix    schedule 28.10.2020    source источник
comment
У вас есть карта или учетная запись PayPal, хранящаяся в учетной записи Google, используемой на вашем тестовом устройстве? Google требует его для тестирования.   -  person hollabaq    schedule 06.11.2020
comment
@hollabaq на моем реальном устройстве (которое я использую для тестирования), у меня настроена учетная запись Paypal и кредитная карта, и я уже использую Google Pay в течение нескольких месяцев. В моем эмуляторе нет конфигурации для Paypal или кредитной карты и другой конфигурации Google Pay, НО при запуске демонстрационного приложения из github.com/braintree/braintree-android-drop-in/tree/master/Demo в пользовательском интерфейсе DropIn отображается опция Google Pay даже в эмуляторе, и при нажатии на опцию Google Pay я вижу форму для настройки Google Pay. Так что я думаю, у этого должна быть другая причина.   -  person felix    schedule 09.11.2020


Ответы (1)


Пытаясь найти причину этого в неправильном месте в течение нескольких дней, я наконец нашел ее:

Обязательно добавьте <meta-data android:name="com.google.android.gms.wallet.api.enabled" android:value="true"/> в тег application в AndroidManifest.xml, а НЕ в действие.

person felix    schedule 17.11.2020