应用程序处于后台状态时拨打服务电话

时间:2019-06-01 06:23:28

标签: ios swift

当应用程序处于后台状态时,我必须每30秒命中一次服务器。如果我已经在applicationDidEnterBackground方法中编写了代码,它只会被调用一次,但是我需要在应用程序处于后台状态时每30秒连续命中一次服务器。

1 个答案:

答案 0 :(得分:1)

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

  

位置管理器,可让每个位置获取后台位置更新   n秒,并具有所需的定位精度。

     

优势:

     
      
  • 如果位置管理器当前处于运行状态,则操作系统将永远不会杀死我们的应用程序   正在运行。

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

  •   
  • 可自定义的位置准确性和时间段。

  •   
  • 低内存消耗(Singleton类)

  •   

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

static let timeInternal = 30
static let accuracy = 200

更新:

是的,您可以通过在didUpdateLocations方法中编写API调用来实现。

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