Explicador de Info.plist
Cole o seu Info.plist, ou o que o plutil -p imprime. Ele é lido aqui mesmo, nesta página, e nada é enviado para lugar nenhum.
Teste um exemplo:
O que faz
Todo app para Mac tem um Info.plist dentro dele, em Contents. É um pequeno arquivo de configurações que diz ao macOS o nome do app, o bundle ID, a versão, o macOS mais antigo em que ele roda, a categoria, se tem ícone no Dock e as mensagens que o macOS mostra quando o app pede a câmera, o microfone ou o controle de outros apps. Esta ferramenta lê o arquivo que você cola e diz em palavras simples o que cada chave faz. Ela põe primeiro as que vão travar o app, as atualizações ou a revisão, depois as que merecem um segundo olhar, depois as comuns.
Comandos para rodar
plutil -p YourApp.app/Contents/Info.plist plutil -lint YourApp.app/Contents/Info.plist
O primeiro imprime o arquivo de um jeito que você pode colar aqui, mesmo quando está guardado em binário. O segundo confere se o arquivo é válido. No seu projeto do Xcode, o arquivo muitas vezes traz coisas como $(MARKETING_VERSION), que o Xcode preenche ao compilar. Para ver os valores reais, confira a cópia dentro do app compilado.
O que cada resultado significa
| Marca | O que significa |
|---|---|
| Corrigir | Uma chave está ausente ou vazia de um jeito que quebra o app, as atualizações ou o App Review, como a falta de número de build ou uma mensagem de permissão vazia. |
| Aparência | Funciona, mas pode gerar perguntas no App Review ou confundir as pessoas, como uma mensagem de permissão vaga ou http simples permitido em todo lugar. |
| OK | Definido como a documentação da Apple descreve. |
| Nota | Bom saber, como o que o Xcode adicionou ao compilar o app. |
Fontes: Apple Developer, Information Property List, Protected resources, LSApplicationCategoryType, NSAppTransportSecurity e documentação do Sparkle, todas lidas em 9 de novembro de 2026.
Como funciona
São algumas regras em texto simples rodando nesta página. Ele lê o XML de um Info.plist, ou o nível superior do que o plutil -p imprime. Conhece 80 chaves comuns e as mensagens de permissão. Qualquer outra coisa ele marca como fora da sua lista em vez de chutar. Ele não sabe dizer se o seu app realmente usa a câmera ou o microfone, nem se falta uma mensagem de permissão para algo que o app faz: o macOS bloqueia um app que pede sem ela, então teste cada recurso uma vez. Nada do que você cola é salvo ou enviado.
Perguntas
O que é um Info.plist no Mac?
Um arquivo de configurações dentro de todo app, em Contents/Info.plist. Ele guarda o nome do app, o bundle ID, a versão, o macOS mínimo, a categoria e as mensagens que o macOS mostra quando o app pede permissão.
Como leio o Info.plist de um app?
Rode plutil -p seguido do caminho para Contents/Info.plist no Terminal. Ele imprime o arquivo em texto simples, mesmo quando está guardado em binário.
Qual é a diferença entre CFBundleVersion e CFBundleShortVersionString?
CFBundleShortVersionString é a versão que as pessoas veem, como 2.1. CFBundleVersion é o número de build que o macOS, a Mac App Store e o Sparkle comparam para saber qual cópia é mais nova.
Por que o meu app para Mac fecha quando pede a câmera?
O macOS bloqueia um app que pede a câmera, o microfone ou outros dados privados sem a descrição de uso correspondente no Info.plist. Adicione NSCameraUsageDescription com um motivo claro.
O que eu colo é enviado para algum lugar?
Não. O texto é lido nesta página e nada é enviado nem guardado.