Rejeição por Sign In with Apple — Guideline 4.8

A Apple exige o "Sign In with Apple" em apps que oferecem login por terceiros. Saiba quando é obrigatório, quando não é, e como implementar.

Leitura: 6 min Atualizado: 2025 Verificado pela equipe AtlasTech

Índice

  1. O que é a Guideline 4.8
  2. Quando o Sign In with Apple é obrigatório
  3. Exceções — quando não é obrigatório
  4. Regras de exibição do botão
  5. Como implementar
  6. Como responder a rejeição
  7. Prefere delegar tudo?

1. O que é a Guideline 4.8

A Guideline 4.8 da App Store exige que apps que oferecem login de terceiros (Google, Facebook, Twitter/X, GitHub, etc.) também ofereçam o Sign In with Apple como opção equivalente. A regra existe desde 2019 e ainda surpreende desenvolvedores que não conhecem a exigência.

A ideia da Apple é garantir que seus usuários sempre tenham a opção de criar conta de forma privada — o Sign In with Apple permite que o usuário esconda seu e-mail real.

2. Quando o Sign In with Apple é obrigatório

É obrigatório quando o app oferece qualquer um dos seguintes métodos de autenticação:

Se o seu app tem "Entrar com Google", o Sign In with Apple precisa estar presente — com o mesmo destaque visual.

3. Exceções — quando não é obrigatório

Você não precisa do Sign In with Apple se:

✓ Se você removeu todos os logins de terceiros e ficou apenas com e-mail/senha próprio, a Guideline 4.8 não se aplica mais — e você pode explicar isso no Resolution Center ao responder a rejeição.

4. Regras de exibição do botão

A Apple é específica sobre como o botão deve aparecer:

⚠️ Colocar o botão "Sign In with Apple" em uma posição menos visível que os outros logins (abaixo da dobra, fonte menor, cor menos contrastante) é suficiente para gerar nova rejeição por não cumprir a guideline adequadamente.

5. Como implementar

iOS Nativo (Swift)

AuthenticationServices framework

Use o framework nativo AuthenticationServices da Apple. A implementação básica envolve o ASAuthorizationAppleIDProvider e o ASAuthorizationController. A documentação oficial em developer.apple.com tem um tutorial completo com código de exemplo.

React Native

@invertase/react-native-apple-authentication

A biblioteca mais usada é @invertase/react-native-apple-authentication. Instale via npm, configure o capability "Sign In with Apple" no Xcode e siga a documentação da biblioteca para implementar o fluxo de login.

Flutter

sign_in_with_apple package

Adicione o package sign_in_with_apple no pubspec.yaml. Habilite o capability "Sign In with Apple" no Xcode (Target → Signing & Capabilities → "+"). Siga a documentação do package para implementar o botão e o fluxo de autenticação.

Expo (React Native)

expo-apple-authentication

Use o módulo oficial expo-apple-authentication. Adicione ao projeto com expo install expo-apple-authentication e configure o entitlement no app.json. Funciona com Expo Go no iOS 13+.

6. Como responder a rejeição

Se o app foi rejeitado por Guideline 4.8:

Quer que a gente publique por você?

App Store e Google Play em até 7 dias. A partir de R$1.800.

Solicitar publicação