The watch app
The companion watchOS app that runs the AWARE sensors, and how it works with the phone app.
carp_aware_package receives data from an Apple Watch. A companion watchOS app does the collecting by running the AWARE sensors. That app is a watchOS target inside your Flutter app's Xcode project, and you add it once.
Project layout
One Xcode project holds two targets, and both get their AWARE binaries from the same plugin:
Both halves of the AWARE framework ship inside the same Flutter plugin. There is no separate package to fetch and no AWARE source to check out.
| Target | Platform | AWARE product | Linked |
|---|---|---|---|
Runner | iOS | carp-aware-package | Automatically |
CarpWatch Watch App | watchOS | carp-aware-watch | Manually, in Add the watch target |
How the two apps communicate
The watch asks, and the phone answers from the deployed study protocol:
The watch app carries no study configuration of its own. It asks the phone app what to sample, and the phone answers from the AppleWatchDevice. Watch settings lists the keys it sends.
Setup steps
1. Add the watch target
Create the watchOS app target, set the bundle identifiers, and link the AWARE framework into it.
2. Capabilities and permissions
HealthKit, background modes, and the privacy strings watchOS requires before it asks the participant for anything.
3. Watch app source code
A simple SwiftUI app on the watch that asks the phone for settings and collects AWARE sensors.
4. Build and verify
Install the app on the watch and follow the data end to end.