Macbookのフタ閉じた時のイベントって取れるの?
気になったので調べてみました。
簡単にコピペで使えるように、コードを貼ってみます。
ObjCのかたは、下の参考リンクのところからジャンプ先を見てみてください。
まだ実際、軽くしか動作確認できていないので、もしかしたらちゃんと動かないかもです。
ViewController.swift
import Cocoa
class ViewController: NSViewController {
override func viewDidLoad() {
super.viewDidLoad()
// 通知を受け取ることができるように設定する
let notificationCenter = NSWorkspace.sharedWorkspace().notificationCenter;
notificationCenter.addObserver(
self,
selector: #selector(receiveSleepNote(_:)),
name: NSWorkspaceWillSleepNotification,
object: nil
)
notificationCenter.addObserver(
self,
selector: #selector(receiveWakeNote(_:)),
name: NSWorkspaceDidWakeNotification,
object: nil
)
}
// スリープされた瞬間に通知を受け取る
func receiveSleepNote(n:NSNotification) {
print("receiveSleepNote: ", n.name)
}
// スリープ解除された瞬間に通知を受け取る
func receiveWakeNote(n:NSNotification) {
print("receiveWakeNote: ", n.name)
}
}