在 iOS 15 上查询焦点模式的 API 是什么?

What's the API for querying Focus mode on iOS 15?

iOS 15介绍了Focus模式。 Apple 提到通讯应用程序可以查询设备当前是否处于焦点状态,这样我们就可以告诉对方他们可能不会收到消息通知。但是我在苹果文档中找不到 API 。有人知道吗?

我认为这可能有帮助:https://developer.apple.com/documentation/sirikit/infocusstatus

Apple 在他们的 iOS 15 开发者网站上声明如下,“通过 Focus,用户可以在最适合他们的时间发送通知,并且通过中断级别 API,您可以提供通过四个中断级别之一(包括新的被动和时间敏感级别)进行更细致的交付。” (来源:apple.com

如果以上 link 没有帮助,也许上面的引述会有所帮助。

https://developer.apple.com/forums/thread/682143

焦点状态中心

import Intents

/// Retrieve the current authorization status: INFocusStatusAuthorizationStatus
INFocusStatusCenter.default.authorizationStatus

/// Request authorization to check Focus Status
//
INFocusStatusCenter.default.requestAuthorization { status in
    /// Provides a INFocusStatusAuthorizationStatus
}

/// Check if Focus is enabled. INFocusStatusAuthorizationStatus must be .authorized
INFocusStatusCenter.default.focusStatus.isFocused

您需要将 NSFocusStatusUsageDescription 添加到 Info.plist

https://onesignal.com/blog/ios-notification-changes-updates-from-apples-wwdc-21/