Experimente fazer login para iOS

Use nosso aplicativo de amostra iOS para ver como funciona o Sign-In ou adicione o Sign-In ao seu aplicativo existente .

Para usar este exemplo, certifique-se de ter Xcode e CocoaPods .

Obtenha o projeto

Comece com a amostra usando o seguinte comando em um terminal:

pod try GoogleSignIn

O CocoaPods clonará o projeto de amostra do GitHub e o abrirá no Xcode.

Obtenha um ID de cliente OAuth

Clique no botão abaixo para criar um novo projeto de API do Google e obter um ID de cliente iOS para o projeto. Quando solicitado, especifique com .google .samples .quickstart .SignInExample como o ID do pacote.

Crie um ID de cliente OAuth

Depois de criar o ID do cliente OAuth, copie-o sobre o texto do marcador em AppDelegate.m :

[GIDSignIn sharedInstance].clientID = @"YOUR_CLIENT_ID";

Defina o tipo de URL de retorno

Antes que o Sign-In possa ser executado, você precisa configurar um tipo de URL para lidar com o retorno de chamada. Na guia Informações do projeto Xcode, na seção Tipos de URL , encontre a caixa Esquemas de URL contendo a string YOUR_REVERSED_CLIENT_ID . Substitua esta string pelo seu ID de cliente invertido - seu ID de cliente com a ordem dos campos delimitados por pontos invertidos. Por exemplo:

com.googleusercontent.apps.1234567890-abcdefg

Execute o aplicativo

Agora você está pronto para construir e executar o aplicativo de amostra do Xcode.

Selecione o destino SignInExample e inicie o aplicativo de amostra em um dispositivo ou no simulador iOS clicando no botão Executar para a área de trabalho.

Como funciona

Adicione uma visualização GIDSignInButton ao seu aplicativo em um storyboard, um arquivo XIB ou programaticamente. No delegado do aplicativo, implemente o signIn:didSignInForUser:withError delegate que será chamado quando um usuário signIn:didSignInForUser:withError no botão de login e concluir o fluxo de login.

- (void)signIn:(GIDSignIn *)signIn
didSignInForUser:(GIDGoogleUser *)user
     withError:(NSError *)error {
  if (error != nil) {
    if (error.code == kGIDSignInErrorCodeHasNoAuthInKeychain) {
      NSLog(@"The user has not signed in before or they have since signed out.");
    } else {
      NSLog(@"%@", error.localizedDescription);
    }
    return;
  }
  // Perform any operations on signed in user here.
  NSString *userId = user.userID;                  // For client-side use only!
  NSString *idToken = user.authentication.idToken; // Safe to send to the server
  NSString *fullName = user.profile.name;
  NSString *givenName = user.profile.givenName;
  NSString *familyName = user.profile.familyName;
  NSString *email = user.profile.email;
  // ...
}
      

Próximos passos

Se quiser ver como implementar o Login do Google em seu próprio aplicativo, dê uma olhada em nosso guia de implementação.

Adicionar login ao seu aplicativo

Você teve uma boa experiência? Enfrentou problemas? Nos informe!