Gestion des éléments à lancer à l’ouverture et des tâches en arrière-plan sur Mac
Avant macOS 13, une partie du processus de conception des applications des exécutables d’aide comprenait des scripts qui installaient une ou plusieurs listes de propriétés dans des répertoires particuliers en fonction du type de service. Sous macOS 13 ou une version ultérieure, une nouvelle structure du paquet d’apps simplifie l’installation des éléments de connexion et des listes de propriétés associées en mettant à jour les exécutables d’aide des versions antérieures de macOS. Ce cadre d’application est utilisé pour assurer la transparence auprès de l’utilisateur lorsque vous configurez les éléments à lancer à l’ouverture ainsi que les agents et les démons de lancement sur un Mac. Ce cadre d’application utilise l’objet SMAppService
pour contrôler les exécutables d’aide qui se trouvent dans le paquet principal d’une app. Il peut également être utilisé pour enregistrer et contrôler les éléments à lancer à l’ouverture ainsi que les agents et les démons de lancement en tant qu’exécutables d’aide pour une app et il fonctionne avec tous les types d’apps, indépendamment de la façon dont elles ont été installées.
Déploiement des apps d’aide et des exécutables
Une organisation a la possibilité de configurer des éléments précis à l’aide d’une nouvelle entité de configuration. Le contenu de l’entité est un tableau de dictionnaires dont chacun précise une règle pour un ou plusieurs éléments possibles. Le premier élément qui correspond à une règle pendant une installation notifie à l’administrateur que des éléments gérés sont en cours d’installation. Toute installation ultérieure d’éléments correspondant à une règle ne crée pas de notifications supplémentaires pour le rappel de la journée (24 heures après la première notification). Au fur et à mesure que des éléments sont découverts et gérés à l’aide de cette configuration, les administrateurs et les utilisateurs devraient faire part de leurs commentaires aux fournisseurs d’apps et aux équipes internes chargées des outils afin de tirer parti du nouveau cadre d’application dans une app groupée.
Les notifications de l’utilisateur final pour les apps gérées dans cette entité sont traitées par une seule notification, laquelle informe l’utilisateur que les éléments gérés sont en cours d’installation et peuvent être consultés dans Réglages système. Pendant que cette notification demeure à l’écran, aucune autre notification pour les éléments gérés ne survient. Si cette notification est fermée, toutes les installations gérées suivantes notifient à nouveau l’utilisateur. Si la notification est « reportée », il n’y a plus de notifications d’éléments à lancer à l’ouverture, ni d’agents ni de démons de lancement jusqu’à la fin du temps sélectionné, soit une semaine ou un jour.
Identification des apps utilisant la gestion des tâches en arrière-plan
Les administrateurs doivent être attentifs à tous les éléments qui utilisent des apps d’aide et des exécutables qui sont déployés par leur organisation. Pour aider à identifier les éléments qui sont déployés et enregistrés avec le nouveau cadre d’application, testez les processus de déploiement standard et analysez la configuration résultante pour les éléments applicables. Exemple :
Utilisez le rapport d’état déclaratif pour les tâches en arrière-plan disponibles sous macOS 14 ou une version ultérieure.
Accédez à Réglages système > Général > Ouverture, pour afficher la liste de tous les éléments enregistrés avec le nouveau cadre d’application. Pour afficher l’élément en cours de lancement, cliquez sur le bouton Information.
Utilisez les outils de ligne de commande pour recueillir des informations importantes sur le système, réinitialiser les données pour les tests et surveiller l’activité à l’aide des apps Console et Terminal.
sfltool dumpbtm : Imprime l’état actuel des éléments de connexion et d’arrière-plan, y compris les UUID de l’entité chargée
servicemanagement
. La sortie de cette commande doit être incluse dans tout commentaire que vous déposez, avec les autres éléments énumérés dans la section Rapport de commentaires.sfltool resetbtm : Réinitialise les données de connexion et d’arrière-plan. Si vous utilisez cette commande entre deux tests, il est recommandé que les utilisateurs redémarrent également leur ordinateur.
Pour surveiller l’activité de gestion des éléments de connexion et d’arrière-plan dans Console : Filtrez sur
subsystem:backgroundtaskmanagement
etcategory:mcx
, ou utilisez la commande suivante pour diffuser les historiques dans Terminal :log stream --debug --info --predicate "subsystem = 'com.apple.backgroundtaskmanagement'and category = 'mcx'"
L’utilitaire d’évaluation Mac version 4.3.0 ou version supérieure, disponible auprès d’AppleSeed pour les TI, a la capacité de générer des résultats de test renvoyant des informations détaillées, similaires à
sfltool dumpbtm
. Ces tests pour les éléments à lancer à l’ouverture ainsi que les agents et les démons de lancement rendent compte des applications actuellement installées qui utilisent la gestion des éléments de connexion et d’arrière-plan sous macOS. Les résultats de ces tests sont formatés comme les autres tests de l’utilitaire d’évaluation Mac et sont exportables sous forme de fichiers texte délimités pour une analyse plus approfondie.
Utilisation d’un profil de configuration XML pour la gestion des tâches en arrière-plan
Vous pouvez utiliser un profil de configuration XML pour gérer les tâches en arrière-plan. À ce moment-là, tous les éléments sont comparés avec tous les types de règles. Lorsqu’un élément satisfait à une règle, il est automatiquement approuvé. Voici les types de règles qui sont considérés lors de la comparaison :
Identifiant de paquet de l’application : L’identifiant du paquet de l’application à faire correspondre, lequel doit être une correspondance exacte.
Préfixe d’identifiant de paquet de l’application : Le préfixe de l’identifiant du paquet de l’application qui doit correspondre.
Identifiant d’équipe du développeur : L’identifiant de l’équipe provenant des attributs de signature du code, lequel doit être une correspondance exacte.
Étiquette du service : La valeur du paramètre de l’étiquette .plist de
launchd
à faire correspondre, laquelle doit être une correspondance exacte.Préfixe d’étiquette du service : Le préfixe du paramètre de l’étiquette .plist de
launchd
qui doit correspondre.
Pour en savoir plus, consultez les rubriques Exemple de gestion des tâches en arrière-plan et Réglages de l’entité de GAM Éléments gérés à lancer à l’ouverture.
Attributions provenant d’autres applications
Apple maintient un fichier de préférences nommé attributions.plist
qui contient de nombreuses applications d’aide ou des exécutables souvent employés pour une utilisation précise. Ces informations peuvent être utilisées pour vous aider à identifier les applications auxiliaires et les fichiers exécutables qui apparaissent dans les éléments de connexion d’un utilisateur au démarrage. Pour une référence complète de ces éléments courants et de leurs attributions, consultez le fichier situé à cet endroit :
/System/Library/PrivateFrameworks/BackgroundTaskManagement.framework/Versions/A/Resources/