gpt4 book ai didi

ios - 引导式访问阻止显示用户通知 - 如何解决? ( swift 3)

转载 作者:行者123 更新时间:2023-11-28 06:22:49 25 4
gpt4 key购买 nike

我的应用程序在整个应用程序的随机点向用户显示用户通知(在屏幕顶部弹出)(它们从服务器远程触发,即当另一个用户向它们发送消息时),使用用户通知框架。

当未处于引导访问模式时,通知会完美运行,并且当用户在应用程序中时它们会正确触发。

这来自 app-delegate 以启用在应用内显示的通知:

extension AppDelegate : UNUserNotificationCenterDelegate {
func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {
completionHandler(.alert)
}

这是触发通知的方式(当从 Firebase 触发事件时):

 func sendNotification(notTitle: String, notSubtitle: String, notBody: String) {
let notif = UNMutableNotificationContent()
notif.title = notTitle
notif.subtitle = notSubtitle
notif.body = notBody

let notifTrigger = UNTimeIntervalNotificationTrigger(timeInterval: 0.1, repeats: false)
let request = UNNotificationRequest(identifier: "myNotification", content: notif, trigger: notifTrigger)
UNUserNotificationCenter.current().add(request, withCompletionHandler: nil)
}

所以以上所有工作正常。

但我的问题是,一旦应用程序进入引导访问模式(三次点击主页按钮 - 密码将设备锁定到我的特定应用程序),通知将不会显示。引导式访问以某种方式阻止了它们。

我的应用程序必须处于引导访问状态,因为它是由设施中的实体员工提供给客户的。

有没有办法防止引导访问模式阻止用户通知?或者我必须在 app-delegate 中包含一些功能?

我在 SO 或网络上找不到任何关于此问题的信息。任何帮助将不胜感激

最佳答案

用户通知通常用于在用户不在应用程序中时通知用户一些事情,当用户点击它时应用程序将打开。出于这个原因,Guided Access 的目的是阻止用户通知,因为它们通常与其他应用程序绑定(bind)。我不知道解决这个问题的方法。

最好的办法可能是在应用程序本身中为值得通知的事情创建某种视觉指示。您仍然可以使用用户通知,但是当用户已经在应用程序中时,您可以进行一些自定义视觉指示以指示收到新消息等。

关于ios - 引导式访问阻止显示用户通知 - 如何解决? ( swift 3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42844711/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com