Começar a usar o Login do Google para iOS e macOS

Antes de começar a integrar seu app iOS ou macOS com os componentes do Login do Google, faça o download das dependências e configure seu projeto Xcode. As etapas desta página fazem exatamente isso. As próximas etapas descrevem como integrar os recursos do Login do Google ao seu app.

Antes de começar

Instale uma versão atual do Xcode.

Instalar as dependências do Login do Google no seu projeto

CocoaPods

  1. Se você ainda não tiver o CocoaPods instalado, siga as etapas no guia Primeiros passos do CocoaPods.

  2. Abra uma janela de terminal e navegue até o local do projeto Xcode do seu app.

  3. Se você ainda não criou um Podfile para seu aplicativo, crie um agora:

    pod init

  4. Abra o Podfile criado para seu aplicativo e adicione o seguinte:

    pod 'GoogleSignIn'

  5. Se você estiver usando a SwiftUI, adicione também a extensão do pod para o botão "Fazer login com o Google":

    pod 'GoogleSignInSwiftSupport'

  6. Salve o arquivo e execute:

    pod install

  7. Abra o arquivo workspace .xcworkspace gerado para seu aplicativo no Xcode. Use esse arquivo em todos os desenvolvimentos futuros do aplicativo. Isso é diferente do arquivo .xcodeproj project incluído, que resultaria em erros de build quando aberto.

    Consulte o Podfile do app de exemplo do Objective-C para conferir um exemplo.

Gerenciador de pacotes do Swift

  1. Abra seu projeto no Xcode.

  2. Adicione as dependências do Login do Google ao app (documentação do Xcode):

    Repositório https://github.com/google/GoogleSignIn-iOS
    Versão 7.0.0
    Produto do pacote GoogleSignIn
  3. Se você estiver usando a SwiftUI, adicione também o seguinte produto de pacote de extensão para o botão "Fazer login com o Google":

    Produto do pacote GoogleSignInSwift

Receber um ID do cliente OAuth

Seu app precisa de um ID do cliente OAuth para se identificar no back-end de autenticação do Google. Para apps iOS e macOS, o tipo de aplicativo do ID do cliente OAuth precisa ser configurado como iOS.

Se você ainda não criou um ID do cliente OAuth, clique no botão abaixo para fazer isso.

Criar um ID do cliente OAuth

Depois de criar o ID do cliente OAuth, anote a string do ID do cliente, que será usada para configurar o Login do Google no app. Você pode fazer o download do arquivo de configuração, que contém o ID do cliente e outros dados de configuração, para referência futura.

Se você já criou um ID do cliente OAuth, clique no botão abaixo para encontrar suas informações do OAuth.

Conseguir um ID de cliente OAuth

Receber um ID do cliente do servidor OAuth

A maioria dos apps precisa transmitir a identidade dos usuários conectados a um serviço de back-end de algum tipo. Para transmitir com segurança a identidade dos usuários que fizeram login com o Google ao seu back-end, use tokens de ID, conforme discutido em Autenticar com um servidor de back-end. A recuperação do token de ID de um usuário requer um segundo ID do cliente, o ID do servidor, que representa seu back-end.

Para criar um ID do cliente do servidor:

  1. Abra seu projeto no console do Cloud.

  2. Crie um novo ID do cliente do OAuth do tipo aplicativo da Web. Anote a string do ID do cliente, que será necessária para configurar o Login do Google no app.

Configurar o projeto do aplicativo

O recurso de login do Google exige que o projeto seja configurado com o ID do cliente OAuth e um esquema de URL personalizado. Opcionalmente, você também pode adicionar o ID do cliente do servidor para autenticação de back-end ou otimizar seu app para o domínio do Google Workspace.

Adicionar o ID do cliente OAuth e o esquema de URL personalizado

Atualize o arquivo Info.plist do app para adicionar o ID do cliente OAuth e um esquema de URL personalizado com base no ID do cliente invertido.

O ID do cliente invertido é o ID do cliente com a ordem dos campos delimitados por ponto invertidos. Isso também é mostrado em Esquema de URL do iOS ao selecionar um cliente OAuth do iOS no console do Cloud. Exemplo: com.googleusercontent.apps.1234567890-abcdefg

<key>GIDClientID</key>
<string>YOUR_IOS_CLIENT_ID</string>
<key>CFBundleURLTypes</key>
<array>
  <dict>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string>
    </array>
  </dict>
</array>

Opcional: configurar a autenticação de back-end

Se você precisar receber os tokens de ID dos usuários para autenticação de back-end, defina também a chave GIDServerClientID no arquivo Info.plist do app.

<key>GIDServerClientID</key>
<string>YOUR_SERVER_CLIENT_ID</string>

Opcional: otimizar para um domínio do Google Workspace ou um domínio do OpenID

Use o parâmetro GIDHostedDomain se quiser otimizar o fluxo de login para um domínio do Google Workspace.

<key>GIDHostedDomain</key>
<string>YOUR_HOSTED_DOMAIN</string>

Use o parâmetro GIDOpenIDRealm se quiser especificar um realm do OpenID.

<key>GIDOpenIDRealm</key>
<string>YOUR_OPENID_REALM</string>

Como assinar seu aplicativo

Seu aplicativo precisa ser assinado com um certificado emitido pela Apple para ser executado de forma nativa em dispositivos macOS e iOS para armazenar credenciais pelo chaveiro.

Próximas etapas

Agora que você fez o download das dependências do projeto e configurou o Xcode, é possível adicionar o Login do Google ao seu app iOS.