Android 13 (с обратной совместимостью с Android 12) поддерживает потоки платежей UPI путем добавления специального сканера QR-кода, к которому пользователи могут получить доступ непосредственно с соответствующей плитки быстрых настроек. Пользователи могут запустить поток платежей UPI, отсканировав QR-код либо с камеры прямой трансляции, либо со статического изображения.
Когда на устройстве установлено несколько приложений UPI, пользователю открывается диалоговое окно устранения неоднозначности. Затем поток платежей продолжается в приложении, выбранном пользователем.
Обратите внимание, что порядок приложений никак не изменяется. Приоритет наиболее часто используемых пользователями приложений определяется операционной системой и отображается первым, аналогично существующему диалоговому окну намерений UPI.
Поддержка намерений UPI с помощью Android QR-сканера
Когда платежное приложение запускается через этот поток, идентификатор вызывающего пакета устанавливается как com.google.android.gms . Это значение не может быть изменено.
Платежные приложения должны проверить этот источник и обрабатывать все потоки платежей, инициированные с помощью этого идентификатора пакета, чтобы они рассматривались как инициированные QR , и установить режим инициации на QR при отправке данных на PSP получателя платежа .
Чтобы отличить платежи, инициированные при сканировании реального QR-кода (с помощью камеры) и сканировании изображения QR-кода (фото на устройстве), QR-сканер передает дополнительную информацию, которая помогает идентифицировать источник QR-кода.
Платежные приложения должны получить значение «intent extra » с помощью ключа com.google.android.gms.UPI_QR_SOURCE
, а затем сравнить со следующим:
- Строка
STATIC_IMAGE
указывает, что источником является статическое изображение. - Строка
LIVE_CAMERA
указывает, что источником является камера.
Ключ | Ценить | Объяснение |
com.google.android.gms.UPI_QR_SOURCE | | Изображение QR-кода, хранящееся на устройстве. |
| Изображение QR-кода, снятое в реальном времени с помощью камеры |