我目前正在使用此处的 Xamarin 地理定位插件:
https://github.com/jamesmontemagno/GeolocatorPlugin
要在我使用 Xamarin Forms (PCL) 构建的应用程序中执行定位服务。 我相信我已经添加了相关的权限设置以允许这样做。
当应用程序处于事件状态并锁定时(但应用程序在前台),GPS 运行良好。但是,当通过单击“主页”按钮将应用程序推送到 iOS 后台时,它仍会跟踪用户并像我预期的那样突出显示“应用程序正在使用您的位置”消息,但是在 30- 之间的一定时间后40 分钟后,此消息消失,GPS 似乎停止跟踪用户,直到他们将应用程序带回前台。
应用进入前台后,它可以再次进入后台 30-40 分钟以重复该循环。
我已确保定位器对象允许后台更新:
public static Plugin.Geolocator.Abstractions.IGeolocator locator;
locator = CrossGeolocator.Current;
locator.AllowsBackgroundUpdates = true;
locator.DesiredAccuracy = 20;
对 .PausesLocationUpdatesAutomatically
的调用表明这是错误的(我相信这是默认设置)。
编辑
我有以下 info.plist 键:
NSLocationWhenInUseUsageDescription
NSLocationAlwaysUsageDescription
并启用后台位置更新:
但是我没有像 Girish 在答案中那样启用后台获取,这是我需要做的事情吗?
最佳答案
关于ios - Xamarin iOS Geolocator 后台服务在大约 30 分钟后死亡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41677464/