应用程序关闭时的 iOS 定位服务启用/禁用事件
<p><p>我目前正在使用 <code>CLLocationManager</code> 来始终跟踪地理围栏,即使应用程序处于后台也是如此。我似乎找不到监听位置服务何时启用/禁用的方法。</p>
<p>是否可以在应用程序关闭时监听位置服务启用/禁用事件或何时为您的特定应用程序启用/禁用位置?</p>
<p>请注意,我使用的是 Xamarin,但 Objective-C 代码很好。</p>
<pre><code>public class LocationManager
{
protected CLLocationManager locationManager;
public LocationManger()
{
this.locationManager = new CLLocationManger();
if (UIDevice.CurrentDevice.CheckSystemVersion(8, 0))
{
locationManager.RequestAlwaysAuthorization();
}
// ... get array of CLCircularRegion and start listening to each
// locationManager events...
locationManager.RegionEntered += (sender, e) => { /*stuff*/ };
locationManager.RegionLeft += (sender, e) => { /*stuff*/ };
locationManager.DidDetermineState += (sender, e) => { /*stuff*/ };
//locationaManager.SomeSortOfLocationServiceEnableDisableEvent += (sender, e) => { /*stuff*/ };
}
}
</code></pre></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>调用类方法 <code></code> 返回一个 <code>BOOL</code> 指示是否启用位置服务。</p>
<p>如果用户禁用定位服务,<code>locationManager:didChangeAuthorizationStatus:</code> 将在 <code>CLLocationManagerDelegate</code> 上调用。</p>
<p>因此,如果你有一个符合<code>CLLocationManagerDelegate</code>的类并实现<code>locationManager:didChangeAuthorizationStatus:</code>,你应该能够处理用户的禁用事件。</p ></p>
<p style="font-size: 20px;">关于应用程序关闭时的 iOS 定位服务启用/禁用事件,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/33090336/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/33090336/
</a>
</p>
页:
[1]