Sinch APN不应该再打电话

Sinch APN不应该再打电话,sinch,Sinch,我无法使Apple推送通知在开发模式下工作。当目标设备处于后台模式时,从不在源设备上调用shouldSendPushNotifications方法。我已将我的APN开发证书上传到Sinch仪表板中,如果两台设备都处于前台模式,即时消息功能将正常工作。我有一个有效的设备令牌,用于我自己的推送消息。这是我的密码: sinCli = Sinch.clientWithApplicationKey("XXXX", applicationSecret: "XXXX", environmentHost: "s

我无法使Apple推送通知在开发模式下工作。当目标设备处于后台模式时,从不在源设备上调用shouldSendPushNotifications方法。我已将我的APN开发证书上传到Sinch仪表板中,如果两台设备都处于前台模式,即时消息功能将正常工作。我有一个有效的设备令牌,用于我自己的推送消息。这是我的密码:

sinCli = Sinch.clientWithApplicationKey("XXXX", applicationSecret: "XXXX", environmentHost: "sandbox.sinch.com", userId: sinchUserId)

    sinCli.delegate = self
    sinCli.setSupportMessaging(true)

    if let deviceToken = defaults.dataForKey(Globals.KEY_APN_DEVICE_TOKEN)
    {
        sinCli.setSupportPushNotifications(true)
        sinCli.registerPushNotificationDeviceToken(deviceToken, type: SINPushTypeRemote, apsEnvironment: SINAPSEnvironment.Development)
        sinCli.setPushNotificationDisplayName("MyApp")
    }

    sinCli.start()
    sinCli.startListeningOnActiveConnection()

    sinCli.messageClient().delegate = self

我忘了什么吗?

我想我需要看看您的swift包装器,但看起来您几乎是在为推送(非托管)设置客户端,然后为托管推送注册令牌。
当使用托管推送时(当您上传到cert给我们时),永远不会调用shouldSendPush,因为Sinch负责推送,所以您应该得到一个推送。您需要的是一个推送代理

我现在使用的是SinchService框架,而不是SINClient,它工作得很好是的,但我仍然想解决一个问题:在我的设置中,我可以关闭推送通知,但由于SinchService仅在启用推送通知的情况下工作,因此如果用户在设置中禁用推送通知,我必须使用SINClient。这有点麻烦,如果我可以在这两种情况下都使用SinchService会更好。我不太确定我是否理解,而且感觉它与这个问题无关?