Совместное использование экрана – это полезная функция, доступная в MacOS, которая позволяет вам делиться своим экраном с другими для совместной работы или удаленной помощи. Однако это может быть неудобно, если вы не знаете, когда кто-то начинает демонстрацию экрана. В этой статье мы рассмотрим несколько методов с примерами кода, которые помогут вам отображать уведомления при совместном использовании вашего экрана в MacOS. Давайте погрузимся!
Метод 1: использование AppleScript с терминалом
AppleScript — это язык сценариев, предоставляемый Apple, который позволяет вам управлять различными аспектами MacOS. Мы можем использовать AppleScript и Терминал для отображения уведомлений при запуске совместного использования экрана.
- Открыть терминал.
- Введите следующую команду и нажмите Enter:
sudo defaults write /Library/Preferences/com.apple.RemoteManagement RestoreMachineState -bool NO
- Выполните аутентификацию с помощью пароля администратора.
- Создайте новый файл AppleScript со следующим кодом:
on idle if (do shell script "defaults read /Library/Preferences/com.apple.RemoteManagement RestoreMachineState") contains "0" then display notification "Screen is being shared." with title "Screen Sharing" end if return 1 end idle
- Сохраните файл с расширением.scpt, например ScreenSharingNotifications.scpt.
- Откройте «Редактор сценариев» на своем Mac («Finder» >«Приложения» >«Утилиты» >«Редактор сценариев»).
- Перейдите в меню «Файл» >«Открыть» и выберите только что сохраненный файл.scpt.
- Нажмите кнопку «Выполнить» или нажмите Command + R, чтобы запустить скрипт.
- Скрипт будет работать в фоновом режиме и отображать уведомление при каждом запуске совместного использования экрана.
Метод 2. Использование языка программирования Swift.
Если вы предпочитаете более ориентированный на код подход, вы можете использовать язык программирования Swift для отслеживания событий совместного использования экрана и отображения уведомлений.
- Создайте новый файл Swift, например ScreenSharingNotifications.swift.
-
Добавьте в файл следующий код:
import Foundation import ApplicationServices class ScreenSharingObserver { var observer: Any? func startObserving() { observer = NSWorkspace.shared.observe(\.isScreenSharingEnabled, options: [.new]) { _, change in if let isSharing = change.newValue, isSharing { displayNotification(title: "Screen Sharing", message: "Screen is being shared.") } } } func stopObserving() { observer = nil } private func displayNotification(title: String, message: String) { let notification = NSUserNotification() notification.title = title notification.informativeText = message NSUserNotificationCenter.default.deliver(notification) } } let observer = ScreenSharingObserver() observer.startObserving() RunLoop.current.run()
- Сохраните файл.
- Откройте терминал и перейдите в каталог, в котором сохранен файл.
- Скомпилируйте файл Swift с помощью следующей команды:
swiftc -o ScreenSharingNotifications ScreenSharingNotifications.swift
- Запустите скомпилированную программу:
./ScreenSharingNotifications
- Программа будет работать в фоновом режиме, отслеживая события демонстрации экрана и отображая уведомления при запуске демонстрации экрана.
Применив один из описанных выше методов, вы можете быть уверены в том, что будете получать уведомления всякий раз, когда на вашем устройстве MacOS инициируется демонстрация экрана. Независимо от того, предпочитаете ли вы использовать AppleScript или программировать на Swift, эти решения помогут вам оставаться в курсе во время совместных сеансов или сценариев удаленной помощи.
Не забудьте выбрать метод, который соответствует вашим предпочтениям и техническим знаниям. Наслаждайтесь более удобным демонстрацией экрана на MacOS!