使用第三方框架定位

2017-11-23  本文已影响16人  翻这个墙

使用第三方框架定位

1. 主要原因

2. 框架信息

3. 使用方法

4. 注意事项

5.示例代码

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
        let locMgr = INTULocationManager.sharedInstance()

        // MARK:- 获取一次位置信息
        // delayUntilAuthorized : 计算超时时间从什么时候开始算 false : 用户还未选择的时候开始算,当超时之后,就会调用block true: 用户选择之后开始计算超时时间,如果超时了会执行block
        let requestID = locMgr.requestLocationWithDesiredAccuracy(.Room, timeout: 3, delayUntilAuthorized: true) { (location : CLLocation!, _,  status : INTULocationStatus) -> Void in

            if status == INTULocationStatus.Success {
                print("定位成功")
            } else {
                print("定位失败\(status.rawValue)")
            }

        }

        // 强制完成,会调用block,相当于超时
        //locMgr.forceCompleteLocationRequest(requestID)

        // 取消获取用户信息,不会调用block
       // locMgr.cancelLocationRequest(requestID)

//        // Force the request to complete early, like a manual timeout (will execute the block)
//        [[INTULocationManager sharedInstance] forceCompleteLocationRequest:requestID];
//
//        // Cancel the request (won't execute the block)
//        [[INTULocationManager sharedInstance] cancelLocationRequest:requestID];


        // MARK:- 获取多次位置信息
//        locMgr.subscribeToLocationUpdatesWithDesiredAccuracy(
//            .Room) { (location : CLLocation!, _, status : INTULocationStatus) -> Void in
//
//                if status == INTULocationStatus.Success {
//                    print("定位成功")
//                } else {
//                    print("定位失败\(status.rawValue)")
//                }
//        }
    }
上一篇下一篇

猜你喜欢

热点阅读