创建在后台作为 Web 服务器运行的 iOS 应用



我想做一个iOS应用程序(特别是iPad),它的行为就像一个Web服务器。我看到了COCOAHTTPSERVER附带的示例,但我不明白一些事情。

我的应用程序在

后台运行时是否可以从同一设备中运行的另一个应用程序接收请求?

如果可能的话,我该怎么做?

否则,如果不可能,无法在后台运行的Web服务器应用程序的含义是什么?

我的确切问题如下:我需要一个 iOS 应用程序,该应用程序可以接收来自同一设备中在 safari 上运行的 javascript 应用程序的请求。我可以在后台创建一个行为类似于 Web 服务器的应用程序(因为 safari 必须在前台),或者有另一种方法可以实现这一点吗?

您可以在iOS的后台运行Web服务器,但不幸的是只能在有限的时间内(最多10分钟),操作系统可以随时停止它。有关详细信息,请参阅此技术说明 [1]。

如果您可以接受该限制,则应使用现有的网络服务器,例如 GCDWebServer,它为您处理后台模式 [2]。

[1] https://developer.apple.com/library/ios/technotes/tn2277/_index.html

[2] https://github.com/swisspol/GCDWebServer#gcdwebserver--background-mode-for-ios-apps

这个库可能会让你的任务更容易。

https://github.com/swisspol/GCDWebServer

不,iOS 不支持在后台运行的 Web 服务器。

Apple 这样做的原因是 Web 服务器必须侦听入站网络请求。 侦听入站网络请求要求无线电始终处于活动状态。 有源无线电耗尽电池电量。

相关内容

  • 没有找到相关文章

最新更新