Sinch:用户第一次没有接到电话

时间:2018-04-07 21:47:46

标签: swift voip sinch callkit pushkit

我实施了Sinch + PushKit + CallKit,一切正常,但有一个脚本无法正常运行。第一个用户使用该应用程序并将其从设备的内存中删除,第二个用户第一次呼叫,第一个用户不接收呼叫,如果第二个用户立即呼叫第二个用户,则第一个用户收到一个电话(后来第一个用户也接到一个电话)。如果第一个用户打开应用程序(即,系统在线),则第一个用户将不再接收该呼叫。我该如何解决?

初始化sinch客户端

open func setup() {
        guard sinch == nil else { return }
        guard let userID = UserRealmManager().getUser()?.id else { return }
        sinch = Sinch.client(withApplicationKey: key, applicationSecret: secret, environmentHost: host, userId: userID)
        sinch?.delegate = self
        sinch?.call().delegate = self

        sinch?.setSupportCalling(true)
        sinch?.enableManagedPushNotifications()
        sinch?.setSupportPushNotifications(true)

        sinch?.start()
        sinch?.startListeningOnActiveConnection()
    }

更新:我还发现,如果我重新启动iPhone,那么通过CallKit的电话会在2-4分钟后开始显示,我决定在着名的消息来测试它,比如What'的应用程序和电报,他们有完全相同的行为。当然,我认为需要另外提出一个问题。

我的设备是iPhone 6和7。

1 个答案:

答案 0 :(得分:1)

这是我的错误,因为我在SinchManager SINClient中初始化后,我MainTabBarController(这是管理viewDidLoad()的经理)初始化了AppDelegate {1}} didFinishLaunchingWithOptions,一切正常。