0

如果用户更改其位置设置

从“总是”到“使用时”。

并且不会返回应用程序。 有时我看到蓝条,有时我看不到它。

如果未显示蓝条,则我的应用程序可能会从内存中删除。

我在我的didChangeAuthorization方法中做的唯一一件事是,如果不是restricted, denied.notDetermined那么我调用startUpdatingLocation().

我知道我无法startUpdatingLocation在后台制作应用程序。

但是,当我从“始终”更改为“使用时”时,我是否应该能够继续这样做?!这是我无法控制的行为吗?

4

1 回答 1

1

经过多轮测试。我可以非常自信地说:

如果您切换到从不,操作系统将stopUpdatingLocation 在 10 秒或更短的时间内调用。

因此,如果您到达 10 秒之前切换到“使用时”,那么您会看到蓝色条,一切都很好。

如果您等待 10-20 秒,那么您将不再看到蓝色条,因为stopUpdatingLocation调用了 。要再次开始跟踪,您必须将应用程序置于前台,然后它将再次开始更新您的位置。

在“始终”和“使用时”之间切换不应导致停止您的位置跟踪。可能是因为我去了 Never 并停留了 10 多秒,然后切换到 Always,然后是“使用时”,我做了所有这些 - 没有打开应用程序并认为这是因为我从 Always 更改为“使用时”采用'。所以这有点虚惊一场。

于 2018-10-02T13:59:27.490 回答