
Distribuição de pacotes personalizados para Mac
Os dispositivos Apple oferecem suporte à instalação, via conexão sem fio, de pacotes personalizados sem acessar a App Store. Há duas maneiras de distribuir apps proprietários desenvolvidos internamente:
Usando um serviço de gerenciamento de dispositivos
Usando um site
Use um serviço de gerenciamento de dispositivos para distribuir apps
Para usar um serviço de gerenciamento de dispositivos, use um manifesto com os comandos InstallEnterpriseApplication
(arquivo de manifesto ou manifesto incorporado) ou InstallApplication
(arquivo de manifesto). Prefira o uso do comando InstallEnterpriseApplication
porque ele é compatível com SHA-256 e apontamento de certificado. Para obter mais informações, consulte Comandos de gerenciamento de dispositivos.
Uso de um site para distribuir apps
Crie um pacote que contenha conteúdo, como o app, fontes e scripts a serem instalados no Mac.
Cabe a você projetar e hospedar o site usado para distribuir esses pacotes. Certifique-se de que os usuários sejam autenticados e que o site possa ser acessado da intranet ou da internet, dependendo das suas necessidades. Envie o arquivo de pacote (com extensão de nome de arquivo .pkg) para uma área do site que os usuários autenticados possam acessar.
Pode ser necessário configurar o servidor web para que o pacote seja transmitido corretamente. No servidor, adicione este tipo MIME aos ajustes de tipos MIME do serviço web:
application/octet-stream pkg
No Internet Information Server (IIS) da Microsoft, use o IIS Manager para adicionar o tipo MIME na página de Propriedades do servidor:
.pkg/octet-stream
Um arquivo de manifesto típico para macOS
Abaixo, encontra-se um exemplo de manifesto ou arquivo de manifesto, que é uma lista de propriedades em XML (arquivo .plist). Os campos a seguir são necessários:
URL: o URL HTTPS totalmente qualificado do pacote
kind: deve ser definido como software-package
Os campos a seguir são opcionais para segmentação:
md5-size: o tamanho de cada segmento
md5s: hashes MD5 para cada segmentação
sha256-size: o tamanho de cada segmento
sha256s: hashes SHA-256 para cada segmentação
Um exemplo de arquivo de manifesto para um pacote do Mac
Abaixo, encontra-se um exemplo de arquivo de manifesto. Observe que nos campos para segmentação, se ambas as informações de segmentação SHA-256 e MD5 forem fornecidas, SHA-256 tem a preferência.
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- array of downloads. -->
<key>items</key>
<array>
<dict>
<!-- an array of assets to download -->
<key>assets</key>
<array>
<dict>
<!-- Required. The asset kind. -->
<key>kind</key>
<string>software-package</string>
<!-- Optional. md5 is used here for chunking every 10 MB; Can also use sha256-size. -->
<key>md5-size</key>
<integer>10485760</integer>
<!-- Array of md5 hashes for each "md5-size" sized chunk; Can also use sha256s. -->
<key>md5s</key>
<array>
<string>41fa64bb7a7cae5a46bfb45821ac8b99</string>
<string>51fa64bb7a7cae5a46bfb45821ac8b98</string>
<string>61fa64bb7a7cae5a46bfb45821ac8b97</string>
</array>
<!-- required. the URL of the package to download. -->
<key>url</key>
<string>https://www.betterbag.com/apps/myapp.pkg</string>
</dict>
</array>
</dict>
</array>
</dict>
</plist>
Gere uma Assinatura de Código
No app Terminal, digite o comando e, na mesma linha, arraste o app de uma janela do Finder. Por exemplo:
codesign -display -r - /Applications/CompanyName\ ApplicationName.app