swift - 您可以同时为远程 VOIP 呼叫 (PKPushRegistry) 和本地 VOIP 呼叫 (NEAppPushManager) 注册应用程序吗?
问题描述
以前我的应用程序只收到来自 APNs 的 VOIP 推送来处理呼叫。但在某些情况下,我想使用在 iOS 14 中发布的新 API NEAppPushManager 和 NEAppPushProvider 来处理本地网络上的 VOIP 呼叫,而不是使用 APNs。
我在 AppDelegate didFinishLaunchingWithOptions 中为这样的 VOIP 呼叫注册了我的应用程序:
NEAppPushManager.loadAllFromPreferences { [weak self] (managers, _) in
if let managers = managers {
for manager in managers {
manager.delegate = self
}
}
DispatchQueue.main.async {
voipRegistry = PKPushRegistry(queue: DispatchQueue.main)
voipRegistry?.delegate = self
voipRegistry?.desiredPushTypes = [.voIP]
}
}
只要我选择两种类型的接收 VOIP 呼叫中的一种,这种方法就可以很好地工作。好像我只收到我最后注册的类型的 VOIP 呼叫。有没有办法同时从 APNs 和我与 NEAppPushManager 的本地连接注册 VOIP 推送,还是我必须选择一个?
解决方案
推荐阅读
- c++ - 多态性 - 指向类程序无法编译
- c - 与外部传递数据的错误值
- python - 当您的脚本使用批处理文件时 Python 到 Exe
- c# - c#当javascript版本为201时httpclient返回400错误
- android - database.execSQL(sql) 方法使我的模拟器崩溃
- python - List of coroutines, wait until at least one yielded in Python
- python - Sklearn - 按类别分组并从每个数据框类别中获取前 n 个单词?
- laravel - Laravel 有没有办法忘记视图中的会话变量?
- html - 如何将视频从谷歌云存储流式传输到 iOS Safari
- html - 导航栏品牌切换器打开导航栏内容向右对齐然后跳转到居中?