gpt4 book ai didi

swift - 在 swift 3 中,我目前正在使用 Location 为我的应用程序做一些事情,我想检查它是否在该过程稍后的某个时刻启用

转载 作者:行者123 更新时间:2023-11-30 12:41:46 25 4
gpt4 key购买 nike

我有一个应用程序,可以找到一个人的坐标并将其用于某些代码,当然,如果我没有启用位置,我就无法使用它,但我想检查它是否稍后在网站上启用。示例:

用户登录,转到我的选项卡,没有位置,因此不会显示最近的商店,但是一旦他在那里启用位置,监听器就会告诉我的代码它已打开并相应地执行操作?

我正在考虑使用计时器来检查每一秒......但这似乎有点愚蠢,有其他选择吗?实现什么比较好?

最佳答案

在您需要定位的屏幕中,只需检查定位服务是否启用即可。

override func viewDidLoad() 
{
super.viewDidLoad()
self.checkLocationServiceEnabled()
}

func checkLocationServiceEnabled()
{
let locationAuthorizationStatus = CLLocationManager.authorizationStatus()

switch locationAuthorizationStatus {

case .AuthorizedAlways ,.AuthorizedWhenInUse ,.NotDetermined ,.Restricted:
break
case .Denied:
self.alertTurnOnLocationFromDevicePrivacySetting()
}
}

func alertTurnOnLocationFromDevicePrivacySetting()
{
let delayTime = dispatch_time(DISPATCH_TIME_NOW,
Int64(1 * Double(NSEC_PER_SEC)))
dispatch_after(delayTime, dispatch_get_main_queue()) {
let alertController = UIAlertController(
title: ALERT_TURN_ON_LOCATION_FROM_DEVICE_PRIVACY,
message: "",
preferredStyle: .Alert)

let cancelAction = UIAlertAction(title: ALERT_OK, style: .Cancel, handler: nil)
alertController.addAction(cancelAction)

self.navigationController?.topViewController!.presentViewController(alertController, animated: true, completion: nil)
}
}

关于swift - 在 swift 3 中,我目前正在使用 Location 为我的应用程序做一些事情,我想检查它是否在该过程稍后的某个时刻启用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42154358/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com