Iphone 如何在应用程序关闭的情况下保持从套接字监听
我想通过Iphone 如何在应用程序关闭的情况下保持从套接字监听,iphone,ios,sockets,tcp,udp,Iphone,Ios,Sockets,Tcp,Udp,我想通过TCP/IP,通过通信部分与一台被盗用的设备进行通信。我使用了GCDAsyncUdpSocket进行通信,当应用程序在前台时一切都很顺利,但我想在应用程序关闭时进行一些通信。我成功地在应用程序关闭后将数据发送到设备,因为我使用了dispatch\u async(dispatch\u get\u global\u queue(0,0)onapplicationIdentinterbackground事件在应用程序关闭后继续推送数据。即使应用程序关闭,我也要侦听端口。 我在appAppDel
TCP/IP
,通过通信部分与一台被盗用的设备进行通信。我使用了GCDAsyncUdpSocket
进行通信,当应用程序在前台时一切都很顺利,但我想在应用程序关闭时进行一些通信。我成功地在应用程序关闭后将数据发送到设备,因为我使用了dispatch\u async(dispatch\u get\u global\u queue(0,0)
onapplicationIdentinterbackground
事件在应用程序关闭后继续推送数据。即使应用程序关闭,我也要侦听端口。
我在appAppDelegate.m
中设置了一个监听委托方法的端口
- (void)udpSocket:(GCDAsyncUdpSocket *)sock didReceiveData:(NSData *)data
fromAddress:(NSData *)address withFilterContext:(id)filterContext
若要侦听端口但从未被调用,缺少什么?是否可以在应用程序关闭后侦听端口?不允许您执行此操作。如果应用程序尝试,将在10分钟后终止。是的,应用程序的后台代码在10分钟后停止执行,解决方案是什么,或者必须为此创建voip应用程序?你不能在后台运行这种东西。苹果不想让你的应用程序消耗掉电池,因为他们知道普通用户不会理解是你的应用程序在这么做,他们会认为“iPhone的电池寿命不好”。因此,除非这对你的应用程序的性能至关重要(即,属于批准的背景类别之一),您不能这样做。故事结束。除了将您的应用程序限制为越狱设备之外,没有其他解决方案,这些设备经过修补以禁用此看门狗。