问题标签 [unnotificationserviceextension]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - NotificationServiceExtension 同时调用了两次
我看到奇怪的行为,不太确定如何解决它,任何人都知道如果会发生什么
同时被调用两次,基本上旧的通知 contentHandler 还没有被调用,我收到了新的通知??
哪些通知将显示旧/新或两者?
对我来说,它显示的是默认通知,即没有我在内部进行的任何修改。
有人可以帮帮我吗。谢谢!!
ios - 未调用 UNNotificationServiceExtension didRecieve
我在 apns 有效负载中添加了 mutable-content: 1 。还检查了部署目标。我仍然没有接到 didRecieve 方法的电话。我正在使用 XCode 12
注意:UNNotificationContentExtension 正在工作,但不是服务
ios - 升级版本数据库后Service Extension中的核心数据
我有一个现有的应用程序,通过应用程序组在主应用程序和通知服务扩展之间共享数据库。
在一个新的应用程序版本中,我必须为我的数据库添加一些属性以获得新功能,所以我将我的数据库从版本 1 升级到版本 2(我正在使用轻量级迁移),除了一个具有 Bool 值的属性(它是版本 1 中的旧属性),当我从通知服务扩展获取包含该属性的对象时,它始终返回 true,而我从主应用程序获取该对象时,它返回正确的值。
这发生在任何人身上吗?请帮我解决这个问题。谢谢!
xcode - Xcode - 使用 UNNotificationServiceExtension 时如何控制在控制台中显示哪些进程的日志?
我正在运行一个具有 UNNotificationServiceExtension 的应用程序。UNNotificationServiceExtensions 作为一个单独的进程运行。当收到推送通知时,将执行服务扩展,控制台从应用程序的输出切换到扩展的日志输出。
- 有没有办法阻止控制台切换?
- 如何在 2 个进程的日志输出之间切换?
现在我找到了一种解决方法来查看这两个日志。我使用Report Navigator
位于Project Navigator
. 我对此不是 100% 满意,因为它占据了整个屏幕并且不如在控制台中查看输出那么方便。
ios - UNNotificationServiceExtension 修改或删除已发送的推送通知
我正在使用 linphone 开发 iOS 门铃应用程序。当有人按门铃且 iOS 应用程序未激活时,手机上会显示推送通知,您可以单击它,应用程序打开,您可以接听门铃。
现在,想象一下一小时后看到推送通知。门口已经没有人了,所以一旦门铃停止响起,我想删除或更新推送通知。我UNNotificationServiceExtension
知道何时释放 sip 呼叫,所以我希望那时删除通知。
然而,似乎一旦我显示有人在门口的通知,我就不能再打电话了removeAllDeliveredNotifications
所以,这有效:
这不会:
当然,我想在显示通知后删除通知并给用户一些时间来单击它。有没有办法来解决这个问题?对我来说,另一个选择是能够将已经发送的推送通知更新为“有人在你家门口”之类的。
我希望能够做到这一点,serviceExtensionTimeWillExpire
但看到我已经打电话contentHandler(bestAttemptContent)
了,我不能再这样做了。
有任何想法吗?
push-notification - 通知服务扩展无法启动
我的 NSE(通知服务扩展)无法在某些未知设备上运行。我知道它是因为 (1) 它无法处理通知中传递的内容,并且 (2) 我检查了一台有此错误的设备,发现它无法启动。(通过 MITM,NSE 在收到通知时发送分析事件,但它没有)。
但是,这可以通过重新启动设备来解决。我不知道有多少用户遇到这个问题,所以我不知道这个问题是否普遍存在。
目前,由于 NSE 造成的 CPU/内存压力,系统似乎不允许我的扩展运行。我一开始以为它崩溃了,无法重启,但是手动崩溃扩展并没有带来相同的结果,扩展成功重启。
swift - 带有表情符号的推送通知(Firebase + iOS)
当我从 Firebase 控制台发送标题为 Hello \u{1F601} 的消息时,表情符号不会显示在 iOS 推送通知中。
原因是标题的类型是 Any?当我将它转换为字符串时,字符串变为“Hello \\u{1F601}”(双反斜杠)。
结果,表情符号不再被识别。
我正在使用 NotificationServiceExtension 并且已经尝试过
- 字符串(描述:“\u{1F601}”)
- "\u{1F601}".replacingOccurrences(of: "\\", with: "")
- NSString 转字符串
还没有任何效果。是否可以强制转换类型 Any?到只有 1 个反斜杠的字符串?使用表情符号发送推送通知的最佳方式是什么?
提前致谢!
swift - 究竟什么时候会调用 notificationServiceExtension?
我目前正在设计一个应用程序,并且想知道,如果用户禁用了该应用程序的警报通知,是否会notificationServiceExtension
被调用。
我正在考虑使用扩展didReceive
方法来保存应用程序收到的所有通知。
在我的理论中,由于工作场所的事情我还没有开始编码,所以当 iOS 收到通知时,它似乎根本不会被调用。尽管在 Apples 文档中说,运行方法的两个因素是选择的mutable-content
标签和alert
类型。
我正在寻找一种避免使用的方法,application didReceiveRemoteNotification
因为一些关于该方法的报告没有被尽可能多地调用。
长话短说,将notificationServiceExtension didReceive
是保存通知内容的一个很好的替代方案application didReceiveRemoteNotification
,或者由于存在风险,用户可以使用application didReceiveRemoteNotification
更安全可靠的方式禁用警报通知?
谢谢,
ios - 构建错误:添加通知服务扩展时找不到“React/RCTBridge.h”文件
每当我为 iOS添加时,我的 RN 应用程序总是构建失败。Notification Service Extension
错误如下所示:
尝试了很多在网上找到的解决方案,但它们似乎都不适用于我的情况。我尝试过一些简单的清洁,例如:
- 纱线清洁
- 干净的构建和重新构建
- 移除 pod 并重新安装
- 删除派生数据
- 退出并打开 XCode
- 重新启动我的 MAC
不确定需要什么,因为失败在Notification Service
目标上。不是主应用程序本身。我试图遵循实施指南,但到处都是一样的,非常直接和简单。只需添加目标并创建应用 ID 即可。没有提到其他文件中的一些调整,也许我需要在 info.plist 或其他任何东西上添加额外的内容?
我目前正在使用XCode 12.4。
知道应该做些什么来避免这个问题吗?
ios - 在 Notification 中处理多个内容扩展
我必须使用通知内容和服务扩展为多个类别显示不同的 UI,例如,一个 UI 可以有一个只有标题和副标题的图像,另一个可以有一些带有目标按钮的信息。如何作为内容扩展处理具有默认 ViewController 类的单个故事板。任何答案将不胜感激。