“Sign in with Apple” no iOS 13

Gois
Apple Developer Academy | Mackenzie
4 min readMar 21, 2020

Simples passos para iniciar sessão com a Apple no seu aplicativo.

Introdução

O recurso “Iniciar sessão com a Apple” foi criado do zero para respeitar sua privacidade e mantê-lo no controle de suas informações pessoais.

Passos

  • Ativar o “Sign in with Apple”
  • Importar a Biblioteca
  • Carregar o Delegate
  • Chamar as funções de sucesso e erro
  • Configurar a solicitação das informações
  • Criar o botão do Storyboard e vincular a Controller
  • Configurar o botão
  • E por fim, testar

Iniciando o projeto

Crie seu projeto :)

Primeiro passo para criar seu projeto, escolha a opção ‘Single View App’ e vamos iniciar a nossa jornada!

Ativar o “Sign in with Apple”

Para começamos precisaremos ativar o recurso na nossa aplicação para isso vá em:

Ativando o “Sign in with Apple”.
  1. Clique sobre o seu projeto
  2. Vá em ‘TARGETS’
  3. Clique em ‘Signing & Capabilities’
  4. De um clique duplo sobre ‘Sign in with Apple

Prontinho, se estiver tudo ok com a sua assinatura com a Apple ele criara um arquivo de configuração básica da sua requisição.

Arquivo de configuração básica da sua requisição.

Importar a Biblioteca

Vamos agora para a nossa classe ‘ViewController’ que vem por padrão nos projetos, que se encontra no arquivo ViewControler.swift e importaremos a biblioteca AuthenticationServices.

Importando a biblioteca.
  1. Selecionar ‘ViewControler.swift
  2. Importar ‘AuthenticationServices

Carregar o Delegate

Bom, por convenção eu costumo chamar os delegates nas extensões das classes e por isso vou seguir esse padrão, mas deixando no mesmo arquivo para facilitar a visualização do projeto. E assim, na extensão chamaremos o ASAuthorizationControllerDelegate.

Carregando o delegate.

Chamar as funções de sucesso e erro

A resposta da chamada chegará através da função authorizationController que poderá ter sucesso com o didCompleteWithAuthorization ou erro com a didCompleteWithError.

  1. didCompleteWithAuthorization: Ao completar a requisição com sucesso a ‘authorization’ virá com as informações que foram solicitadas(ainda faremos essa função), no nosso caso pediremos o nome completo e o e-mail, ele tbm retorna o ID do usuário.
  2. didCompleteWithError: No caso de erro poderemos realizar o tipo de tratamento adequado.

Configurar a solicitação das informações

Dentro da extensão da ‘ViewController’ ainda, faremos a configuracao da requisição com a função handleAppleIdRequest:

  1. O mecanismo para a geração de requisições para autenticar os usuários baseados no Apple ID.
  2. O controle que gerencia a autorização da requisição criado.
  3. Declara que quem delega o controle é a ‘ViewController’
  4. Inicia o processo autorização.

Criar o botão do Storyboard e vincular a Controller

Adicionan um UIButton.
Configurando a classe do botão.
  1. Selecione o botão.
  2. Vá no inspetor de identidade.
  3. E mude a classe do botão para ASAuthorizationAppleIDButton.
Ligando a Controller.

Daremos o nome do nosso botão de ‘authorizationButton’. =D

Configurar o botão

Ainda na ‘ViewController’ na extensão criaremos a função setUpSignInAppleButton, e a chamaremos no ‘viewDidLoad’ como abaixo:

  1. setUpSignInAppleButton: Adicionamos ao botão a chamada da requisição da função que criamos anteriormente.
  2. viewDidLoad: Precisamos chamar aqui a função setUpSignInAppleButton.

E por fim, testar

--

--

Gois
Apple Developer Academy | Mackenzie

 iOS Developer | Student | Researcher | Innovation Enthusiast.