簡體   English   中英

MacOS 應用程序啟動事件?

[英]MacOS application launch event?

我想收集操作系統中運行的應用程序的統計信息。

所以我需要獲取應用程序啟動和退出的任何事件

存在一些嗎?

谷歌什么也沒說=(

您可以通過NotificationCenter監聽事件(例如NSWorkspaceDidLaunchApplicationNotification )。 請參閱以下文檔:

https://developer.apple.com/documentation/appkit/nsworkspacedidlaunchapplicationnotification

特別是,請查看“另請參閱 -> 響應環境通知”部分,其中列出了許多與此任務相關的通知。

此代碼目前不起作用(2022.08)- 由於錯誤https://github.com/apple/swift/pull/20757,change.oldValue和 change.newValue 目前是空的

但將來必須工作

class StatsCollector {
    var observer: NSKeyValueObservation
    
    init() {
        self.observer = NSWorkspace.shared
            .observe(\.runningApplications, options: [.initial]) { (model, change) in
                //some code
            }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM