iOS / Android Dev Tools

Ver perfil de provisionamentoLeia o XML interno

Escolha um arquivo local ou carregue o exemplo sintético. Depois de decodificar, alterne entre resumo, direitos, árvore e XML.

Ver perfil de provisionamento

Arquivo do perfil

Solte um arquivo .mobileprovision ou .provisionprofile. Máximo de 5 MiB.

Nenhum arquivo selecionado

Resultado

A leitura fica nesta aba. A ferramenta não envia nem salva o arquivo.

Opções

Substitui strings conhecidas e esvazia dados binários. Equipe, app e outros metadados permanecem. Decodifique de novo após mudar a opção.

Escolha um arquivo e decodifique.

Decodificar não verifica assinaturas, certificados, revogações nem possibilidade de instalação.

A exportação é uma cópia XML sem assinatura, não um perfil instalável.

Ver perfil de provisionamento ajuda quando uma compilação usa a equipe errada ou um aparelho de teste não instala o app. Compare o arquivo realmente incluído no aplicativo com a cópia baixada, principalmente quando os nomes são parecidos mas os conteúdos diferem.

O leitor percorre a estrutura CMS do arquivo mobileprovision até o XML encapsulado. Ele não aceita apenas um trecho XML encontrado no meio de bytes arbitrários. Sistemas recentes podem usar DER-Encoded-Profile como referência; esta página mostra a representação legível para diagnóstico.

Por que ver perfil de provisionamento

Conecte o resumo aos campos de origem

Ver perfil de provisionamento permite relacionar equipe, identificador do app e data de expiração com os caminhos originais. A visualização separada dos Entitlements preserva arrays e booleanos, evitando confundir uma permissão com texto ou com um resultado de validação.

Um contêiner de perfil se abre em uma árvore com ramos de identidade, datas e permissões.

Oculte dispositivos também na exportação

O UDID dos dispositivos é substituído por padrão, inclusive quando reaparece em outras strings. Os dados binários ficam vazios, pois podem carregar outra cópia dos identificadores. Equipe e metadados do app continuam visíveis: essa ocultação não torna o arquivo anônimo.

Linhas de dispositivos recebem máscaras na tela e no documento exportado, enquanto outros metadados continuam visíveis.

Comece pelo arquivo incluído no app

01

Separe o exemplo do perfil real

Extraia embedded.mobileprovision do seu próprio pacote de aplicativo. O exemplo é um CMS sintético sem signatários, criado para explorar as visualizações. Não é um perfil emitido pela Apple e não pode ser instalado.

02

Decodifique após mudar a opção

Alterar a ocultação remove o resultado anterior e bloqueia a exportação. Execute novamente pelo botão ou por Ctrl/Cmd + Enter. Trocar apenas a visualização entre resumo, árvore e XML não muda os dados já lidos.

03

Abra somente os ramos necessários

Clique no caminho de um dicionário ou array para recolher seus descendentes. A árvore acrescenta 50 linhas por vez; a exportação mantém todo o XML atual. Limpar ou trocar o arquivo exige uma prévia e permite desfazer uma vez.

Encontre o campo por trás da falha

Equipe e identificação do app

Name, UUID, TeamName e TeamIdentifier aparecem juntos. O Bundle ID é derivado removendo o primeiro segmento de prefixo de application-identifier, com suporte à chave alternativa do macOS. Curingas são preservados e valores ausentes não são inventados.

Direitos com seus tipos

Entitlements tem uma visualização própria que distingue dicionários, arrays, booleanos, inteiros, datas e dados. Esses direitos descrevem o que o perfil permite, não necessariamente o que a assinatura do app solicita. A ferramenta também não compara esses dois conjuntos.

Datas com o instante da comparação

CreationDate e ExpirationDate permanecem em UTC. A expiração é comparada com o relógio do navegador no momento da decodificação. O resultado distingue expirado, ainda não expirado e desconhecido. Um relógio errado afeta a comparação e uma data futura não comprova uma assinatura válida.

Extração estruturada do plist

O XML é extraído do conteúdo SignedData, preservando ordem das chaves e tipos dos valores. Com a ocultação ativa, identificadores conhecidos são substituídos e todos os elementos data são esvaziados. Para obter os valores completos, desative a opção e decodifique novamente.

O alcance da leitura e da cópia

Sem parecer sobre confiança ou instalação
O leitor não verifica assinatura CMS, cadeia de certificados, revogação ou confiança da Apple, nem decide se o app pode ser instalado. Um contêiner sem signatários é indicado expressamente. Decodificar com sucesso significa apenas que a estrutura compatível foi lida.
O DER interno não é interpretado
Sistemas modernos podem usar DER-Encoded-Profile como fonte de referência. Esta ferramenta não interpreta sua semântica interna nem o compara com o XML. Campos desconhecidos continuam visíveis sem significados inventados ou uma classificação automática do tipo de distribuição.
Um formato de entrada específico
Aceita um CMS SignedData binário contendo um plist XML UTF-8. Oferece suporte a BER com comprimento definido ou indefinido e strings de octetos construídas. XML avulso, plist binário, conteúdo CMS separado ou criptografado, IPA, P12 e URLs ficam fora do escopo.
Ocultação não é anonimização
Identificadores de ProvisionedDevices são substituídos em strings e chaves, e os dados binários são esvaziados. Nomes, equipes, Bundle ID e outros metadados permanecem. Revise antes de compartilhar; valores integrais exigem nova decodificação com a ocultação desativada.
Limites e saída sem assinatura
A entrada aceita até 5 MiB; cada analisador, 10000 nós e 64 níveis; o XML gerado, 10 MiB. Chaves duplicadas e valores malformados são rejeitados. A exportação retira o envelope CMS e não renova, assina nem instala um perfil.

Ver perfil de provisionamento: dúvidas

Como abrir um arquivo mobileprovision?

Selecione o arquivo local e clique em Decodificar. Primeiro o leitor confere a estrutura CMS e depois lê o plist XML encapsulado. Um trecho legível no editor de texto não garante que o arquivo inteiro tenha o formato de contêiner compatível.

Como ver os UDIDs dos dispositivos incluídos em uma compilação?

Expanda ProvisionedDevices na árvore. Por padrão, a quantidade é mantida e os identificadores são substituídos. Desative a ocultação e decodifique de novo para ler os valores reais. Uma lista ausente não significa automaticamente autorização para todos os aparelhos.

Como conferir a data de expiração de um perfil?

Confira ExpirationDate e o horário da comparação no resumo. Isso mostra se a data registrada passou segundo o seu relógio. A aceitação do certificado, da assinatura e do perfil pela Apple precisa ser verificada com as ferramentas da plataforma.

Qual perfil foi usado para gerar o arquivo IPA?

Descompacte por conta própria o IPA de desenvolvimento ou Ad Hoc e encontre embedded.mobileprovision no pacote do app dentro de Payload. Esta página não descompacta IPA. Apps distribuídos pela App Store podem não incluir esse arquivo.

É possível mudar a data de expiração de um perfil?

Alterar a data no XML exportado não prolonga o perfil assinado pela Apple. A cópia não tem assinatura CMS. Atualize ou gere o perfil pela conta de desenvolvedor ou pelo Xcode e compile novamente o app usando o arquivo apropriado.

Falta algum detalhe sobre a leitura de perfis?

Investigue a próxima divergência

Ver perfil de provisionamento ajuda a conferir equipe, dispositivos e direitos do arquivo usado na compilação. Guarde o XML como registro de diagnóstico e recorra às ferramentas da Apple para decisões sobre assinatura ou confiança.