首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在后台模式下锁定手机的停止时间

在后台模式下锁定手机的停止时间
EN

Stack Overflow用户
提问于 2016-07-14 05:10:42
回答 0查看 76关注 0票数 0

我想在手机锁定时停止计时器,那么我该怎么做呢?在代码中,当他进入后台模式时,我设置了计时器,所以它可以工作,但我不知道如何让计时器在手机锁定时停止。有谁有主意吗?

代码语言:javascript
复制
var backgroundTaskIdentifier: UIBackgroundTaskIdentifier?

override func viewDidLoad() {
    super.viewDidLoad()


    backgroundTaskIdentifier = UIApplication.shared().beginBackgroundTask {
        UIApplication.shared().endBackgroundTask(self.backgroundTaskIdentifier!)

    }

    timer = Timer.scheduledTimer(timeInterval: 0.01, target: self, selector: #selector(LoangeController.cosumTime), userInfo: nil, repeats: true)
    startTime = NSDate.timeIntervalSinceReferenceDate()




}


func cosumTime() {

    let currentTime = NSDate.timeIntervalSinceReferenceDate()

    var elapsedTime: TimeInterval = currentTime - startTime

    let hours = UInt8(elapsedTime / 3600.0)

    elapsedTime -= (TimeInterval(hours) * 3600)

    let minutes = UInt8(elapsedTime / 60.0)

    elapsedTime -= (TimeInterval(minutes) * 60)

    let seconds = UInt8(elapsedTime)

    elapsedTime -= TimeInterval(seconds)


    //add the leading zero for minutes, seconds and millseconds and store them as string constants

    let strHours = String(format: "%02d", hours)
    let strMinutes = String(format: "%02d", minutes)
    let strSeconds = String(format: "%02d", seconds)

    let counttime =  "\(strHours): \(strMinutes): \(strSeconds)"

    timeconsum = counttime

    print("\(counttime)")


    if timeconsum == timeout {
        print("Remind TimeOut")
        let UUID = Foundation.UUID().uuidString

        Notification.addNotification(title: "TimeOut Put your Phone away", date: CurrentTime, uuid: UUID)

    }
}
EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38361779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档