【问题标题】:Swift - How to prevent from closing socket in force quit?Swift - 如何防止关闭套接字强制退出?
【发布时间】:2016-03-27 10:00:24
【问题描述】:

我的项目通过套接字工作,我尝试制作一个像whatsApp这样的聊天应用程序。 现在,我的问题是如何保持打开套接字,即使用户从 AppSwitcher 杀死应用程序并让我的应用程序强制退出模式? (喜欢WhatsApp) 换句话说,whatsApp和telegram之类的怎么能保持打开socket呢?因为当我们向其他人发送消息时,很快就会向她/他的手机发出通知,并通知她/他有消息,这是打开套接字的结果。 我搜索它,但我找不到一个好的解决方案。 感谢您的回答...

【问题讨论】:

  • 您需要使用 Pushkit 发送通知以重新启动您的应用。

标签: ios swift sockets notifications


【解决方案1】:

他们使用 APNS。 如果应用程序被杀死,您的套接字将被关闭......如此简单。 当用户向另一个不在线的用户发送消息时,您的服务器也应该发送通知。

【讨论】:

  • 谢谢你的回答,但你能解释更多
  • 当然,例如,在我的“用户对用户”聊天中,套接字还会发送有关左侧用户状态(在线或离线)的信息,然后服务器上的套接字也会向其发送 Apple 推送通知左用户(如果他离线)。因此,如果左侧用户杀死了应用程序,它将收到一条通知,并且他知道有一条新消息到达。基本上,套接字仅在他退出聊天视图控制器时打开和关闭特定聊天讨论时才连接。在所有其他情况下,他只会收到通知。
  • 你必须在你的服务器中实现APNS,我的意思是它不是直接发送推送通知的聊天套接字,但是当你解码到达的消息(并且可能将它存储在数据库中)你也有检查接收器状态(在线/离线)并在需要时发送通知。我自己在 PHP 中实现了 APNS,但您可以使用可用的服务,例如 pushwoosh.com
  • 描述非常好。感谢您花在我身上的时间
【解决方案2】:

您是否在目标中启用了后台模式

【讨论】:

    猜你喜欢
    • 2017-04-22
    • 2013-03-17
    • 1970-01-01
    • 1970-01-01
    • 2011-05-26
    • 1970-01-01
    • 2020-05-04
    • 2019-07-17
    • 1970-01-01
    相关资源
    最近更新 更多