Какой API следует использовать?

В сервисах Google Play есть два API, которые можно использовать для упрощения процесса проверки с помощью SMS: API Retriever SMS и API согласия пользователя SMS .

SMS Retriever API обеспечивает полностью автоматизированный пользовательский интерфейс, и его следует использовать, когда это возможно. Однако это требует от вас размещения пользовательского хэш-кода в теле сообщения, и это может быть сложно сделать, если вы не являетесь отправителем этого сообщения.

Если у вас нет контроля над содержанием сообщения — например, если ваше приложение работает с финансовым учреждением, которое может захотеть проверить номер телефона пользователя, прежде чем одобрить платежную транзакцию внутри вашего приложения, — вы можете использовать SMS User Consent API, для которого не требуется пользовательский хэш-код. Однако для этого требуется, чтобы пользователь одобрил запрос вашего приложения на доступ к сообщению, содержащему код подтверждения. Чтобы свести к минимуму вероятность появления неправильного сообщения пользователю, SMS User Consent проверит, содержит ли сообщение буквенно-цифровой код из 4-10 символов, содержащий хотя бы одну цифру. Он также будет отфильтровывать сообщения от отправителей в списке контактов пользователя.

Различия приведены в таблице ниже:

SMS ретривер Согласие пользователя по СМС
Требования к сообщению 11-значный хэш-код, который однозначно идентифицирует ваше приложение. 4-10-значный буквенно-цифровой код, содержащий хотя бы одну цифру
Требования к отправителю Никто Отправитель не может быть в списке контактов пользователя
Взаимодействие с пользователем Никто Одно касание для одобрения