繁体   English   中英

即使用户覆盖50米,当应用程序未在ios10的后台运行(暂停)时,如何每隔n秒获取当前的GPS位置?

[英]How can I get current GPS location in every n seconds when app is not running in background (suspended) for ios10 even if user covers 50 meters?

我正在使用示例项目创建基于位置的移动应用程序: https//github.com/voyage11/Location 我正在将收到的位置保存在本地数据库中,并在应用程序进入前台时在地图上显示位置。 问题是 - 当设备连接电源时,应用程序正常工作,当我从充电中删除设备时,不再收到位置更新(我的应用程序在从后台暂停时无法正常工作)。

你不能。 您可以使用的最好方法是startMonitoringSignificantLocationChanges方法,它可以在应用程序处于后台时获取位置。 这是文档: https//developer.apple.com/reference/corelocation/cllocationmanager/1423531-startmonitoringsignificantlocati

从后台获取连续位置更新的唯一方法是将您的应用注册为导航应用。 这将允许您持续监控用户的位置,但请注意GPS使用大量电力,您将很快耗尽用户的电池。

正如@GhazyDENDEN在他们的回答中所说,您可以使用重要的位置更改API,但这只会在手机移动相当长的距离时提供更新(有关详细信息,请参阅文档),如果手机静止不动,您将无法获得任何更新。

此外,当您将应用程序提交到应用程序商店时,Apple可能会认为它不符合导航应用程序的条件,并且可能会拒绝它。 我建议在开发过程的早期解决这个问题,这样你就不会浪费大量的开发时间然后被拒绝。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM