有没有办法让我的 WatchKit 应用程序在后台运行?

Joe*_*Joe 4 ios core-motion swift watchkit

我是 swift 和 WatchKit 框架的新手。我只从一个月开始研究这个。现在我的问题是:是否可以在 Apple Watch 上以后台模式运行应用程序?我从文档中读到 WatchKit 扩展没有支持后台执行模式。但是,如果这件事是真的,那么如何运行健康应用程序之类的应用程序?我的意思是,在手表上有一个名为 health 的应用程序,即使该应用程序不在前台,它也会在每个瞬间占用您的心率。我或多或少会做同样的事情。在我的应用程序中,即使应用程序不在前台,我也会仅在用户移动手表时检测用户加速度。我该怎么做?请把必要的文件寄给我。非常感谢!

附言。对不起我的英语不好!

kel*_*lin 5

是的,你可以。有几种方式:

  1. 使用HKWorkoutSession开始锻炼- 最强大的方式,但是您需要使用 HealthKit 并且 Apple Watch 上只有 1 个应用程序可以以这种方式运行。
  2. 使用WKAudioFilePlayer在后台播放音频- 仅用于音频。
  3. WKURLSessionRefreshBackgroundTask适用于短暂的后台刷新。
  4. 还有其他后台任务,例如WKSnapshotRefreshBackgroundTaskWKURLSessionRefreshBackgroundTask。他们列在后台任务部分这篇文章
  5. performExpiringActivity(withReason:using:) 可用于在应用程序进入后台时短暂延长应用程序的寿命。

另外,请阅读利用 iOS 技术