问题标签 [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.

0 投票
1 回答
4689 浏览

ios - 隐藏通过 NotificationService 扩展收到的通知

我使用 NotificationService Extension 目标能够在推送通知出现之前对其进行修改。它运行良好,但有一些通知在处理后我不想呈现给用户。

我尝试将 bestAttemptContent 标题和正文设置为“”,但它会返回完整的通知。

我也尝试将 aps["content-available"] 设置为 1 并将 body 设置为 "" 但我得到了相同的效果。

0 投票
1 回答
1649 浏览

ios - 无法将调试器附加到 UNNotificationServiceExtension

我无法在 UNNotificationServiceExtension 中使用调试器。

这是我在尝试将调试器附加到 UNNotificationServiceExtension 时所做的:

  1. 运行应用
  2. 在“测试”UNNotificationServiceExtension 中设置断点
  3. 选择调试 > 按 PID 或名称附加到进程 > 选择“测试”UNNotificationServiceExtension
  4. XCode 表示“Testing is waiting to attach”

  1. 然后我发送一个推送通知,我的 iPhone 显示通知,但调试器没有命中断点。相反,XCode 显示“Thread1:signal SIGKILL”。

线程 1:信号 SIGKILL

有谁知道如何让调试器在 UNNotificationServiceExtension 中工作?

0 投票
1 回答
500 浏览

ios - 如何在通知服务扩展中检测主机应用程序状态?

通知服务扩展下载媒体文件以将其显示为UNNotification. 但是当宿主应用程序在前台时,不会显示任何通知,因此通知扩展程序不需要下载媒体文件。

根据应用程序状态,如何防止下载?

0 投票
0 回答
82 浏览

objective-c - 忽略通知服务扩展目标 C 中的 SIGPIPE

我有一个带有通知服务扩展的信使应用程序,用于处理通知并运行AFHTTPSessionManager服务。当我收到第一个通知时,我收到一个 SIGPIPE 错误并且扩展程序崩溃并且我丢失了通知中心的所有通知。

如何在通知服务扩展中忽略 SIGPIPE?

如何使用信号(sigpipe sig_ign)?

SIGPIPE 错误

0 投票
1 回答
1021 浏览

ios - 是否可以在通知服务扩展中获取 apns-collapse-id?

我正在尝试访问以apns-collapse-id根据某些条件更改通知的内容。可以apns-collapse-id在扩展中访问吗?

0 投票
2 回答
733 浏览

ios - 丰富的推送通知不适用于 IOS 中的 FCM

我已经在我的项目中添加了丰富的推送通知UNNotificationServiceExtension。请参考下面我添加的代码。UNNotificationContentExtension


代码:

我正在使用以下有效负载

问题是我没有收到通知。我使用以下教程来实现丰富的推送通知。我检查了可用的不同答案,但没有一个对我有用。我还尝试通过附加扩展进程来调试 didReceiveNotificationRequest 方法,但未触发断点。

https://mobisoftinfotech.com/resources/mguide/ios-10-rich-notifications-tutorial/

0 投票
1 回答
460 浏览

objective-c - 如何在 iOS 的通知中创建 ProgressBar?

有什么方法可以在 ios 中实现一个进度条来显示它是在我提到的本地通知中上传或下载。

那么有什么方法可以在其中实现进度视图...我是 iOS 开发新手

0 投票
1 回答
6124 浏览

ios - 未调用 UNNotificationServiceExtension 的 didRecieve

我一步一步地获得丰富的推送通知。他们来了 :

  1. 使用 plist 创建通知服务扩展:

在此处输入图像描述

NotificationService didRecieve

  1. 为扩展配置了 AppId 和配置文件。

丰富的通知来了正确:

在此处输入图像描述

但这是我面临的问题:

  1. didRecieve 没有被调用。为此,我将 serviceExtension 进程附加到应用程序目标并运行该应用程序。
    注意:一旦通知到达,就会调用扩展程序,但不调用 didRecieve:

在此处输入图像描述

  1. 打开推送通知(有视频附件)时,什么也没有发生。理想情况下,它应该被播放。
  2. 如果我必须打开视频并播放它,我是否必须明确地做某事或扩展程序会解决这个问题?

有效载荷


我确实尝试过以下帖子,但这没有帮助:

iOS10 UNNotificationServiceExtension not called
NotificationServiceExtension not called
UNNotificationServiceExtension 在 iPhone 5 (iOS 10) 上不起作用

0 投票
2 回答
1441 浏览

ios - iOS 推送通知服务扩展不一致的工作

  • 在我们的应用程序中,我们使用推送通知通知用户,但如果用户没有收到推送(例如用户的设备离线),那么我们会向他发送短信。
  • 由于 APNs 不提供交付报告,我们实现了自己的使用服务扩展向后端服务器发送报告的方法:

    • 当应用程序收到推送通知时,它会在服务扩展的方法中向后端发送一个 http-request -

      didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void)

可以在 30 秒内完成获取作业或发出 http 请求。

但是,有时用户会抱怨同时接收 SMS 和 PUSH。

当我们检查 DB 中的日志时,没有来自这些设备的 PUSH 交付报告。

我的问题是:

  1. 服务扩展是否有可能无法启动?
  2. 有关如何解决此类错误的任何建议?
0 投票
1 回答
193 浏览

ios - 我们可以避免显示推送通知吗

有一种情况,我需要检查用户是否应该根据他的位置接收推送通知。我知道这UNNotificationServiceExtension有助于我们拦截通知并有助于构建推送内容。但是,对于此类或其他任何地方,我们是否有可能通过检查用户的位置不显示推送通知?

这并不意味着我每次都想这样做。但只有当我的条件不满足时。在通知内容中,我正在获取用户的最后跟踪位置,我将使用该位置与用户的当前位置进行比较。
我经历了这个,但没有得到令人信服的答案。
注意:我不是在寻找静默推送通知解决方案。