IOS 13 How to Check User All Always Allow Location(怎么检查用户是否始终允许定位)

本教程将介绍IOS 13 How to Check User All Always Allow Location(如何检查用户是否始终允许定位)的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

IOS 13 How to Check User All Always Allow Location(怎么检查用户是否始终允许定位) 教程 第1张

问题描述

在我的应用程序中,我想检查用户是否被授予了位置权限"Always Allow"。因为我正在进行类似于WhatsApp位置实时共享的位置共享。

实际上测试用例是,当我们在应用程序设置中将位置权限状态更改为"使用应用程序时",并检查应用程序内部按钮单击的状态时,我将获得"始终授权"值。

  func isAlwaysPermissionGranted() -> Bool{
 let aStatus = CLLocationManager.authorizationStatus()
 if aStatus == .authorizedAlways {
  return true
 }
  return false
  }

如果我们有"使用应用程序时"权限,我无法区分"使用应用程序时"和"始终"。两者具有相同的枚举值,即"AuthizedAlways"。

但在WhatsApp中,如果我将位置权限更改为"使用应用程序时"并尝试共享我的实时位置,WhatsApp会在应用程序设置中显示一个更改位置权限的警报。

我也想这么做。

请帮助我在代码级别上有所不同。

推荐答案

实际上,我从代码中删除了CLLocationManager.requestAlwaysAuthorization()

如果您请求始终授权,CLLocationManager.AuthizationStatus将始终成为授权状态。

我做了这样的设置:如果应用程序想要始终访问,用户必须转到设置并手动授予始终权限

好了关于IOS 13 How to Check User All Always Allow Location(怎么检查用户是否始终允许定位)的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。