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

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

Antes de começar

Instale uma versão atual do Xcode.

Instale 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 do 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 .xcworkspace workspace gerado para seu aplicativo no Xcode. Use esse arquivo em todos os desenvolvimentos futuros do aplicativo. Observe que ele é diferente do arquivo de projeto .xcodeproj incluído, que resultaria em erros de build quando aberto.

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

Gerenciador de pacotes do Swift

  1. Abra seu projeto no Xcode.

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

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

    Embalar produto 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.

Criar um ID do cliente OAuth

Depois de criar o ID do cliente OAuth, anote a string do ID do cliente, necessária para configurar o Login do Google no seu app. Também é possível fazer o download do arquivo de configuração, que contém seu 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 as informações do OAuth.

Gerar um ID do cliente OAuth

Receber um ID do cliente do servidor OAuth

A maioria dos aplicativos precisará passar a identidade dos usuários conectados para algum tipo de serviço de back-end. Para transmitir com segurança a identidade dos usuários que fizeram login com o Google para 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 cliente 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 ID do cliente OAuth do tipo aplicativo da Web. Anote a string do ID do cliente, necessária para configurar o Login do Google no seu app.

Configurar o projeto do aplicativo

O Login do Google exige que seu projeto seja configurado com o ID do cliente OAuth e um esquema de URL personalizado. Também é possível adicionar o ID do cliente do servidor para autenticação de back-end ou otimizar seu app para seu 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 é seu ID do cliente com a ordem dos campos delimitados por pontos invertidas. 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 tokens de ID dos usuários para autenticação de back-end, defina também a chave GIDServerClientID no arquivo Info.plist do aplicativo.

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

Opcional: otimizar para um domínio do Google Workspace ou um realm 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 você quiser especificar um realm OpenID.

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

Assinar o aplicativo

O aplicativo precisa ser assinado com um certificado emitido pela Apple para ser executado nativamente em dispositivos macOS e iOS para armazenar credenciais por meio do conjunto de chaves.

Próximas etapas

Depois de fazer o download das dependências do projeto e configurar o projeto Xcode, adicione o Login do Google ao app iOS.