Maison  >  Article  >  développement back-end  >  Comment récupérer une liste d’applications actives sous OS X ?

Comment récupérer une liste d’applications actives sous OS X ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-01 02:57:02708parcourir

How to Retrieve a List of Active Applications in OS X?

Identification des applications actives sous OS X

Question :

Obtenir une liste des applications actives bundles, en particulier les applications GUI que l'utilisateur a lancées, avec des informations au-delà des noms de processus.

Réponse :

En utilisant les frameworks Swift et Cocoa d'Apple, il est possible de par programme récupérez une liste des applications en cours d'exécution sous OS X.

<code class="swift">import Foundation
import AppKit

// Get all running applications
let workspace = NSWorkspace.shared
let applications = workspace.runningApplications

for app in applications {
    print(app)
}</code>

L'objet d'application résultant est une instance NSApplication qui contient les informations nécessaires, y compris l'identifiant du bundle souhaité.

Détails de l'implémentation :

  • La classe NSWorkspace donne accès aux informations au niveau du système sur les applications en cours d'exécution.
  • La propriété runningApplications renvoie un tableau d'instances NSApplication représentant les applications actives.
  • Chaque instance NSApplication contient une propriété bundleIdentifier qui identifie de manière unique le bundle d'application.

Remarques supplémentaires :

  • Cette approche est spécifique à OS X et utilise le code Objective-C et Swift.
  • Des fonctionnalités similaires peuvent être obtenues à l'aide d'API C de niveau inférieur, mais la solution ci-dessus s'avère suffisante pour la plupart des scénarios.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn