iOS-保持与本地网络设备的web套接字连接始终处于活动状态

iOS-保持与本地网络设备的web套接字连接始终处于活动状态,ios,sockets,websocket,notifications,persistent-connection,Ios,Sockets,Websocket,Notifications,Persistent Connection,我有一个设备,位于可能没有Internet连接的Wi-Fi本地网络中,它使用web套接字向连接到它的设备发送通知 但当我锁定手机或按下home(主页)按钮时,我的应用程序将进入后台模式,web套接字连接将关闭,因此此后任何通知都不会到达手机 我知道我可以通过使用远程通知(使用Apple Push Notification Service)来做到这一点,但我的设备可以在任何Wi-Fi网络(有或没有互联网接入)上工作,或者生成自己的Wi-Fi接入点(因此没有互联网接入) 所以问题是:是否有可能建立持

我有一个设备,位于可能没有Internet连接的Wi-Fi本地网络中,它使用web套接字向连接到它的设备发送通知

但当我锁定手机或按下home(主页)按钮时,我的应用程序将进入后台模式,web套接字连接将关闭,因此此后任何通知都不会到达手机

我知道我可以通过使用远程通知(使用Apple Push Notification Service)来做到这一点,但我的设备可以在任何Wi-Fi网络(有或没有互联网接入)上工作,或者生成自己的Wi-Fi接入点(因此没有互联网接入)


所以问题是:是否有可能建立持久连接,比如在Android中,我可以在后台服务中保持连接?

不,如果你想在应用商店中使用你的应用,你就不能这样做。
如果不是(例如,这是一个企业应用程序),您可以使用某种黑客,如无声音频或voip,但这将消耗大量电池

在iOS中,只允许特定类型的应用程序在后台运行:
在后台向用户播放音频内容的应用程序,如音乐播放器应用程序
在后台录制音频内容的应用程序
随时通知用户其位置的应用程序,如导航应用程序
支持互联网语音协议(VoIP)的应用程序。
需要定期下载和处理新内容的应用程序

从外部附件接收定期更新的应用程序



不,如果你想在应用商店中使用你的应用程序,你不能这样做。
如果不是(例如,这是一个企业应用程序),您可以使用某种黑客,如无声音频或voip,但这将消耗大量电池

在iOS中,只允许特定类型的应用程序在后台运行:
在后台向用户播放音频内容的应用程序,如音乐播放器应用程序
在后台录制音频内容的应用程序
随时通知用户其位置的应用程序,如导航应用程序
支持互联网语音协议(VoIP)的应用程序。
需要定期下载和处理新内容的应用程序

从外部附件接收定期更新的应用程序



如果您的应用程序不适用于应用程序商店,则为;您可以使用音频背景模式并播放“静音”。如果你的应用必须进入应用商店,那么这是不可能的。iOS设备不是server@Paulw11iOS设备不充当服务器。web套接字服务器位于生成通知的外部设备上。我的应用程序连接到该服务器并保持连接始终打开。我所说的不是“服务器”的意思是它不支持长时间运行的后台任务。它的设计目的是在用户没有主动运行应用程序时关闭任务,从而优化电池寿命。在Android中,你可以在有或没有主应用程序的情况下保持另一个进程运行。如果在后台或终止模式下,您仍然需要通过iOS设备获取websocket等数据,那么您可以使用静默推送通知(Voip),使用有效负载,您可以安排本地通知,并且您的应用程序也将在终止模式下处于活动状态(最多播放本地通知声音文件,最多30秒)您可以再次连接到websocket或API,从服务器获取数据并在iOS端代码中使用;您可以使用音频背景模式并播放“静音”。如果你的应用必须进入应用商店,那么这是不可能的。iOS设备不是server@Paulw11iOS设备不充当服务器。web套接字服务器位于生成通知的外部设备上。我的应用程序连接到该服务器并保持连接始终打开。我所说的不是“服务器”的意思是它不支持长时间运行的后台任务。它的设计目的是在用户没有主动运行应用程序时关闭任务,从而优化电池寿命。在Android中,你可以在有或没有主应用程序的情况下保持另一个进程运行。如果在后台或终止模式下,您仍然需要通过iOS设备获取websocket等数据,那么您可以使用静默推送通知(Voip),使用有效负载,您可以安排本地通知,并且您的应用程序也将在终止模式下处于活动状态(最多播放本地通知声音文件,最多30秒)您可以再次连接到websocket或API,从服务器获取数据并在iOS端代码中使用。“从外部附件接收定期更新的应用程序”-您知道外部附件是否可以使用Wi-Fi连接到iOS设备吗?据我所知,这些附件只能使用电缆或蓝牙连接。但如果使用Wi-Fi是可能的,也许我们可以证明它是一个外部配件,并实现我们需要的功能。我不确定,但我想他们在写关于bluetooth 4.0和lightning accessories的文章。“从外部配件接收定期更新的应用程序”-你知道外部配件是否可以使用Wi-Fi连接到iOS设备吗?据我所知,这些附件只能使用电缆或蓝牙连接。但如果使用Wi-Fi是可能的,也许我们可以证明它是一个外部配件,并实现我们所需要的。不确定,但我想他们写的是蓝牙4.0和闪电配件。