Login com a API do GooglePlus no Android.

Temos uma opção bastante útil hoje em dia no Android, que é usar a sincronização da conta de e-mail do Google. Não vou alongar muito a introdução, vamos partir para a codificação e configuração da API. Criando um novo Projeto no AndroidStudio Digite o nome da aplicação e escolha também um nome do package, vamos

Temos uma opção bastante útil hoje em dia no Android, que é usar a sincronização da conta de e-mail do Google.

Não vou alongar muito a introdução, vamos partir para a codificação e configuração da API.

Criando um novo Projeto no AndroidStudio

Digite o nome da aplicação e escolha também um nome do package, vamos precisar para ativar a API do GooglePlus no Console do Google. Continuei a criação e escolha uma Empty Activity.

Configuração no Console do Google e Ativação da API

Tenho que informar que essa é a parte mais chata do tutorial, mas enfim com pouco de paciência e atenção vamos conseguir.

Acesse o link para configurar Console Configuração. Você irá ver algo parecido com isso:

  1. Adicione o nome para a sua aplicação (Sugiro que seja o mesmo nome que Adicionou no seu App).
  2. Adicione o nome do package (Você pode encontrar esse nome no seu AndroidManisfest.xml ou no seu Gradle app-level escrito applicationId).
  3. Escolha sua Região.
  4. Continue (Choose and configure services).

Feito, vai ser redirecionado a uma página e irar visualizar um campo vazio, lá você vai digitar o seu SHA-1. Porém como obter meu SHA-1? Você vai ter que acessar via linha de comando a pasta (.android) normalmente ela fica localizada na raiz  (C:UsersNomeUsuario.android)  dentro você vai perceber um arquivo (chave chamada debug.keystore ),** **quando achar digite o seguinte comando na pasta:

Caso você não consiga acesse o link para mais informações obter SHA-1. Agora copie e cole o SHA-1 no Console do Google e você terá algo:

Agora continue (Continue to Generate configuration files). Gere o arquivo, faça o download depois copie e cole na raiz do seu projeto exemplo (C:UsersAlessandroAndroidstudioProjectsGoogleSign-Inapp).

Voltando para nosso Projeto no AndroidStudio

Feito as devidas configurações no Console do Google, vamos configurar o Build Gradle o suporte Play Services na nossa aplicação.

  1. Adicione a dependência no project-level build.gradle:
  1. Adicione o plugin e dependência no app-level build.gradle e o Play services Auth:

Arquivo de Layout

No arquivo de layout **activity_main.xml **adicione:

Sem muito comentário sobre o código acima, ele possui:

  • Um ImageView para imagem do usuário.
  • Dois TextView para nome e e-mail.
  • Três Buttons sendo que um customizado, vão servir para Login, Desconectar, Revogar o Acesso do usuário

A Class Principal

Agora vamos fazer o vinculo entre o XML e Java API (bindViews). Crie um método chamado bindViews e adicione:

Vamos solicitar da API informações simples de um login como nome, e-mail, foto e id, no momento é o que necessitamos para esse exemplo.

Temos que utilizar o objeto **GoogleSignOptions **e passar como parâmetro GoogleSignOptions.DEFAULT_SIGN_IN nele contem a opção requestEmail().

Agora que já temos configurado nossa solicitação, iremos criar um objeto GoogleApiClient com acesso ao login do Google API e as opções especificadas. Colocando tudo em um método que chamei de obterConfiguracoesPadraoLogin() .

Agora a intenção de login usando uma Intent do Android com o método getSignInIntent e passando para o startActivityForResult.

Apos isso o método **onActivityResult **será chamado com nossos resultados e para recuperar utilizamos o getSignInResultFromIntent.

Depois de recuperar o resultado, você pode verificar se a solicitação  deu certo com o método isSuccess . Se bem-sucedido, você pode chamar o método getSignInAccount para obter um objeto GoogleSignInAccount que contém informações sobre o usuário.

Utilizei a lib Picasso para o carregamento eficiente de imagem, adicione no seu Gradle app-level.

No AndroidManifest.xml

.Agora segue toda a Class MainActivity

Falta ainda fazer o desconectar e revogar acesso, estou deixando para próxima parte, até lá.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *