• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

iphone - iOS 4 后台运行的标准位置服务的应用程序生命周期行为

[复制链接]
菜鸟教程小白 发表于 2022-12-13 07:57:22 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在开发一个位置跟踪应用程序,该应用程序在后台使用标准位置服务和重大变化位置服务(我的应用程序在 iOS 4+ 中注册了后台位置更新)(如果适用)。感谢 this question我对从后台状态返回和从终止状态重新启动的重大变化有深刻的理解。但是,我仍然不清楚标准位置服务在这些情况下的行为方式。谁能分解在后台运行的标准位置服务的确切行为?
具体来说:

  1. 当您让标准定位服务运行并且应用暂停到后台时,它的行为如何?从我自己的测试中,我看到它将继续醒来以接收 locationManager:didUpdateToLocation:fromLocation: 上的回调(我让它从套接字发送位置,我可以在网络上看到它)。处理此回调是否有时间或内存限制?
  2. 即使我的应用终止,标准位置服务是否会继续运行?也就是说,它是否会像重大更改服务那样使用 application:didFinishLaunchingWithOptions:UIApplicationLaunchOptionsLocationKey 重新启动?我认为 CLLocationManager 在这种情况下也需要重新启动,就像重大更改服务一样。

谢谢。



Best Answer-推荐答案


回答 1 和 2,如果您已将应用注册为使用后台位置,那么您的应用不会终止并继续在后台运行,直到您执行以下操作:

[locationManager stopUpdatingLocation];

因此,没有时间或内存限制,但有电池限制。如果您的电池电量不足,所有使用 gps 的应用程序都将关闭。由于您的应用在正常情况下不会终止,因此它不需要或不会使用 UIApplicationLaunchOptionsLocationKey

重新启动(在因电池而终止后)

标准服务和重要服务的不同之处在于,当有位置更新时,重要的服务会唤醒应用程序,但标准服务会使应用程序持续运行并因此耗尽电池电量。

在选择要使用的服务之前,请考虑阅读 Location-Awareness Programming guide.

关于iphone - iOS 4 后台运行的标准位置服务的应用程序生命周期行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6284504/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap