开发apple watch程序让后台运行的可行性,并设置Background Modes

官方文档:Using extended runtime sessions | Apple Developer Documentation

好像是只支持某些特性的功能,例如:

在 Apple Watch 上运行的应用程序通常会过渡到后台,当用户放下手腕时就会暂停。但是,您的应用程序可以使用后台会话和扩展运行时会话,以便在用户停止与它交互后继续运行。

使用后台会话,应用程序继续在后台运行,但会话只能监视训练、跟踪用户的位置或播放音频文件。另一方面,扩展的运行时会话扩展了这种能力,并为应用程序提供了几种不同的会话类型供选择。并非所有这些会话都在后台运行。一些应用程序保持活动状态,并作为最前端的应用程序运行。扩展运行时会话支持以下会话类型:

自我照顾

指导用户完成相对简短的活动。这些活动关注使用者的情绪健康或健康,例如刷牙。

正念

帮助用户开始和结束静默冥想会议。对于步行冥想,可以考虑使用 HKWorkoutSession。类似地,如果你的应用程序在整个冥想过程中播放音频,那么就没有理由使用 WKExtendedRuntimeSession。背景音频模式提供额外的运行时间,只要音频播放。有关更多信息,请参见播放背景音频。

理疗

指导用户通过伸展,加强,或范围的运动练习。如果物理治疗活动很费力ーー例如,骑健身单车ーー可以考虑使用 HKWorkoutSession。

智能警报

安排一个时间窗口来监测用户的心率和运动。这个应用程序使用这些信息来决定播放闹钟的最佳时间,通常是从睡眠中唤醒用户。

根据应用程序的预期用途ーー而不是根据会话提供的特性ーー选择会话类型。延长的运行时会话让应用程序继续与蓝牙设备通信,处理数据,播放声音或触觉,甚至在手表屏幕关闭后。

在xcode中Background Modes的位置如下:

选中之后双击:就出现了

相关推荐
zhangxingchao10 小时前
Kotlin常用的Flow 操作符整理
前端
IT_陈寒11 小时前
React的useState居然还有这种坑?我差点删库跑路
前端·人工智能·后端
Pedantic12 小时前
SwiftUI 手势笔记
前端·后端
橙子家13 小时前
浏览器缓存之【结构化数据库与缓存】: IndexedDB、Cache storage 和 Storage buckets
前端
user205855615181313 小时前
X6 中边悬浮置顶,规避 `mouseleave` 事件丢失问题
前端
李明卫杭州13 小时前
CSS aspect-ratio 属性完全指南
前端
Pedantic15 小时前
SwiftUI 手势层级(Gesture Hierarchy)详解
前端
飘尘15 小时前
前端转型全栈(Java后端)的快速上手指引
前端·后端·全栈
一颗烂土豆15 小时前
Meshopt 压缩深度解析,为什么它比 Draco 更快
前端·javascript·webgl