Google Pay в приложении Android Api 1 против Api 2

Я прошел через это руководство по интеграции на веб-сайте Stripe, где показана интеграция с Google Pay, которую я предполагаю в Api версии 1. https://stripe.com/docs/mobile/android/google-pay

Но теперь я обнаружил, что с июля 2018 года появилась новая версия Api 2 для Google Pay.

https://developers.google.com/pay/api/android/guides/tutorial

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

Версия Api 1 устарела? Есть ли строго типизированный эквивалент Api версии 2 для Android? Будет ли Stripe поддерживать Api версии 2? Что я потеряю, если останусь с Api версии 1? Будут ли работать, например, карты 3D secure? или номер версии не имеет значения с точки зрения клиента?

Я вижу, что это кое-что новенькое:

private static JSONArray getAllowedCardAuthMethods() {
  return new JSONArray()
      .put("PAN_ONLY")
      .put("CRYPTOGRAM_3DS");
}

person Michał Ziobro    schedule 03.01.2019    source источник


Ответы (1)


Версия Api 1 устарела?

Нет, по крайней мере, пока.

Есть ли строго типизированный эквивалент Api версии 2 для Android?

Текущий API предоставляет как конструктор объектов, так и json, например. IsReadyToPayRequest.newBuilder() или IsReadyToPayRequest.fromJson(), однако json является новым предпочтительным методом и предлагает дополнительные функции:

Ключевой момент: новые объекты запроса на основе JSON включать функции и возможности, недоступные для приложений, использующих предыдущую реализацию Builder.

«В предыдущей версии Google Pay API, объект Builder, мы использовали только поддерживаемые карты в качестве формы оплаты для IsReadyToPayRequest или PaymentDataRequest. В последней версии Google Pay API метод оплаты CARD является только одним из несколько возможных способов оплаты для IsReadyToPayRequest или PaymentDataRequest. "

Что я потеряю, если останусь с Api версии 1? Будут ли работать, например, карты 3D secure? или номер версии не имеет значения с точки зрения клиента?

https://developers.google.com/pay/api/android/guides/resources/update-to-latest-version подробно описывает переход между API построителя и json, включая токенизированные карты:

If your app supported PAYMENT_METHOD_TOKENIZED_CARD:

    Add "CRYPTOGRAM_3DS" to the allowedAuthMethods array.

поэтому 3DS был / доступен с API построителя через WalletConstants.PAYMENT_METHOD_TOKENIZED_CARD

person veritas1    schedule 03.01.2019