Iphone 如何激活后台应用程序,为附近的其他设备提供TCP/IP流服务?

Iphone 如何激活后台应用程序,为附近的其他设备提供TCP/IP流服务?,iphone,ios,bonjour,Iphone,Ios,Bonjour,我有两个设备,一个“经理”iphone和一个“工人”iphone,彼此相邻 一台iPhone上的“工作者”应用程序需要通过蓝牙或WIFI响应附近另一台iPhone上“管理者”应用程序的数据请求 worker应用程序将自己发布为“你好”服务 第二部iPhone上的manager应用程序通过Bonjour找到worker应用程序服务,并尝试建立TCP/IP数据连接 但是,如果worker应用程序处于后台模式,如何唤醒它以开始使用远程管理器应用程序为TCP/IP流提供服务 (我是一个早安的新手,但我是

我有两个设备,一个“经理”iphone和一个“工人”iphone,彼此相邻

一台iPhone上的“工作者”应用程序需要通过蓝牙或WIFI响应附近另一台iPhone上“管理者”应用程序的数据请求

worker应用程序将自己发布为“你好”服务

第二部iPhone上的manager应用程序通过Bonjour找到worker应用程序服务,并尝试建立TCP/IP数据连接

但是,如果worker应用程序处于后台模式,如何唤醒它以开始使用远程管理器应用程序为TCP/IP流提供服务


(我是一个早安的新手,但我是一个iPhone流媒体老手。)

苹果不为普通服务器提供后台模式,所以如果你想发布到应用商店,而你的应用不适合其他后台模式,那你就倒霉了。如果你不必通过应用商店,那么你可以使用几种黑客手段之一使你的应用程序在后台运行,例如滥用VOIP或媒体播放器后台模式。

我使用苹果的核心蓝牙(bluetooth Low Energy-BTLE),因为它在后台工作


我计划使用外部附件背景模式,因为我们将从中读取数据。然后,我希望附近第二台iOS设备上的主应用程序能够通过TCP/IP连接从第一台设备读取此数据。但是,如果第二台设备的TCP/IP服务应用程序在后台,我需要它激活以服务数据请求。@Jim的回答也涵盖了这种情况。如果没有用户干预以重新启动应用程序,则无法解决此问题。如果你的“主应用程序”停留在前台(或者至少在后台不超过10分钟,因此你可以使用“长时间运行的后台任务”保持活动状态),那么它是可以解决的。否则它不适用于应用商店部署的应用。我们将有一个外部附件连接到iOS设备。苹果文档似乎暗示,外部附件更新将导致iOS运行相应的代理,即使是在后台应用程序中,也会给它10秒的“预算”来完成工作。(可以要求更多,但苹果不鼓励。)但我找不到让iOS设备在App Store应用程序的第二台设备上运行方法的方法。