应用程序暂停时是不是可以连接到服务器?

Posted

技术标签:

【中文标题】应用程序暂停时是不是可以连接到服务器?【英文标题】:Is it possible connect to server when app is suspended?应用程序暂停时是否可以连接到服务器? 【发布时间】:2014-07-21 13:52:13 【问题描述】:

我想检查服务器是否有新消息计数,我将设置我的 badgeNumber。当 applicationdidenterBackground 我可以连接服务器并使用计时器重复和重复检查它。但是如果应用程序也被杀死(而不是在后台),我想这样做。

那么很快,当应用暂停时是否可以处理后台任务?

【问题讨论】:

只需使用push notifications。 我知道推送通知。但如果每次计数都改变,我不想推动。另一种方式? "不想推动"...为什么不呢?这是您能够与处于非运行状态的软件进行可靠通信的唯一方法。不考虑推送作为一种选择,因为你“不想”正在耗尽你唯一可靠和现实的选择。 【参考方案1】:

正如其他人所观察到的,推送通知正是为此目的而设计的。它不会给客户端带来任何负担,从而最大限度地延长电池寿命和资源利用率。

话虽如此,ios 7 中有一个新的多任务功能,称为“background fetch”。这将偶尔在您的应用程序中运行特定方法。在此您可以检查服务器上的状态并更新徽章编号。您无法选择时间,而且它更耗费资源,但它会起作用。

【讨论】:

【参考方案2】:

您只能在 iOS 中使用后台任务 10 分钟,除非您的应用已注册为 VoIP 应用。

【讨论】:

你能提供这两种说法的来源吗? 您有文章、链接等吗? @Slavco 对于持续 10 分钟的后台任务,是的,我有来源,因为我已经尝试过了,但我从未注册过 VoIP 应用程序。 对于持续 10 分钟的后台任务,是的,我有来源,因为我已经尝试过了,但我从未注册过 VoIP 应用程序。只需点击此链接获取blog.dkaminsky.info/2013/01/27/… 谢谢@esqew

以上是关于应用程序暂停时是不是可以连接到服务器?的主要内容,如果未能解决你的问题,请参考以下文章

执行单元测试时spring boot应用程序是不是需要连接到数据库

连接到数据库时,Java 程序是不是会替代 DBMS

在android应用程序中连接到主机名而不是IP地址

在客户端第一次连接到服务器时,*** 是不是可以“中间人”? [关闭]

是否可以从本地文件(未发送到服务器)连接到服务器?

C# - 连接到 (RAS) *** 时如何获取 IP 地址