使用 Sinch 的即时消息推送通知未在 iOS 上提供

Posted

技术标签:

【中文标题】使用 Sinch 的即时消息推送通知未在 iOS 上提供【英文标题】:Instant Message Push Notification Using Sinch not coming on iOS 【发布时间】:2016-06-01 19:49:51 【问题描述】:

[![在此处输入图像描述][1]][1]我已经提到了所有字段,但我仍然没有收到推送通知。 这是我的代码:

首先在 didFinishLaunchingWithOptions 我称之为:

        self.push = Sinch.managedPushWithAPSEnvironment(.Production)
        self.push?.delegate = self
        self.push?.setDesiredPushTypeAutomatically()

        client = Sinch.clientWithApplicationKey("xxxxxx", applicationSecret: "xxxxxxx", environmentHost: "sandbox.sinch.com", userId: userID)
        client?.delegate = self
        client?.setSupportMessaging(true)
        client?.setSupportPushNotifications(true)
        client?.enableManagedPushNotifications()
        client?.start()
        client?.startListeningOnActiveConnection()

        self.push?.registerUserNotificationSettings()

func managedPush(managedPush: SINManagedPush!, didReceiveIncomingPushWithPayload payload: [NSObject : AnyObject]!, forType pushType: String!) 

        self.client?.relayRemotePushNotification(payload)
    


func application(application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData) 

        let tokenChars = UnsafePointer<CChar>(deviceToken.bytes)
        var tokenString = ""

        for i in 0..<deviceToken.length 
            tokenString += String(format: "%02.2hhx", arguments: [tokenChars[i]])
        

        self.push?.application(application, didRegisterForRemoteNotificationsWithDeviceToken: deviceToken)
    


func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) 
        self.push?.application(application, didReceiveRemoteNotification: userInfo)
    

我还在我的 sinch 仪表板中上传了推送证书。

我可以知道我在这段代码中遗漏了什么,这可能是我没有得到推送的原因。

已编辑:

这是Sinch Dashboard上上传的推送分发证书的图片。

http://i.stack.imgur.com/d6PVb.png

【问题讨论】:

你的问题解决了吗,谁能帮帮我,我将不胜感激 【参考方案1】:

你不应该有客户端?.setSupportPushNotifications(true) 那是你想要自己处理推送的时候

【讨论】:

所以对于托管推送,它将自动使用 VoiP 推送,您是否已将其上传到仪表板? func managedPush(managedPush: SINManagedPush!, didReceiveIncomingPushWithPayload payload: [NSObject : AnyObject]!, forType pushType: String!) self.client?.relayRemotePushNotification(payload) 也不需要。 我没有使用 voip。我只想要一个正常的远程通知。我已上传推送证书以供分发,它在 sinch 仪表板中显示为默认值。 我尝试使用开发证书,它工作正常。但是当我尝试使用分发推送证书时它不起作用。相同的分发推送证书在我的后端工作正常,但不适用于 Sinch。 你的问题解决了吗,谁能帮帮我,我将不胜感激

以上是关于使用 Sinch 的即时消息推送通知未在 iOS 上提供的主要内容,如果未能解决你的问题,请参考以下文章

Sinch 管理推送。留言内容

Firebase 云消息传递未在 iOS 14 上提供推送通知

在 Whatsapp 或 Viber 上接收推送通知即时消息

实现iOS端即时通讯开发的高性能消息推送

自从使用即时消息推送通知

即使应用程序未在后台运行,也可以自动打开应用程序的VoIP推送通知是否可以在iOS中使用?