Gerir elementos de início de sessão e tarefas em segundo plano no Mac
Antes do macOS 13, parte do processo de desenvolvimento da aplicação dos executáveis de ajuda incluía scripts que instalavam uma ou várias listas de propriedades em diretórios específicos com base no tipo de serviço. No macOS 13 ou posterior, uma nova estrutura no pacote da aplicação simplifica a instalação de elementos de início de sessão e listas de propriedades associadas ao atualizar os executáveis de ajuda a partir de versões anteriores do macOS. Esta framework é usada para criar transparência para o utilizador ao configurar elementos de início de sessão, launch agents e launch daemons num Mac. Esta framework usa o objeto SMAppService
para controlar executáveis de ajuda que vivem dentro do pacote principal de uma aplicação. Também pode ser usado para registar e controlar elementos de início de sessão, launch agents e launch daemons como executáveis de ajuda para uma aplicação e funciona com todos os tipos de aplicações, independentemente da forma como foram instaladas.
Implementar aplicações e executáveis de ajuda
Uma organização tem a capacidade de configurar elementos especificados com uma nova carga útil de configuração. O conteúdo da carga útil é uma matriz de dicionários e cada um deles especifica uma regra para um ou vários elementos possíveis. O primeiro elemento que corresponde a uma regra durante uma instalação notifica o administrador de que estão a ser instalados elementos geridos. Quaisquer instalações subsequentes de elementos que correspondem a uma regra não cria nenhuma notificação para o lembrete do dia (24 horas após a primeira notificação). Todos os elementos são detetados e geridos com esta configuração, os administradores e utilizadores devem comunicar comentários aos fornecedores e equipas internas da aplicação para tirar partido da nova framework numa aplicação compactada.
As notificações de utilizador final para aplicações que são geridas dentro desta carga útil são tratadas por uma única notificação, o que permite ao utilizador saber que estão a ser instalados elementos geridos e que os mesmos podem ser vistos das Definições do Sistema. Enquanto esta notificação se mantém no ecrã, não surge mais nenhuma notificação para elementos geridos. Se esta notificação for fechada, quaisquer instalações geridas subsequentes voltam a notificar o utilizador. Se a notificação for “Adiado”, não haverá mais notificações de elementos de início de sessão, launch agents ou launch daemons até ao fim do tempo selecionado: 1 semana ou 1 dia.
Identificar aplicações com a gestão de tarefas em segundo plano
Os administradores devem conhecer todos os elementos que usem as aplicações e os executáveis de ajuda que são implementados pela sua organização. Para ajudar a identificar os elementos que são implementados e registados na nova framework, teste os processos de implementação padrão e analise a configuração resultante para elementos aplicáveis. Por exemplo:
use o relatório de estado declarativo para tarefas em segundo plano disponível no macOS 14 ou posterior;
vá a Definições do Sistema > Geral > Início de sessão para ver uma lista de quaisquer elementos que estejam registados na nova framework. Para ver o elemento que está a ser aberto, clique no botão “Informação”;
use a ferramentas da linha de comandos para reunir informação importante sobre o sistema, repor dados para testes e monitorizar a atividade com as aplicações Consola e Terminal.
sfltool dumpbtm: imprime o estado atual dos elementos de início de sessão e segundo plano, incluindo UUID de carga útil
servicemanagement
carregados. O resultado deste comando deve ser incluído com qualquer comentário que arquive juntamente com outros elementos listados na secção “Relatórios de comentários”.sfltool resetbtm: repõe os dados de elementos de início de sessão e segundo plano. Se usa este comando entre testes, é recomendado que os utilizadores também reiniciem o respetivo computador.
Monitorizar a atividade de gestão de elementos de início de sessão e segundo plano na Consola: filtre em
subsystem:backgroundtaskmanagement
ecategory:mcx
ou use o seguinte comando para apresentar os registos no Terminal:log stream —debug —info —predicate "subsystem = 'com.apple.backgroundtaskmanagement'and category = 'mcx'"
A versão Mac Evaluation Utility 4.3.0 ou posterior, disponível a partir do programa AppleSeed for IT, tem a capacidade de gerar resultados de teste com informação detalhada, à semelhança de
sfltool dumpbtm
. Estes testes para elementos de início de sessão, launch agents ou launch daemons comunicam as aplicações instaladas atualmente com a gestão de elementos de início de sessão e em segundo plano no macOS. Estes resultados do teste são formatados de forma incorporada com outros testes do Mac Evaluation Utility e podem ser exportados como ficheiros de texto delimitado para análise adicional.
Usando um perfil de configuração XML para gestão de tarefas em segundo plano
Pode usar um perfil de configuração XML para gerir tarefas em segundo plano. Ao fazê-lo, todos os elementos são comparados com todos os tipos de regras. Quando um elemento corresponde a uma regra, o elemento é aprovado automaticamente. Estes são os tipos de regras que tidos em consideração ao fazer a correspondência:
BundleIdentifier da aplicação: o identificador do pacote (também conhecido como ID do pacote) da aplicação que pretende corresponder, o qual tem de ser uma correspondência exata.
BundleIdentifierPrefix da aplicação: o prefixo do ID do pacote da aplicação que pretende corresponder.
TeamIdentifier do programador: o identificador da equipa dos atributos de assinatura de código, que tem de ser uma correspondência exata.
Etiqueta do serviço: o valor do parâmetro de etiqueta .plist
launchd
que pretende corresponder, que tem de ser uma correspondência exata.LabelPrefix do serviço: o prefixo do parâmetro de etiqueta .plist
launchd
que pretende corresponder.
Encontrará informação adicional no exemplo da gestão de tarefas em segundo plano e nas Definições de carga útil de MDM de elementos de início de sessão geridos.
Atribuições de outras aplicações
A Apple conserva um ficheiro de preferências denominado attributions.plist
que contém aplicações ou executáveis de ajuda de várias aplicações que são frequentemente usados por uma aplicação específica. Esta informação pode ser usada para ajudar a identificar aplicações de ajuda e ficheiros executáveis que surgem nos elementos de início de sessão do utilizador no arranque. Para obter uma referência completa destes elementos comuns e respetivas atribuições, consulte o ficheiro situado aqui:
/System/Library/PrivateFrameworks/BackgroundTaskManagement.framework/Versions/A/Resources/