Ios 在应用程序处于后台状态时进行服务调用

Ios 在应用程序处于后台状态时进行服务调用,ios,swift,Ios,Swift,当应用程序处于后台状态时,我必须每30秒点击一次服务器。如果我用ApplicationIdentinterBackground方法编写代码,它只会被调用一次,但当应用程序处于后台时,我需要每30秒连续点击一次服务器。请根据您的要求使用。我在我的一个项目中达到了相同的要求 位置管理器,允许每天获取后台位置更新 n秒,具有所需的定位精度 优势: 如果位置管理器当前处于关闭状态,操作系统将永远不会关闭我们的应用程序 跑步 在需要时定期进行位置更新(范围介于2- 170秒(受允许的最大后台任务时间限

当应用程序处于后台状态时,我必须每30秒点击一次服务器。如果我用ApplicationIdentinterBackground方法编写代码,它只会被调用一次,但当应用程序处于后台时,我需要每30秒连续点击一次服务器。

请根据您的要求使用。我在我的一个项目中达到了相同的要求

位置管理器,允许每天获取后台位置更新 n秒,具有所需的定位精度

优势:

  • 如果位置管理器当前处于关闭状态,操作系统将永远不会关闭我们的应用程序 跑步

  • 在需要时定期进行位置更新(范围介于2- 170秒(受允许的最大后台任务时间限制))

  • 可定制的定位精度和时间周期

  • 低内存消耗(单例类)

检索位置的默认时间为30秒,准确度为200。

static let timeInternal = 30
static let accuracy = 200
更新: 是的,您可以通过在
didUpdateLocations
方法中编写API调用来实现

func scheduledLocationManager(_ manager: HSLocationManager, didUpdateLocations locations: [CLLocation]) {
   logh("Make API Call here...")
}

你不能。iOS应用程序不在后台运行。虽然你可以在后台获取数据,但你不能每30秒获取一次数据(即使可以,你也不应该这样做——这对电池寿命和网络流量有害)。如果有新数据,服务器最好发送推送通知,或者应用程序在前台检查服务器。你的意思是当应用程序处于后台状态时,我们不能点击服务器…@mattI必须在应用程序处于后台状态时每30秒向服务器发送一次用户位置。。。。。。有可能吗@PaulW111我必须每30秒向服务器发送一次用户位置:是的,您可以这样做。我也在做同样的事情。请参考我想把这些数据发布到我的服务器上这个pod可以吗?……@iMHitesh