Ios 后台应用程序(具有位置UIBackgroundMode)能否使用计时器每隔几个小时轮询一次服务器?
我有一个带有UIBackgroundMode位置的后台应用程序 我希望我的应用程序每隔几小时或几小时与服务器联系一次,看看是否有新的数据(因为使用apple notification push会通知用户,这是不可取的) 轮询是我在任何其他操作系统上都不会使用的功能,但在iOS上,如果您想尝试实现某些功能,它们不会给您留下太多选择。 如果轮询间隔相当长,如轮询间隔数小时或数小时,且轮询活动本身仅持续数秒,则通常的下意识反应(关于耗尽电池寿命)将大大减少Ios 后台应用程序(具有位置UIBackgroundMode)能否使用计时器每隔几个小时轮询一次服务器?,ios,Ios,我有一个带有UIBackgroundMode位置的后台应用程序 我希望我的应用程序每隔几小时或几小时与服务器联系一次,看看是否有新的数据(因为使用apple notification push会通知用户,这是不可取的) 轮询是我在任何其他操作系统上都不会使用的功能,但在iOS上,如果您想尝试实现某些功能,它们不会给您留下太多选择。 如果轮询间隔相当长,如轮询间隔数小时或数小时,且轮询活动本身仅持续数秒,则通常的下意识反应(关于耗尽电池寿命)将大大减少 当应用程序处于后台模式时,是否会触发重复的N
当应用程序处于后台模式时,是否会触发重复的NSTimer?如果没有,是否有其他类型的计时器或机制可用?否,这是不允许的。您应该查看推送通知并找到服务器端解决方案。不,这是不允许的。您应该查看推送通知并找到服务器端解决方案。如果只是为了检查新内容,而不是真正的时间敏感,您可以使用significantChanges后台定位方法……但是如果用户保持相当不动,它很少/永远不会触发。我可能还会添加更新签入应用程序willenterforeground,以更加确定如果只是为了检查新内容,而不是真正的时间敏感,您可以使用significantChanges后台定位方法……但是如果用户保持相当静止,它很少/永远不会触发。我可能还会添加更新签入应用程序willenterforeground,以更加确定谢谢,但我想在通知用户之前下载一些内容。因此,一旦他们收到通知,内容就准备就绪,可供他们查看,而不是先通知他们,然后将应用程序带到前台,然后等待应用程序与服务器联系并获取数据。但这似乎是不可能的?不是真的,你可以使用applicationWillEnterForeground方法,就像前面提到的Robot Woods那样,在加载视图之前准备数据,但你应该高效地这样做。这可以在不中断打开应用程序的“流程”的情况下完成,如果数据很小并且您的计算没有那么复杂……谢谢,但我想在通知用户之前下载一些内容。因此,一旦他们收到通知,内容就准备就绪,可供他们查看,而不是先通知他们,然后将应用程序带到前台,然后等待应用程序与服务器联系并获取数据。但这似乎是不可能的?不是真的,你可以使用applicationWillEnterForeground方法,就像前面提到的Robot Woods那样,在加载视图之前准备数据,但你应该高效地这样做。如果数据很小,并且你的计算没有那么复杂,那么这可以在不中断打开应用程序的“流程”的情况下完成…