【问题标题】:Handle the remote notification for chat application in iOS在 iOS 中处理聊天应用程序的远程通知
【发布时间】:2017-11-25 10:57:14
【问题描述】:

背景

我正在构建一个聊天消息应用程序,当用户收到来自发件人的消息时,我遇到了处理推送通知的问题。

我想要实现的目标

和Whatsapp一样,在我收到推送通知并打开飞行模式后,我仍然可以在打开应用程序时看到消息内容。所以,我相信它在收到通知时已经收到了消息。

问题

当用户通过主屏幕上的图标打开应用程序而不是在通知上按下或执行其他操作时,我找不到处理远程聊天消息推送通知的好方法。

我尝试了什么

当应用程序出现时,我手动加载了消息,但这与 Whatsapp 上的测试行为不同。 我试过this third party socket library,但是一旦应用关闭,iOS就终止了监听服务,它不适用于我想要构建的东西。

我的问题

如果仍然使用推送通知或后台模式远程通知,是否可以在应用未运行时处理推送通知?

我还发现了 Apple PushKit,我不确定这是否仅适用于提供 VoIP 的应用程序。如果我只使用 PushKit 发送短信,有人知道 Apple 是否会接受将我的应用发布到他们的 AppStore?

不恰当的问题,Whatsapp 是如何做到这一点的?它也使用 PushKit 吗?

【问题讨论】:

    标签: ios apple-push-notifications voip pushkit remote-notifications


    【解决方案1】:

    搜索XMPP服务器即可,实时聊天不需要Pushkit,Pushkit仅用于应用终止时的视频通话通知。

    使用 XMPP 服务器进行实时聊天集成。

    https://code.tutsplus.com/tutorials/building-a-jabber-client-for-ios-xmpp-setup--mobile-7190

    What is XMPP, and how can I use it within an iOS chat application?

    【讨论】:

      【解决方案2】:

      实际上,当您的应用程序被杀死时,您无法处理某些事情,因此解决问题的简单方法是将所有推送通知数据存储在服务器中,在运行应用程序时从服务器获取,并在获取后将其删除。我认为 Whatsapp 以同样的方式处理这个问题。

      【讨论】:

      • 不要推测,提供研究。
      猜你喜欢
      • 2014-03-05
      • 1970-01-01
      • 1970-01-01
      • 2017-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-14
      相关资源
      最近更新 更多