当lcoation在后台更新时,我正在使用CLLlocationManager获取用户位置,并运行webservice,但它会导致iphone升温和电池耗尽?有人能解决这个问题吗?
发布于 2015-01-08 07:36:00
让你的职位耗尽你的权力,你可以做一些事情来避免这种情况:
我不理解热,是的GPS使设备变得更热,但我从来没有经历过重新启动,因为热。
您确定您没有进入昂贵的计算任务吗?您可以通过使用分析器或xcode的更高版本来检查这一点。
您也可以设置距离过滤器,这将继续得到的位置(它将不会减少电池损耗),但将调用延迟回调,只有当距离阈值达到。
在iOS6上,还引入了延迟背景中的位置更新的概念,这可能也是管理设备发出的网络流量的最佳解决方案。
发布于 2015-01-08 14:58:32
事实上,你只能在低定位精度(1000公里)和高定位精度(3-6米)之间做出决定。在第一种情况下,GPS芯片被禁用,在第二种情况下,它被启用。
如果启用了它,并且您需要精确的位置,则什么也做不了。全球定位系统需要电力,这种能量持续8小时多一点,完全精确定位(用我的iphone4测量)
热身是没有问题的,但是我不记得我的手机热身是由GPS引起的(我很快就会检查的)。但可以肯定的是,它永远不会升温到重新启动,所以你的情况有点奇怪,这也可能是你的设备的一个缺陷。
热身的原因也可能是因为你试图经常与服务器进行交火。你可以自己检查一下,下载一个像样的GPS应用程序,然后让它记录一个轨道。如果它也变热了,你的设备可能会有问题。(或者你生活在一个极端炎热的环境中,手机上阳光强烈。)还可以通过禁用网络代码进行测试。
https://stackoverflow.com/questions/27834331
复制相似问题