我想收集在操作系统中运行的应用程序的统计信息。
所以我需要获取应用程序启动和退出的任何事件
有没有?
谷歌什么也不说=(
您可以通过NotificationCenter
监听事件(如NSWorkspaceDidLaunchApplicationNotification
(。请参阅以下文档:
https://developer.apple.com/documentation/appkit/nsworkspacedidlaunchapplicationnotification
特别是,请查看另请参阅->响应环境通知部分,其中列出了许多与此任务相关的通知。
此代码当前不起作用(2022.08(-change.oldValue&由于错误,change.newValue当前为空https://github.com/apple/swift/pull/20757
但必须在未来的中工作
class StatsCollector {
var observer: NSKeyValueObservation
init() {
self.observer = NSWorkspace.shared
.observe(.runningApplications, options: [.initial]) { (model, change) in
//some code
}
}
}