Primeiros passos com o Login do Google para iOS e macOS

Antes de começar a integrar seu app iOS ou macOS aos componentes de Login do Google, faça o download das dependências e configure seu projeto do Xcode. As etapas descritas nesta 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 de Login do Google no seu projeto

CocoaPods

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

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

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

    pod init
    .

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

    pod 'GoogleSignIn'

  5. Se você estiver usando o SwiftUI, adicione também a extensão de 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 isso é diferente do arquivo project .xcodeproj incluído, o que resultaria em erros de compilação quando abertos.

    Você pode consultar o Podfile do app de exemplo Objective-C (link em inglês) 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 6.0.2
    Pacote de produto Login do Google
  3. Se você estiver usando o SwiftUI, adicione também o seguinte produto do pacote de extensão para o botão "Fazer login com o Google":

    Pacote de 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. Em apps para 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, que será necessária para configurar o Login do Google no app. Como opção, é possível 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, pode encontrar suas informações OAuth clicando no botão abaixo.

Ver um ID do cliente OAuth

Receber um ID do cliente do servidor OAuth

A maioria dos apps precisará 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. Para recuperar o token de ID de um usuário, é necessário um segundo ID do cliente (seu ID do cliente server), que representa o 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 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 seu aplicativo

O Login do Google exige que seu projeto seja configurado com seu 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 o app para o domínio do Google Workspace.

Adicionar seu ID do cliente OAuth e esquema de URL personalizado

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

O ID do cliente revertido é o ID do cliente com a ordem invertida dos campos delimitados por pontos. 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 a autenticação de back-end, defina também a chave GIDServerClientID no arquivo Info.plist do seu app.

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

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

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

Como assinar o aplicativo

Seu 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

Agora que você já fez o download das dependências do projeto e configurou o projeto Xcode, adicione o Login do Google ao app iOS.