首页 > 解决方案 > 在 Apple Watch 的后台检测“屏幕截图”按下

问题描述

我已经按照这个答案让我的应用程序检测到同时按下表冠和侧面按钮的时间。这对我有用,但仅当应用程序位于前台时。我的应用程序使用 HKWorkoutSession 保持在后台运行,但它没有检测到两个按钮的按下。我需要该应用程序在后台检测两个按钮的按下,以便我的应用程序正常工作。

我设置锻炼课程的代码是:

func configureWorkout() {
    configuration.activityType = .walking
    configuration.locationType = .unknown
    do {
        session = try HKWorkoutSession(healthStore: store, configuration: configuration)
        session!.delegate = self
        session!.startActivity(with: dateManager.getDate())
    }
    catch let error as NSError {
        fatalError("*** Unable to create the workout session: \(error.localizedDescription) ***")
    }
}

到目前为止,我用来检测被按下的按钮的代码是:

func workoutSession(_ workoutSession: HKWorkoutSession, didGenerate   event: HKWorkoutEvent) {
    if(event.type == HKWorkoutEventType.pauseOrResumeRequest) {
        print("Detected Press")
    }
}

谢谢!

标签: swiftapple-watchwatchos-2

解决方案


推荐阅读