我们的用户一直抱怨即使应用程序被杀死,紫色箭头仍然出现,因此他们自动认为它耗尽了他们的电池。
我们通过调用仅使用显着的位置变化
[locationManager startMonitoringSignificantLocationChanges];
因此,如果我们不停止重要的位置更改,紫色箭头会一直亮着(我们的用户认为他们的电池会耗尽)。
即使我们想在应用程序终止时停止重大的位置更改,我们也不能因为 applicationWillTerminate 很少被调用。
所以有3个选项:
- 保持原样 - 但用户一直在抱怨,因为苹果没有区分使用常规电池消耗位置的应用程序和使用显着位置变化的应用程序。
- 使用常规的 [locationManager startUpdatingLocation],这样当应用程序终止时,监控也会终止。这里的问题是,只要应用程序没有终止,它确实会消耗用户的电池。
称呼
(void)applicationDidEnterBackground:(UIApplication *)application { [locationManager stopMonitoringSignificantLocationChanges]; }
这里的问题是我们没有从背景中的位置变化中受益……</p>
是否有任何其他建议可以让我们这样做:
- 只要应用程序是后台就可以监控位置(紫色箭头在这里是可以的)
- 当应用程序被杀死时停止位置监控(紫色箭头在这里不可以)
- 使用显着位置更改,以免耗尽用户的电池。
?
谢谢