Índice
1. O que são erros ITMS
ITMS significa "iTunes Music Store" — o nome legado do sistema de entrega de conteúdo da Apple. Erros ITMS são gerados pelo sistema automatizado do App Store Connect quando detecta um problema no build antes mesmo de qualquer revisão humana.
Você recebe esses erros por e-mail, geralmente minutos ou horas após o upload. O build não aparece no TestFlight — ele foi rejeitado antes disso. Cada código ITMS corresponde a um problema específico.
2. ITMS-90096
This bundle is invalid — missing required icon
Causa: o app não inclui todos os tamanhos de ícone exigidos pela Apple, ou os arquivos de ícone estão corrompidos.
Solução: verifique o AppIcon no catálogo de assets do Xcode. Todos os slots obrigatórios precisam estar preenchidos. Para iOS 16+, o ícone de 1024×1024px para o App Store é obrigatório. Use uma ferramenta como makeappicon.com para gerar todos os tamanhos automaticamente.
✓ Fix: preencher todos os slots de AppIcon no Assets.xcassets e recompilar.
3. ITMS-90683
Missing purpose string in Info.plist
Causa: o app usa uma permissão do iOS (câmera, microfone, localização, contatos, etc.) mas não declarou o motivo no Info.plist. A Apple exige que cada permissão tenha um texto explicando ao usuário por que o app precisa daquele acesso.
Solução: no Info.plist, adicione a chave correspondente à permissão usada com uma string descritiva. Exemplos: NSCameraUsageDescription para câmera, NSLocationWhenInUseUsageDescription para localização, NSMicrophoneUsageDescription para microfone.
✓ Fix: adicionar todas as NSXxxUsageDescription necessárias no Info.plist.
4. ITMS-90562
This bundle is invalid — CFBundleVersion must be higher
Causa: o build number do novo build é igual ou menor ao de um build anteriormente enviado. O App Store Connect não aceita builds com número duplicado ou regressivo.
Solução: incremente o campo Build no Xcode (Target → General → Build) para um número maior que o último enviado. Gere um novo archive e faça upload novamente.
✓ Fix: incrementar o CFBundleVersion antes de gerar o archive.
5. ITMS-90725
SDK Version Issue — linked against iOS SDK older than required
Causa: o app foi compilado com uma versão do iOS SDK que a Apple não aceita mais. A Apple exige que todos os builds usem o SDK mais recente a partir de uma data anunciada anualmente.
Solução: atualize o Xcode para a versão mais recente disponível na Mac App Store. O Xcode mais recente inclui o iOS SDK mais recente automaticamente. Recompile e faça upload do novo build.
✓ Fix: atualizar o Xcode e recompilar.
6. ITMS-90338
Non-public API usage detected
Causa: o app (ou uma dependência) usa APIs privadas do iOS — funções internas que a Apple não documenta publicamente e proíbe o uso em apps da loja.
Solução: o e-mail geralmente lista os símbolos problemáticos. Se for um SDK de terceiro, verifique se há uma versão atualizada que resolve o problema ou remova a biblioteca. Se for código próprio, substitua o uso da API privada por alternativas públicas.
✓ Fix: remover ou atualizar o SDK que usa APIs privadas.
7. ITMS-90189
Redundant binary upload
Causa: você tentou fazer upload de um build com o mesmo bundle identifier e versão de um build que já está ativo ou em revisão no App Store Connect.
Solução: se há uma versão em revisão que você quer substituir, vá ao App Store Connect, remova a submissão atual, incremente a versão ou build number e faça upload novamente.
✓ Fix: remover a versão em revisão ou incrementar o build number.
8. ITMS-90176
Provisioning profile does not include entitlement
Causa: o provisioning profile usado para assinar o app não tem autorização para um entitlement que o app requer (push notifications, iCloud, Game Center, etc.).
Solução: no portal developer.apple.com, edite o App ID e habilite o capability necessário. Regenere o provisioning profile de distribuição, baixe e instale no Xcode. Recompile e faça upload.
✓ Fix: habilitar o capability no App ID e regenerar o provisioning profile.
9. Como diagnosticar erros não listados
Se você recebeu um código ITMS não listado aqui:
- Pesquise o código exato no Google — a comunidade de desenvolvedores Apple tem soluções documentadas para centenas de códigos.
- Acesse o fórum oficial Apple Developer Forums (forums.developer.apple.com).
- O e-mail do App Store Connect geralmente inclui o arquivo ou linha específica que causou o problema — leia-o completamente antes de buscar soluções genéricas.
✓ Use o Xcode Organizer (Window → Organizer → Archives) para ver os detalhes completos do build e qualquer aviso gerado durante o archive — muitos problemas que resultam em erros ITMS são sinalizados como warnings antes do upload.
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