我需要制作每 1 秒使用一次精确坐标的应用程序。 我知道电池会耗尽 - 此应用只能使用电源(车内电线)。 但是我需要经常使用高精度坐标而不是有效坐标(并且在后台,因为此时使用导航程序)。
我在背景中尝试了一些关于核心定位的文章中的很多例子。 我委托(delegate) CLLocationManagerDelegate 制作函数 locationManager:didUpdateToLocation:fromLocation: 在.plist中写backgroungmode:location 在我的日志中,我看到了坐标。 但是当我点击主页按钮时 - 一切都停止了。 我在 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
最佳答案
允许后台位置更新:
• 转到 Info.plist
• 添加新行
• 调用行“UIBackgroundModes”
• 在该行调用“位置更新”
您已完成但请记住背景位置会降低电池生命周期 :)
关于ios - 在后台和模拟器中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14169383/