Converter APP para DMG
Empacote um bundle .app do macOS em um DMG compactado com drag-and-drop em um Mac.
Crie ficheiros DMG online
Ainda não conseguimos ler ficheiros APP, por isso esta conversão não está disponível. Se conseguir exportar o seu trabalho para um destes formatos, transformamo-lo em DMG:
Como converter app para dmg arquivo
- Imagens de disco
- Nenhuma avaliação ainda.
Os aplicativos macOS geralmente são distribuídos como bundles .app, enquanto os downloads costumam usar uma única imagem de disco .dmg para montagem e instalação por arrastar e soltar. Empacotar um aplicativo dessa forma simplifica a distribuição sem alterar o próprio aplicativo.
O que é o formato APP
No macOS, “APP” normalmente significa um bundle de aplicativo .app. Ele é um diretório que contém o executável, recursos, metadados, frameworks e informações de code signing; o Finder o exibe como um único aplicativo. O Xcode e outras ferramentas de desenvolvimento criam esses bundles, que geralmente aparecem em /Applications, arquivos ZIP ou diretórios de build, como build/Release/.
Essa operação é um empacotamento, não uma conversão de código. O formato do executável do aplicativo, a arquitetura da CPU, os recursos e os dados de signing permanecem inalterados; o bundle é colocado dentro de um contêiner de imagem de disco.
O que é o formato DMG
DMG é o formato de imagem de disco da Apple para macOS. Abrir um .dmg monta-o como um volume virtual no Finder, onde o usuário pode copiar um aplicativo para /Applications, abrir a documentação ou executar um pacote de instalação incluído.
Um DMG pode conter compressão, criptografia, checksums, um nome de volume personalizado e configurações de apresentação do Finder. Uma imagem compactada e somente leitura, geralmente criada com o formato UDZO, é a opção normal para downloads de aplicativos porque reduz o tamanho da transferência e impede alterações acidentais nos arquivos distribuídos.
Como criar um DMG com hdiutil
O comando integrado hdiutil da Apple é a opção mais confiável para builds repetíveis. Execute estes comandos no Terminal em um Mac, substituindo MyApp pelo nome real do aplicativo:
- Crie um diretório temporário de staging, copie o bundle com
dittoe adicione um atalho para Applications:
staging=$(mktemp -d "${TMPDIR:-/tmp}/MyApp.XXXXXX")
ditto "/Applications/MyApp.app" "$staging/MyApp.app"
ln -s /Applications "$staging/Applications"
- Crie um DMG compactado na Mesa:
hdiutil create \
-volname "MyApp" \
-srcfolder "$staging" \
-format UDZO \
-ov \
"$HOME/Desktop/MyApp.dmg"
rm -rf "$staging"
- Abra
MyApp.dmg, copie o aplicativo para um Mac de teste e inicie-o. Desmonte o volume montado após o teste com:
hdiutil detach "/Volumes/MyApp"
O bundle de origem pode vir de um diretório de build em vez de /Applications. Copiá-lo com ditto preserva os metadados do bundle do aplicativo de forma mais confiável do que tratá-lo como uma coleção comum de arquivos.
Opções gráficas e de terceiros
Para uma conversão ocasional, use o Disk Utility: selecione File → New Image → Image from Folder, escolha um diretório de staging que contenha o bundle .app e um alias opcional para Applications, selecione compressed como formato da imagem e salve com uma extensão .dmg.
DropDMG é uma alternativa de desktop confiável para macOS que pode automatizar o staging, o layout do volume, a compressão, o signing e releases repetíveis. Um utilitário simples, como App2Dmg, também pode criar uma imagem de arrastar e soltar, mas inspecione sua saída e teste a imagem montada antes da distribuição. As ferramentas nativas do macOS são preferíveis porque podem preservar os metadados do bundle e verificar o resultado.
Conversores online não são apropriados para bundles .app comuns. Fazer upload de um aplicativo expõe código executável e recursos proprietários, e um serviço web pode não preservar symlinks, extended attributes, permissões ou dados de signing. Use uma ferramenta local para Mac; os utilitários do Windows podem criar um contêiner, mas não conseguem validar de forma confiável a inicialização, o signing ou a notarização do macOS.
Limitações de compatibilidade e signing
Criar um DMG não torna o aplicativo multiplataforma nem altera sua arquitetura. Um aplicativo somente para Intel ainda precisa de suporte a Intel ou do Rosetta 2 em Apple silicon, um aplicativo somente para Apple silicon precisa de um Mac compatível, e um aplicativo universal contém ambas as arquiteturas. A imagem também não ignora as verificações do Gatekeeper, de quarantine, code signing ou notarização.
Para distribuição pública, faça o signing do aplicativo antes de criar a imagem; em seguida, faça o signing e a notarização do DMG finalizado. Não altere o aplicativo depois de fazer seu signing. Um comando de verificação é:
codesign --verify --deep --strict --verbose=2 "/Applications/MyApp.app"
Use um formato de imagem gravável somente quando os usuários precisarem editar arquivos dentro da imagem montada. Para um download normal de aplicativo, UDZO é menor e somente leitura; teste o aplicativo copiado nas versões do macOS e nos tipos de processador que você pretende oferecer suporte.