Google Pay в Android-приложении Api 1 против Api 2 - PullRequest
0 голосов
/ 03 января 2019

Я прошел это руководство по интеграции на веб-сайте 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 карты? или номер версии не имеет значения с точки зрения клиента?

Я вижу, это несколько новых вещей:

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

1 Ответ

0 голосов
/ 03 января 2019

Является ли Api версия 1 устаревшей?

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

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

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

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

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

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

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

If your app supported PAYMENT_METHOD_TOKENIZED_CARD:

    Add "CRYPTOGRAM_3DS" to the allowedAuthMethods array.

так что 3DSбыл / доступен через API-интерфейс разработчика через WalletConstants.PAYMENT_METHOD_TOKENIZED_CARD

...