applicationShouldTerminate не вызывается в AppDelegate и NSApplicationWillTerminateNotification не отправляется - PullRequest
1 голос
/ 21 октября 2019

Я использую XCode 11.1 на последней версии Catalina, и ни одно из событий выхода из моего приложения не вызывается. applicationShouldTerminate в AppDelegate, и при этом я не получаю NSApplicationWillTerminateNotification, если я наблюдаю его из любого места. Это из поведения выхода по умолчанию (с помощью команды выхода из меню Command-Q или закрытия окна с applicationShouldTerminateAfterLastWindowClosed с возвратом YES) из шаблона приложения XCode с использованием раскадровки по умолчанию.

Это происходит с совершенно новым Xcodeшаблон проекта (если я запускаю новый шаблон «App» macOS, затем добавляю метод applicationShouldTerminate к делегату приложения).

Вызываются другие методы делегата, например applicationShouldTerminateAfterLastWindowClosed.

Я что-то делаюужасно неправильно или что-то напутало с Каталиной?

Ответы [ 2 ]

5 голосов
/ 21 октября 2019

Ну, я понял это, потому что похоже, что NSSupportsSuddenTermination теперь включен по умолчанию.

0 голосов
/ 14 ноября 2019

NSSupportsSuddenTermination также называется «Приложение может быть немедленно отключено, когда пользователь завершает работу или выходит из системы» в XCode, и, по-видимому, включено по умолчанию.

Спасибо @ toastie

...