首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CallKit防止调用PushKit

CallKit防止调用PushKit
EN

Stack Overflow用户
提问于 2018-09-19 10:46:03
回答 1查看 492关注 0票数 0

我在我的PushKit应用程序中使用CallKit和CallKit发送和接收电话。我的问题是,当应用程序被杀死,我接到一个电话,didReceiveIncomingPushWith被调用,我显示一个本机调用屏幕使用这一行。

代码语言:javascript
复制
provider.reportNewIncomingCall(with: currentCallID, update: update, completion: { error in })

但是,一旦调用了这一行并出现了本机呼叫屏幕,如果呼叫者取消了呼叫,didReceiveIncomingPushWith就再也不会被调用了。

奇怪的是如果我评论这句话

代码语言:javascript
复制
provider.reportNewIncomingCall(with: currentCallID, update: update, completion: { error in })

didReceiveIncomingPushWith正被完美地称为。

有人有什么解释/解决办法吗?

编辑

我使用的是XMPP服务器,它打开了一个套接字,如果我在didReceiveIncomingPushWith方法中关闭这个套接字,它就能工作(但是会导致另一个问题,因为那里的连接丢失了,所以我无法回答)。

EN

回答 1

Stack Overflow用户

发布于 2018-09-19 11:11:15

每当取消呼叫/终端时,请始终调用并通知系统,使用此方法已更改了调用的状态。

Objective-C

代码语言:javascript
复制
[provider reportCallWithUUID: currentCallID endedAtDate:endingDate reason:(CXCallEndedReasonDeclinedElsewhere)];

斯威夫特

代码语言:javascript
复制
provider.reportCall(with: currentCallID, endedAt: endingDate, reason: .declinedElsewhere)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52404067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档