在背景和模拟器中的位置

时间:2013-01-05 06:42:40

标签: ios sdk background ios-simulator core-location

我需要制作每1秒使用精确坐标的应用程序。 我知道电池耗尽 - 此应用仅适用于电源(汽车电线)。 但我需要使用非有效数字,但高精度坐标经常(在背景中,因为此时使用导航程序)。

我尝试了很多关于背景中关于重定位的文章的例子。 我做了CLLocationManagerDelegate的委托 make function locationManager:didUpdateToLocation:fromLocation: 写下backgroungmode:.plist中的位置 在我的日志中,我看到坐标。 但是,当我点击主页按钮 - 永远停止。 我在5分钟内在背景模式下获得一次坐标。 这是应用程序或模拟器功能的问题吗?

我编译并从github等开始一些例子 - 一切都相同

我还没有iPhone - 因为购买或不购买取决于“我可以写这个应用程序”。 在android中它非常简单 - 我创建位置监听器和服务 - 并且每隔一段时间获取坐标。

更新: 我用这个例子: http://mobile.tutsplus.com/tutorials/iphone/ios-multitasking-background-location/

2013-01-05 11:26:41.162 BackgroundLocationTrackingExample[3402:f803]  Latitude: 37.331504 Longitude: -122.030716
2013-01-05 11:26:42.166 BackgroundLocationTrackingExample[3402:f803]  Latitude: 37.331464 Longitude: -122.030721
2013-01-05 11:26:43.148 BackgroundLocationTrackingExample[3402:f803]  Latitude: 37.331426 Longitude: -122.030728
2013-01-05 11:26:44.161 BackgroundLocationTrackingExample[3402:f803]  Latitude: 37.331388 Longitude: -122.030728
2013-01-05 11:26:45.172 BackgroundLocationTrackingExample[3402:f803]  Latitude: 37.331351 Longitude: -122.030735

按主页按钮

2013-01-05 11:30:35.147 BackgroundLocationTrackingExample[3402:f803]  Latitude: 37.330071 Longitude: -122.021223
2013-01-05 11:35:35.176 BackgroundLocationTrackingExample[3402:f803]  Latitude: 37.324633 Longitude: -122.024034
2013-01-05 11:40:36.153 BackgroundLocationTrackingExample[3402:f803]  Latitude: 37.330647 Longitude: -122.030024
etc

1 个答案:

答案 0 :(得分:1)

允许后台位置更新:

•转到Info.plist

•添加新行

•调用“UIBackgroundModes”行

•在该行中调用“位置更新”

你完成但记住背景位置KILLS电池寿命:)