问题标签 [pushkit]

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 投票
2 回答
16806 浏览

ios - 如何发送推送通知以在线测试 iOS PushKit 集成?

我已经实现了 PushKit。现在我想获得推送通知。由于我们有许多接受设备令牌和 .pem 文件以发送远程通知的在线 APNS 服务,因此有没有办法在线获取推送通知?

0 投票
0 回答
96 浏览

ios - iOS 8.x 应用程序在后台启动时崩溃

我正在使用 PushKit 开发一个 VoIP iOS 应用程序。收到 PushKit 有效负载消息后,应用程序应该在后台状态下启动。收到有效负载后,我正在启动一个套接字并将其与服务器连接。在 iOS 9+ 设备上一切正常。但我有应用程序崩溃的 iPhone 5c (iOS 8.1) 设备。我无法弄清楚崩溃的原因。

崩溃后我得到的这个堆栈跟踪

0 投票
1 回答
232 浏览

ios - 在不加载情节提要或其他交互功能的情况下处理 PushKit 有效负载

我们有一个使用 PushKit 来接收通知的应用程序。(它不是 VoIP 应用程序,但由于是在医疗保健领域有特定需求的特殊应用程序类别,我们从 Apple 获得了使用 PushKit 的特许权)。

当应用程序未运行且 PushKit 通知进来时,系统将应用程序启动到后台并调用推送工具包委托负载处理器 (PKPushRegistryDelegate pushRegistry:didReceiveIncomingPushWithPayload:forType:)。然后应用程序再次关闭。该应用程序永远不会达到图形交互状态。

这很好,应该如何。但是,iOS 会启动完整的应用程序,加载故事板和所有内容。此外,在 UIApplicationDelegate application:willFinishLaunchingWithOptions: 中,启动选项为 nil,因此您不知道您正在启动以处理推送套件并且不会进行交互。

这给我们带来了问题,因为我们的应用程序对资源、服务器连接等进行了完整的“大量”设置,这些资源、服务器连接等不需要也不应该设置为仅处理 PushKit 通知。这给我们带来了一些问题,因为某些正在连接的东西(服务器连接等)会导致一些我们在处理 PushKit 时不想要的行为(然后应用程序消失)。

有没有办法知道您是出于 pushkit 目的而启动的,而不是进行通常发生的所有应用程序设置?(如果应用程序随后转换为 Active,我们应该能够使用正常的活动状态转换来完成设置)

0 投票
0 回答
211 浏览

ios - iOS 10 本地通知在屏幕解锁时提前解除

我最近切换到使用PushKit和实现local notifications,这样我就可以做一些事情,比如在另一个用户“呼叫”时让电话响起,并在呼叫者挂断后立即关闭通知。

我通过使用来做到这一点pushkit,当来电者呼叫时,pushkit会发送一个推送并local notification播放一个声音(重复)28秒的通知,以便在声音播放时通知一直保持(至少在较旧的iOS版本中) . 并且当主叫挂断时,再发送一次pushkit推送,取消之前的本地通知,弹出另一个“未接来电”。如果来电者没有挂断,则通话在 20 秒后超时,然后发送“未接来电”通知。

所以我的问题iOS 10,如果屏幕被解锁,无论呼叫者做什么,“响铃”通知都会在大约 6-7 秒后消失。然后当来电者挂断时,会显示“未接来电”通知。

打开iOS 9iOS 8,通知会一直显示在用户屏幕上,直到用户挂断或通话超时。

如果屏幕解锁,您是否需要在 iOS 10 中做一些特别的事情才能使本地通知在屏幕上停留的时间超过 6-7 秒?

0 投票
1 回答
1045 浏览

ios - 如何用 setKeepAliveTimeout 方法替换 UIRemoteNotificationTypeVoip 方法?

在我的 XCode 项目中,我使用了如下代码setKeepAliveTimeout中的方法。applicationDidEnterBackground

它表明该setKeepAliveTimeout方法已被弃用,他们想要使用UIRemoteNotificationTypeVoip方法。

我搜索了UIRemoteNotificationTypeVoip方法,但没有给出足够的结果。甚至developer.apple.com没有该方法的文档。

问题:如何更改使用的UIRemoteNotificationTypeVoip地方setKeepAliveTimeout

如果有人知道,请给我一个答案。

提前致谢!

0 投票
0 回答
625 浏览

ios - 带有 VOIP 的 PushKit 工作不稳定

我在 iOS 上使用 Linphone lib(和服务器上的 Flexisip)在 iOS 上构建 VoIP 应用程序。

一切运作良好。仅当移动应用程序处于后台模式并有来电时,我的应用程序有时不工作(不唤醒并接听来电)。

当来电时,Flexisip 服务器将请求 APNS 将通知推送到目标移动应用程序。我的移动应用程序将使用 PushKit 接收和处理此通知(如显示来电屏幕)

但是,有时它不起作用。

0 投票
1 回答
2737 浏览

ios - iOS PushKit 注册在 iOS10 上不起作用

我正在为 iOS 10 的 VoIP 应用程序实现PushKit 。

我在AppDelegate.swift文件中写了这段代码:

我启用了这些背景模式: 在此处输入图像描述

但是当我启动应用程序时,没有一个代表被调用。
它也不适用于 iOS 9。

0 投票
1 回答
4016 浏览

ios - Pushkit VoiP 推送通知唤醒应用程序执行时间

当我从后台删除应用程序(使用开发人员 APNS)时收到 VoIP 推送通知时,我的应用程序会唤醒大约 10 分钟。
当我做同样的事情时,只是这次使用生产 APNS,我的应用程序会唤醒 8-10 秒。
那里有什么诀窍?为什么至少 30 秒不能唤醒应用程序的生产版本?有什么办法可以延长起床时间,因为 10 秒不足以完成我必须做的所有工作?

编辑

最后后台时间没有问题。当完全删除表单背景并被 voip notif 唤醒时,我的应用程序崩溃了。我在想这不是崩溃,而是执行时间有限。当我修复那个崩溃时,一切都在正常工作。

0 投票
1 回答
1214 浏览

notifications - 锁定屏幕时,voip 推送通知在 iOS 10 上不起作用

我正在使用 PushKit 向我的 APP 发送 voip 推送通知。它适用于 iOS 9 及更低版本。

但最近我被报道说,当他们的手机处于锁屏模式(在 iOS 10 上)时,用户无法接收通知。

我对它做了一些测试,在iOS 9上,无论屏幕是否锁定,都会收到所有通知。另一方面,在 iOS 10 上,当收到通知时,屏幕会变亮,但没有其他信息,没有声音,没有通知横幅。也就是说,如果手机处于锁屏模式,放在口袋里,来电时永远不会收到通知。

有人有同样的问题吗?

0 投票
1 回答
3497 浏览

ios - 当应用程序终止并且手机被锁定时,VOIP Push 代表不会被调用

我正在处理 VOIP 应用程序,当应用程序处于前台或后台时,我也收到了 voip 推送,但是当应用程序终止或强制退出并且 iPhone 进入锁定模式时……设备获取 voip 推送(我在设备控制台中检查)

didFinishLaunchingWithOptions被调用,但pushkit委托不调用。我也正在使用呼叫套件来接听来电。

1)当应用程序在前台时......推送工作

2)应用程序从后台删除并锁定手机......在设备中推送接收但pushkit代表不调用..问题

任何人都可以请建议,我该如何克服这个问题?