监控重要位置变化,App关闭GPS信号(箭头)

时间:2013-03-25 16:46:57

标签: ios iphone gps location

首先,我希望不要重复任何话题,我花了很多时间在互联网上阅读这个问题。

我正在开发iOS =>的应用程序5,我需要获取用户位置,但我不需要总是一个很好的准确位置,所以当应用程序转到后台时我将正常位置模式更改为重要位置更改,当应用程序到达前台时我停止了重要位置更改模式并返回正常位置模式,这一切都很顺利,

我的问题是,当应用程序进入后台模式或甚至用户杀死应用程序GPS信号(紫色箭头)仍然始终显示,即使重新启动设备后,唯一的方法是消失它是取消安装或者在应用程序转到后台时禁用重要位置更改,但是当用户进入后台模式时,我需要此模式工作,可能不是在应用程序被杀死时。

我不知道当用户杀死应用程序时如何停止服务...因为如果您有多任务处理,则不会调用事件“applicationWillTerminate”。

我的主要原因是因为我不希望紫色箭头总是出现,即使应用程序被杀也是因为我不希望用户认为应用程序正在烘干电池...所以用户不希望app安装。

第一个问题:紫色箭头始终显示是正常的,如果为应用启用了重要位置更改,即使应用程序被杀死了吗?

第二个问题:有没有办法改变这个,至少在应用程序被杀时停止服务以隐藏紫色箭头?

谢谢大家。 如果出现问题,对不起我的英语。

3 个答案:

答案 0 :(得分:4)

经过几天研究以确定这项服务,似乎没有办法在背景中使用重要位置更改而没有顶部栏中的箭头。我一直在测试不同的应用程序和通过互联网阅读,没有什么可以解决这个问题。

唯一“”解决方法“”这是在应用程序中禁用多任务模式并在“applicationWillTerminate”事件中禁用重要位置更改但是没有意义...我总是丢失背景位置只有当应用程序被杀时...所以没用。

这很糟糕...这是一个非常好的服务,让位置节省电池,但作为用户和开发人员,我不希望一个应用程序,即使在应用程序被杀之后仍会显示此图标,因为开发人员我不想要由于这个原因人们卸载应用程序,并且作为普通用户,我不知道这个图标是什么意思,如果是正常的GPS或重要的位置改变,这意味着什么......如果我的电池正在流失或者没有。

在后台任务中获取位置的另一个选项,但对电池有很大的影响......

我希望苹果在未来的版本中修复此问题...至少添加一个新箭头或仅在新位置到达instad时显示或在应用程序被杀时才允许弯腰。

所有这些都是通过iOS-6.1

进行研究的

感谢所有人。

答案 1 :(得分:1)

当您使用重要的位置更改服务时,操作系统会让您的应用运行。如果应用程序在后台并被杀死,则操作系统会重新启动它,因此将始终显示紫色箭头。检测到新位置时,将重新启动应用程序。来自文档:

  

如果您保持此服务正在运行并且您的应用随后被暂停或终止,则当新位置数据到达时,该服务会自动唤醒您的应用。在唤醒时,您的应用程序将被置于后台并给予少量时间来处理位置数据。 ...要停止重要的更改位置服务,请调用stopMonitoringSignificantLocationChanges方法。

答案 2 :(得分:0)

嗯,有趣。我刚刚看到另一个应用程序的问题 - 看到箭头仍然活跃,让我想要禁用该应用程序的位置更新,以便问题是真实的。我能想到的最好的事情就是让某种计时器在一段时间后禁用位置监控,如果这适合你的应用程序的话。