CMMotionActivity如何启动swift工作?

CMMotionActivity如何启动swift工作?,swift,cmmotionmanager,Swift,Cmmotionmanager,所以我正在研究swift,试图找出设备静止的持续时间。我运行了startDate函数并试图打印它,但它给出了5小时后的时间和日期。例如,本地时间现在是2019-12-16 21:38:05,并且打印2019-12-17 02:38:07。不确定我使用函数的方式是否有问题,或者它没有我期望的功能。 代码如下: private let activityManager = CMMotionActivityManager() func setUpActivityNotification(){

所以我正在研究swift,试图找出设备静止的持续时间。我运行了
startDate
函数并试图打印它,但它给出了5小时后的时间和日期。例如,本地时间现在是
2019-12-16 21:38:05
,并且打印
2019-12-17 02:38:07
。不确定我使用函数的方式是否有问题,或者它没有我期望的功能。 代码如下:

private let activityManager = CMMotionActivityManager()

func setUpActivityNotification(){
        var timer = Timer.scheduledTimer(timeInterval: 5.0, target: self, selector: #selector(updateActivity), userInfo: nil, repeats: true)

    }
@objc func updateActivity(){
        activityManager.startActivityUpdates(to: OperationQueue.main) {
            (activity: CMMotionActivity?) in

            guard let activity = activity else { return }
            print(activity.startDate)
            DispatchQueue.main.async {
                if activity.walking {
                    print("Walking")

                } else if activity.stationary {
                    print("Stationary")
                }
            }
        }
    }

您是否在UTC-5时区?如果您希望打印的日期在您的时区,请使用
日期格式化程序
@Sweeper yes!非常感谢^_^