2015-09-30 38 views
1

我目前正在尝试获取当前用户的设备移动速度。这里是我的代码:CoreLocation用户速度

import UIKit 
import Foundation 
import CoreLocation 

class ViewController: UIViewController, CLLocationManagerDelegate { 

let manager = CLLocationManager() 
var currentSpeed = 0.0 

override func viewDidLoad() { 
    super.viewDidLoad() 

    manager.requestWhenInUseAuthorization() 

    manager.delegate = self 
    manager.desiredAccuracy = kCLLocationAccuracyHundredMeters 
    manager.startUpdatingLocation() 
} 

func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { 
    print(manager.location?.speed) 
} 

func locationManager(manager: CLLocationManager, didFailWithError error: NSError) { 
    print("Error: \(error.localizedDescription)") 
} 

唯一的问题是,它打印"Optional(-1,0)"

感谢提前的帮助。

回答

-2

只需更换?与!像

print(manager.location!.speed) 

日志的变化之后是

0.0 
+0

的OP不具有与所述输出包括可选的问题。他们遇到的问题是实际价值是否定的,无效的。 – Jadar