iOS 15:启用 "Configure in App" 通知选项
iOS 15: Enabling "Configure in App" option for notifications
在 iOS15 中,通知中心进行了一些大修。现在可以向左滑动通知并在一些“选项”之间进行选择。所有这些选项都与显示通知的应用程序的通知设置有关。
我注意到一些应用程序有一个附加选项,允许用户配置应用程序内通知设置。我在弄清楚如何启用此选项时遇到问题。
这是一个 Snapchat 的例子,它有一个额外的选项,“在 Snapchat 中配置”
Screenshot of example
我已经尝试阅读有关 UNUserNotificationCenter 的 Apple 文档,但没有找到任何提及此选项的内容。
注意:这似乎与 UNNotificationAction 无关,因为它在长按通知时添加了选项。
@dan 是对的!
从 UNUserNotificationCenter 请求推送授权时,应添加 UNAuthorizationOptionProvidesAppNotificationSettings
作为选项。
var options: UNAuthorizationOptions = [.alert, .sound, .badge]
if #available(iOS 12.0, *) {
options.insert(.providesAppNotificationSettings)
}
UNUserNotificationCenter.current().requestAuthorization(options: options) {
pushAuthStatus, _ in
DispatchQueue.main.async {
UIApplication.shared.registerForRemoteNotifications()
completion(pushAuthStatus)
}
}
那么你需要做的就是在UNUserNotificationCenterDelegate
中添加下面的函数来处理当用户点击新添加的选项时发生的事情。
func userNotificationCenter(_: UNUserNotificationCenter, openSettingsFor _: UNNotification?) {
// Route to settings view
}
在 iOS15 中,通知中心进行了一些大修。现在可以向左滑动通知并在一些“选项”之间进行选择。所有这些选项都与显示通知的应用程序的通知设置有关。
我注意到一些应用程序有一个附加选项,允许用户配置应用程序内通知设置。我在弄清楚如何启用此选项时遇到问题。
这是一个 Snapchat 的例子,它有一个额外的选项,“在 Snapchat 中配置”
Screenshot of example
我已经尝试阅读有关 UNUserNotificationCenter 的 Apple 文档,但没有找到任何提及此选项的内容。
注意:这似乎与 UNNotificationAction 无关,因为它在长按通知时添加了选项。
@dan 是对的!
从 UNUserNotificationCenter 请求推送授权时,应添加 UNAuthorizationOptionProvidesAppNotificationSettings
作为选项。
var options: UNAuthorizationOptions = [.alert, .sound, .badge]
if #available(iOS 12.0, *) {
options.insert(.providesAppNotificationSettings)
}
UNUserNotificationCenter.current().requestAuthorization(options: options) {
pushAuthStatus, _ in
DispatchQueue.main.async {
UIApplication.shared.registerForRemoteNotifications()
completion(pushAuthStatus)
}
}
那么你需要做的就是在UNUserNotificationCenterDelegate
中添加下面的函数来处理当用户点击新添加的选项时发生的事情。
func userNotificationCenter(_: UNUserNotificationCenter, openSettingsFor _: UNNotification?) {
// Route to settings view
}