O Google Play Services tem duas APIs que podem ser usadas para simplificar o processo de verificação com base em SMS: a API SMS Retriever e a API SMS Consent User.
A API SMS Retriever oferece uma experiência do usuário totalmente automatizada e deve ser usada quando possível. No entanto, é necessário inserir um código hash personalizado no corpo da mensagem. Isso poderá ser difícil se você não for o remetente da mensagem.
Se você não tem controle sobre o conteúdo da mensagem, por exemplo, se o app trabalha com uma instituição financeira que pode querer verificar o número de telefone do usuário antes de aprovar uma transação de pagamento no app, use a API de consentimento de usuários de SMS, que não exige o código hash personalizado. No entanto, o usuário precisa aprovar a solicitação do app para acessar a mensagem que contém o código de verificação. Para minimizar as chances de exibir a mensagem errada ao usuário, o consentimento do usuário de SMS verificará se a mensagem contém um código alfanumérico com 4 a 10 caracteres contendo pelo menos um número. Ele também filtrará as mensagens dos remetentes na lista de contatos do usuário.
As diferenças estão resumidas na tabela abaixo:
Recuperador de SMS | Consentimento do usuário de SMS | |
---|---|---|
Requisitos de mensagem | Código hash de 11 dígitos que identifica seu aplicativo de forma exclusiva | Código alfanumérico de 4 a 10 dígitos com pelo menos um número |
Requisitos do remetente | Nenhum | O remetente não pode estar na lista de contatos do usuário. |
Interação do usuário | Nenhum | Tocar uma vez para aprovar |