ios - 重要的位置变化,没有互联网

时间:2018-01-31 14:36:24

标签: ios geofencing

我正在使用重要的位置更改,这工作正常。然后我调用web api,并将位置数据传递给它。

但是,当我没有连接到Internet时,它无法发送消息。

我如何解决这个问题? 我已经尝试将睡眠放入递归发送程序中。

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
        [NSThread sleepForTimeInterval:5.0f];
        [self postURL :post :function];
    });

这适用于前台的应用程序。它无法发送消息但会继续重试,当互联网可用时它会发送消息,但是当它在后台时它将仅调用postURL一次,第一次调用该函数。

我该如何解决这个问题?或者,当互联网丢失并重新连接时,是否有更好的方法来获取后台通知。

1 个答案:

答案 0 :(得分:0)

找到解决方法,转而使用startUpdatingLocation而非使用startMonitoringSignificantLocationChanges

现在似乎有效。

我认为startMonitoringSignificantLocationChanges不适合将位置数据发送回服务器。