Students Save 30%! Learn & create with unlimited courses & creative assets Students Save 30%! Save Now
Advertisement
  1. Code
  2. Android SDK
Code

Autenticação sem Senha Usando Account Kit

by
Difficulty:BeginnerLength:ShortLanguages:

Portuguese (Português) translation by Erick Patrick (you can also view the original English article)

Sobre Account Kit

O Que é Autenticação Sem Senha?

Autenticação sem senha, como diz, não usa senha para registro ou login. Ao invés disso, a autenticação é confirmada via código de verificação via SMS ou link via email, ambos de uso único.

Por Que Autenticação Sem Senha?

  • Processos de login e registro sem problemas para usuários.
  • Segura acesso ao app, já que usuários não precisam reusar senhas ou senhas de fácil descoberta (como "password").
  • Evita forçar usuários a criar e lembrar senhas únicas.

Nesse tutorial, mostraremos como usar o Account Kit do Facebook para autenticação sem senha em apps de Android. Os usuários registrarão e acessarão seja por número de telefone ou email. Eles não precisam ter conta no Facebook para autenticar.

Não só isso, mas o Account Kit é fácil de implementar e nos salva da tediosa criação de sistemas de login.

Facebook Account Kit homepage screenshot

Como o Account Kit Funciona?

O diagrama abaixo deve deixar claro como Account Kit funciona.

How Facebook Account Kit works

A autenticação acontece numa série de trocas entre o usuário e o app. Primeiro o usuário inicia o login, talvez carregando ao app no celular. Então, um código de verificação único é enviado para o usuário via SMS ou um link via email. Após isso, o usuário digita o código ou clica no link, e ele será autenticado para o app.

Outro recurso legal do Account Kit é quando o usuário digita o telefone no app, Account Kit tentará casar com o número conectado ao perfil do Facebook do usuário. Se estiver conectado ao app do Facebook no Android e os números casarem, Account Kit pulará o envio da SMS e o usuário será logado automaticamente, sem problemas.

Usando Account Kit

1. Pré-requisito

Para começar a usar o Account Kit, precisaremos:

2. Habilitar o Account Kit

Vamos ao painel do app, cliquemos no botão Add Product e selecionemos Account Kit. Então cliquemos no botão Get Started para adicioná-lo. O que veremos é a configuração do Account Kit.

Account Kit settings

3. Declarando Dependências

Adicionemos a dependência com a última versão da SDK do Account Kit no arquivo build.gradle e sincronizemos o projeto.

4. Atualizando AndroidManifest.xml

Adicionemos o ID do app do Facebook, token de cliente do Account Kit (disponível no painel de configuração) e a permissão INTERNET ao AndroidManifest.xml.

5. Atualizando Arquivos de Recursos

Incluamos o id do app e o token de cliente do Account Kit no arquivo strings.xml.

Também incluamos o tema do Account Kit no styles.xml.

6. Inicializando a SDK

Na classe Application, inicializemos a SDK (lembrando de incluir o android:name no AndroidManifest.xml

7. Iniciando o Fluxo de Login

Temos de escrever um manipulador separado para os fluxos de autenticação via SMS e email.

Para SMS, na linha 5, especificamos o tipo de login LoginType.PHONE.

Para email, na linha 5, especificamos o tipo de login LoginType.EMAIL.

8. Estruturando a Tela de Login

Eis um layout simples para uma tela que mostra botões para acessar via SMS ou email.

9. Lidando com Resposta do Fluxo de Login

Agora, quando o usuário tentar o login, receberemos uma resposta no método onActivityResult(). Nele, podemos manipular autenticações, bem sucedidas, canceladas ou falhas.

O App Completo

Agora podemos executar nosso app para testar ambos os fluxos!

The finished app

Notemos que a SDK JavaScript do Account Kit não suporta login via WebView, então os usuários não conseguem acessar via Account Kit numa WebView. Teremos de Criar nossa interface de login com código nativo.

Conclusão

Nesse tutorial, aprendemos sobre autenticação sem senha usando o Account Kit do Facebook: o que é, porque deveríamos considerar e como implementar num app para Android.

Um aviso, porém: alguns veem autenticação sem senha como menos segura. A maioria não usaria quando segurança é prioridade, como num app para bancos. Então, usemos com cautela e escolhamos a hora certa de usá-lo ou um esquema tradicional de autenticação.

Para aprender mais sobre o Account Kit do Facebook, leiamos a documentação oficial. Aprendamos mais sobre desenvolvimento para Android nessas outras publicações na Envato Tuts+.

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.