packwise-skills 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cursorrules +23 -23
- package/CLAUDE.md +25 -25
- package/LICENSE +21 -0
- package/README.md +404 -295
- package/audit.md +224 -224
- package/bin/packwise.js +322 -155
- package/install.sh +123 -0
- package/package.json +32 -31
- package/skill.md +944 -719
- package/sub-skills/ai/local-llm.md +183 -183
- package/sub-skills/ai/python-ml.md +164 -164
- package/sub-skills/backend/go-server.md +184 -184
- package/sub-skills/backend/java-spring.md +241 -241
- package/sub-skills/backend/node-server.md +164 -164
- package/sub-skills/backend/php-laravel.md +175 -175
- package/sub-skills/backend/python-server.md +164 -164
- package/sub-skills/backend/rust-backend.md +118 -118
- package/sub-skills/cli/python-cli.md +236 -236
- package/sub-skills/cli/sdk-library.md +497 -497
- package/sub-skills/cloud/ci-cd-pipelines.md +350 -350
- package/sub-skills/cloud/docker.md +191 -191
- package/sub-skills/cloud/kubernetes.md +277 -277
- package/sub-skills/cloud/payment-integration.md +307 -307
- package/sub-skills/cross-platform/multiplatform.md +252 -252
- package/sub-skills/desktop/electron.md +783 -783
- package/sub-skills/desktop/game-dev.md +443 -443
- package/sub-skills/desktop/native-app.md +123 -123
- package/sub-skills/desktop/scenarios.md +443 -443
- package/sub-skills/desktop/smart-platforms.md +324 -324
- package/sub-skills/desktop/tauri.md +428 -428
- package/sub-skills/desktop/vr-ar.md +252 -252
- package/sub-skills/desktop/web-to-desktop.md +153 -153
- package/sub-skills/embedded/car-infotainment.md +129 -129
- package/sub-skills/embedded/esp32.md +184 -184
- package/sub-skills/embedded/ros.md +150 -150
- package/sub-skills/embedded/stm32.md +160 -160
- package/sub-skills/mobile/android.md +322 -322
- package/sub-skills/mobile/capacitor.md +232 -232
- package/sub-skills/mobile/flutter-mobile.md +138 -138
- package/sub-skills/mobile/harmonyos.md +150 -150
- package/sub-skills/mobile/ios.md +245 -245
- package/sub-skills/mobile/react-native.md +443 -443
- package/sub-skills/mobile/wearables.md +230 -230
- package/sub-skills/plugins/browser-extension.md +308 -308
- package/sub-skills/plugins/jetbrains-plugin.md +226 -226
- package/sub-skills/plugins/vscode-extension.md +204 -204
- package/sub-skills/security/security-tools.md +174 -174
- package/sub-skills/web/monorepo.md +274 -274
- package/sub-skills/web/pwa.md +220 -220
- package/sub-skills/web/serverless-edge.md +295 -295
- package/sub-skills/web/spa.md +266 -266
- package/sub-skills/web/ssr.md +228 -228
- package/sub-skills/web/wasm.md +243 -243
|
@@ -1,230 +1,230 @@
|
|
|
1
|
-
# Wearable App Build Sub-Skill
|
|
2
|
-
|
|
3
|
-
Build apps for smartwatches and wearable devices: Apple watchOS, Google Wear OS, Samsung Galaxy Watch, Xiaomi Band/Vela OS.
|
|
4
|
-
|
|
5
|
-
**Current versions**: watchOS 11 / Xcode 16 / Wear OS 5 / Galaxy Watch (One UI Watch 6) (2025-2026)
|
|
6
|
-
|
|
7
|
-
## When to Use
|
|
8
|
-
|
|
9
|
-
- Health/fitness tracking apps
|
|
10
|
-
- Companion apps for phone/desktop applications
|
|
11
|
-
- Smartwatch face customization
|
|
12
|
-
- Quick interaction widgets (notifications, payments, messaging)
|
|
13
|
-
- Industrial wearables (factory, logistics, medical)
|
|
14
|
-
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
## Apple watchOS
|
|
18
|
-
|
|
19
|
-
### When to Use
|
|
20
|
-
|
|
21
|
-
- iPhone companion apps (WatchKit)
|
|
22
|
-
- Standalone Apple Watch apps (watchOS 7+)
|
|
23
|
-
- Health/fitness with HealthKit integration
|
|
24
|
-
|
|
25
|
-
### Prerequisites
|
|
26
|
-
|
|
27
|
-
- macOS 14+ with Xcode 16 (free from App Store)
|
|
28
|
-
- Apple Developer account ($99/year)
|
|
29
|
-
- Apple Watch Series 4+ (for testing; Simulator available for basic testing)
|
|
30
|
-
|
|
31
|
-
### Build & Package
|
|
32
|
-
|
|
33
|
-
```bash
|
|
34
|
-
# Create watchOS target in existing Xcode project
|
|
35
|
-
# File → New → Target → watchOS → Watch App
|
|
36
|
-
|
|
37
|
-
# Standalone watchOS app (no iPhone required):
|
|
38
|
-
# In Watch App target → General → Deployment Info → check "Supports Running Without iPhone App to Companion App"
|
|
39
|
-
|
|
40
|
-
# Build
|
|
41
|
-
xcodebuild -scheme MyApp-Watch -configuration Release -sdk watchos -archivePath build/MyApp.xcarchive archive
|
|
42
|
-
|
|
43
|
-
# Archive → Distribute → App Store Connect → Upload
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
### watchOS Architecture
|
|
47
|
-
|
|
48
|
-
```
|
|
49
|
-
┌─────────────────────┐ ┌─────────────────────┐
|
|
50
|
-
│ iPhone App │ ←──→│ Watch App │
|
|
51
|
-
│ (iOS) │ │ (watchOS) │
|
|
52
|
-
│ │ │ │
|
|
53
|
-
│ - Full features │ WCSession / WatchConnectivity
|
|
54
|
-
│ - Heavy processing │ │ - Quick interactions │
|
|
55
|
-
│ - Data storage │ │ - HealthKit │
|
|
56
|
-
└─────────────────────┘ │ - Complications │
|
|
57
|
-
│ - Watch faces │
|
|
58
|
-
└─────────────────────┘
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
### Key Frameworks
|
|
62
|
-
|
|
63
|
-
| Framework | Purpose |
|
|
64
|
-
|-----------|---------|
|
|
65
|
-
| SwiftUI | UI framework (required for new watchOS apps) |
|
|
66
|
-
| HealthKit | Health data (heart rate, steps, workouts) |
|
|
67
|
-
| WatchConnectivity | iPhone ↔ Watch communication |
|
|
68
|
-
| ClockKit/WidgetKit | Complications and watch face widgets |
|
|
69
|
-
| CoreML | On-device ML inference |
|
|
70
|
-
| PassKit | Apple Pay on Watch |
|
|
71
|
-
|
|
72
|
-
### Common Pitfalls
|
|
73
|
-
|
|
74
|
-
| Issue | Fix |
|
|
75
|
-
|-------|-----|
|
|
76
|
-
| Watch app won't install | Check deployment target ≥ watchOS 7; verify provisioning profile |
|
|
77
|
-
| HealthKit permission denied | Add `com.apple.developer.healthkit` entitlement; request permission at runtime |
|
|
78
|
-
| Complication not updating | Implement `getTimelineEndDate` and `getCurrentTimelineEntry` in WidgetKit |
|
|
79
|
-
| Communication fails | Check `WCSession.isSupported()` and `activationState == .activated` |
|
|
80
|
-
| App crashes on background | watchOS aggressively suspends; use `WKApplication.shared().scheduleBackgroundRefresh` |
|
|
81
|
-
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
## Google Wear OS
|
|
85
|
-
|
|
86
|
-
### When to Use
|
|
87
|
-
|
|
88
|
-
- Android companion apps
|
|
89
|
-
- Standalone Wear OS apps
|
|
90
|
-
- Samsung Galaxy Watch (Wear OS 4+)
|
|
91
|
-
|
|
92
|
-
### Prerequisites
|
|
93
|
-
|
|
94
|
-
- Android Studio with Wear OS SDK
|
|
95
|
-
- JDK 17
|
|
96
|
-
- Wear OS emulator or physical device
|
|
97
|
-
|
|
98
|
-
### Build & Package
|
|
99
|
-
|
|
100
|
-
```bash
|
|
101
|
-
# Create Wear OS module in existing Android project
|
|
102
|
-
# File → New → New Module → Wear OS → Wear OS App
|
|
103
|
-
|
|
104
|
-
# Build
|
|
105
|
-
cd wearos && ./gradlew assembleRelease
|
|
106
|
-
# Output: build/outputs/apk/release/wearos-release.apk
|
|
107
|
-
|
|
108
|
-
# For Play Store: Build App Bundle
|
|
109
|
-
./gradlew bundleRelease
|
|
110
|
-
# Output: build/outputs/bundle/release/wearos-release.aab
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
### Wear OS Architecture
|
|
114
|
-
|
|
115
|
-
```kotlin
|
|
116
|
-
// build.gradle.kts (Wear OS module)
|
|
117
|
-
android {
|
|
118
|
-
defaultConfig {
|
|
119
|
-
minSdk = 30 // Wear OS 3+
|
|
120
|
-
targetSdk = 34
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
dependencies {
|
|
125
|
-
// Wear Compose (UI)
|
|
126
|
-
implementation("androidx.wear.compose:compose-material:1.4.0")
|
|
127
|
-
implementation("androidx.wear.compose:compose-foundation:1.4.0")
|
|
128
|
-
// Tiles (persistent glanceable UI)
|
|
129
|
-
implementation("androidx.wear.tiles:tiles:1.4.0")
|
|
130
|
-
// Complications
|
|
131
|
-
implementation("androidx.wear.watchface:watchface-complications-rendering:1.2.1")
|
|
132
|
-
// Data sync with phone
|
|
133
|
-
implementation("com.google.android.gms:play-services-wearable:18.2.0")
|
|
134
|
-
}
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
### Key Components
|
|
138
|
-
|
|
139
|
-
| Component | Purpose |
|
|
140
|
-
|-----------|---------|
|
|
141
|
-
| Compose for Wear OS | UI toolkit (Material Design for round screens) |
|
|
142
|
-
| Tiles | Persistent glanceable surfaces (like watch face complications) |
|
|
143
|
-
| Watch Face API | Custom watch face development |
|
|
144
|
-
| Data Layer API | Phone ↔ Watch data sync via Google Play Services |
|
|
145
|
-
| Health Services | Heart rate, step counter, exercise tracking |
|
|
146
|
-
| Ambient Mode | Low-power always-on display |
|
|
147
|
-
|
|
148
|
-
### Common Pitfalls
|
|
149
|
-
|
|
150
|
-
| Issue | Fix |
|
|
151
|
-
|-------|-----|
|
|
152
|
-
| App rejected by Play Store | Ensure `android:hardware.type.watch` in manifest |
|
|
153
|
-
| Round screen layout issues | Use `Box` with `clipToCircle` modifier in Compose |
|
|
154
|
-
| Data sync not working | Check Google Play Services version on both devices |
|
|
155
|
-
| Battery drain | Use `AmbientMode` for always-on; minimize sensor polling |
|
|
156
|
-
| No physical device | Use Wear OS emulator in Android Studio (API 30+) |
|
|
157
|
-
|
|
158
|
-
---
|
|
159
|
-
|
|
160
|
-
## Samsung Galaxy Watch (One UI Watch)
|
|
161
|
-
|
|
162
|
-
### When to Use
|
|
163
|
-
|
|
164
|
-
- Galaxy Watch-specific features (Samsung Health, Bixby)
|
|
165
|
-
- Tizen legacy support (Watch 3 and earlier)
|
|
166
|
-
- Wear OS 4+ development (Watch 4+)
|
|
167
|
-
|
|
168
|
-
### Key Notes
|
|
169
|
-
|
|
170
|
-
- **Watch 4+**: Uses Wear OS (standard Android development)
|
|
171
|
-
- **Watch 3 and earlier**: Uses Tizen (Samsung's own OS)
|
|
172
|
-
- Samsung Health SDK for deep health integration
|
|
173
|
-
- Galaxy Watch Studio for watch face design (no code)
|
|
174
|
-
|
|
175
|
-
### Build for Tizen (Legacy)
|
|
176
|
-
|
|
177
|
-
```bash
|
|
178
|
-
# Tizen Studio
|
|
179
|
-
tizen build -t wearable -c llvm -C Debug
|
|
180
|
-
tizen package -t wgt -s certificate-profile
|
|
181
|
-
# Output: .wgt file for Samsung Galaxy Store
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
### Build for Wear OS (Watch 4+)
|
|
185
|
-
|
|
186
|
-
Same as Wear OS section above. Distribute via Google Play Store or Samsung Galaxy Store.
|
|
187
|
-
|
|
188
|
-
---
|
|
189
|
-
|
|
190
|
-
## Xiaomi Wearables (Mi Band / Xiaomi Watch / Vela OS)
|
|
191
|
-
|
|
192
|
-
### Key Notes
|
|
193
|
-
|
|
194
|
-
- **Mi Band**: Runs proprietary RTOS, uses Xiaomi Wear app
|
|
195
|
-
- **Xiaomi Watch**: Runs HyperOS (based on Android/Wear OS)
|
|
196
|
-
- **Vela OS**: Xiaomi's RTOS for IoT/wearable, based on NuttX
|
|
197
|
-
- **Development**: Limited SDK access; companion apps developed as Android/iOS apps
|
|
198
|
-
- **Xiaomi IoT SDK**: For smart home device integration
|
|
199
|
-
|
|
200
|
-
### Companion App Build
|
|
201
|
-
|
|
202
|
-
```bash
|
|
203
|
-
# Build as standard Android/iOS app
|
|
204
|
-
# Use Xiaomi Health SDK for health data
|
|
205
|
-
# Use Xiaomi IoT SDK for smart home control
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
---
|
|
209
|
-
|
|
210
|
-
## Selection Guide
|
|
211
|
-
|
|
212
|
-
| Target Device | Platform | Language | Distribution |
|
|
213
|
-
|--------------|----------|----------|-------------|
|
|
214
|
-
| Apple Watch | watchOS | Swift | App Store (iPhone companion or standalone) |
|
|
215
|
-
| Galaxy Watch 4+ | Wear OS | Kotlin | Google Play / Samsung Galaxy Store |
|
|
216
|
-
| Galaxy Watch 3- | Tizen | C# / web (Tizen .NET) | Samsung Galaxy Store |
|
|
217
|
-
| Pixel Watch | Wear OS | Kotlin | Google Play |
|
|
218
|
-
| Xiaomi Watch (HyperOS) | Android/Wear OS | Kotlin | GetApps / Google Play |
|
|
219
|
-
| Mi Band | Proprietary | N/A (companion app only) | Companion app on Android/iOS |
|
|
220
|
-
|
|
221
|
-
## Universal Wearable Packaging Checklist
|
|
222
|
-
|
|
223
|
-
1. **Test on physical device** — emulators don't replicate sensor behavior, battery, or screen shape
|
|
224
|
-
2. **Battery optimization** — minimize background processing; use ambient mode
|
|
225
|
-
3. **Screen shape** — support both round and rectangular displays
|
|
226
|
-
4. **Font size** — wearable screens are small; use dynamic type
|
|
227
|
-
5. **Touch targets** — minimum 48dp for finger tap
|
|
228
|
-
6. **Offline support** — watches frequently lose phone connection
|
|
229
|
-
7. **Complications/Tiles** — implement for quick glance access
|
|
230
|
-
8. **Accessibility** — VoiceOver (watchOS) / TalkBack (Wear OS)
|
|
1
|
+
# Wearable App Build Sub-Skill
|
|
2
|
+
|
|
3
|
+
Build apps for smartwatches and wearable devices: Apple watchOS, Google Wear OS, Samsung Galaxy Watch, Xiaomi Band/Vela OS.
|
|
4
|
+
|
|
5
|
+
**Current versions**: watchOS 11 / Xcode 16 / Wear OS 5 / Galaxy Watch (One UI Watch 6) (2025-2026)
|
|
6
|
+
|
|
7
|
+
## When to Use
|
|
8
|
+
|
|
9
|
+
- Health/fitness tracking apps
|
|
10
|
+
- Companion apps for phone/desktop applications
|
|
11
|
+
- Smartwatch face customization
|
|
12
|
+
- Quick interaction widgets (notifications, payments, messaging)
|
|
13
|
+
- Industrial wearables (factory, logistics, medical)
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Apple watchOS
|
|
18
|
+
|
|
19
|
+
### When to Use
|
|
20
|
+
|
|
21
|
+
- iPhone companion apps (WatchKit)
|
|
22
|
+
- Standalone Apple Watch apps (watchOS 7+)
|
|
23
|
+
- Health/fitness with HealthKit integration
|
|
24
|
+
|
|
25
|
+
### Prerequisites
|
|
26
|
+
|
|
27
|
+
- macOS 14+ with Xcode 16 (free from App Store)
|
|
28
|
+
- Apple Developer account ($99/year)
|
|
29
|
+
- Apple Watch Series 4+ (for testing; Simulator available for basic testing)
|
|
30
|
+
|
|
31
|
+
### Build & Package
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
# Create watchOS target in existing Xcode project
|
|
35
|
+
# File → New → Target → watchOS → Watch App
|
|
36
|
+
|
|
37
|
+
# Standalone watchOS app (no iPhone required):
|
|
38
|
+
# In Watch App target → General → Deployment Info → check "Supports Running Without iPhone App to Companion App"
|
|
39
|
+
|
|
40
|
+
# Build
|
|
41
|
+
xcodebuild -scheme MyApp-Watch -configuration Release -sdk watchos -archivePath build/MyApp.xcarchive archive
|
|
42
|
+
|
|
43
|
+
# Archive → Distribute → App Store Connect → Upload
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### watchOS Architecture
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
┌─────────────────────┐ ┌─────────────────────┐
|
|
50
|
+
│ iPhone App │ ←──→│ Watch App │
|
|
51
|
+
│ (iOS) │ │ (watchOS) │
|
|
52
|
+
│ │ │ │
|
|
53
|
+
│ - Full features │ WCSession / WatchConnectivity
|
|
54
|
+
│ - Heavy processing │ │ - Quick interactions │
|
|
55
|
+
│ - Data storage │ │ - HealthKit │
|
|
56
|
+
└─────────────────────┘ │ - Complications │
|
|
57
|
+
│ - Watch faces │
|
|
58
|
+
└─────────────────────┘
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Key Frameworks
|
|
62
|
+
|
|
63
|
+
| Framework | Purpose |
|
|
64
|
+
|-----------|---------|
|
|
65
|
+
| SwiftUI | UI framework (required for new watchOS apps) |
|
|
66
|
+
| HealthKit | Health data (heart rate, steps, workouts) |
|
|
67
|
+
| WatchConnectivity | iPhone ↔ Watch communication |
|
|
68
|
+
| ClockKit/WidgetKit | Complications and watch face widgets |
|
|
69
|
+
| CoreML | On-device ML inference |
|
|
70
|
+
| PassKit | Apple Pay on Watch |
|
|
71
|
+
|
|
72
|
+
### Common Pitfalls
|
|
73
|
+
|
|
74
|
+
| Issue | Fix |
|
|
75
|
+
|-------|-----|
|
|
76
|
+
| Watch app won't install | Check deployment target ≥ watchOS 7; verify provisioning profile |
|
|
77
|
+
| HealthKit permission denied | Add `com.apple.developer.healthkit` entitlement; request permission at runtime |
|
|
78
|
+
| Complication not updating | Implement `getTimelineEndDate` and `getCurrentTimelineEntry` in WidgetKit |
|
|
79
|
+
| Communication fails | Check `WCSession.isSupported()` and `activationState == .activated` |
|
|
80
|
+
| App crashes on background | watchOS aggressively suspends; use `WKApplication.shared().scheduleBackgroundRefresh` |
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## Google Wear OS
|
|
85
|
+
|
|
86
|
+
### When to Use
|
|
87
|
+
|
|
88
|
+
- Android companion apps
|
|
89
|
+
- Standalone Wear OS apps
|
|
90
|
+
- Samsung Galaxy Watch (Wear OS 4+)
|
|
91
|
+
|
|
92
|
+
### Prerequisites
|
|
93
|
+
|
|
94
|
+
- Android Studio with Wear OS SDK
|
|
95
|
+
- JDK 17
|
|
96
|
+
- Wear OS emulator or physical device
|
|
97
|
+
|
|
98
|
+
### Build & Package
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
# Create Wear OS module in existing Android project
|
|
102
|
+
# File → New → New Module → Wear OS → Wear OS App
|
|
103
|
+
|
|
104
|
+
# Build
|
|
105
|
+
cd wearos && ./gradlew assembleRelease
|
|
106
|
+
# Output: build/outputs/apk/release/wearos-release.apk
|
|
107
|
+
|
|
108
|
+
# For Play Store: Build App Bundle
|
|
109
|
+
./gradlew bundleRelease
|
|
110
|
+
# Output: build/outputs/bundle/release/wearos-release.aab
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Wear OS Architecture
|
|
114
|
+
|
|
115
|
+
```kotlin
|
|
116
|
+
// build.gradle.kts (Wear OS module)
|
|
117
|
+
android {
|
|
118
|
+
defaultConfig {
|
|
119
|
+
minSdk = 30 // Wear OS 3+
|
|
120
|
+
targetSdk = 34
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
dependencies {
|
|
125
|
+
// Wear Compose (UI)
|
|
126
|
+
implementation("androidx.wear.compose:compose-material:1.4.0")
|
|
127
|
+
implementation("androidx.wear.compose:compose-foundation:1.4.0")
|
|
128
|
+
// Tiles (persistent glanceable UI)
|
|
129
|
+
implementation("androidx.wear.tiles:tiles:1.4.0")
|
|
130
|
+
// Complications
|
|
131
|
+
implementation("androidx.wear.watchface:watchface-complications-rendering:1.2.1")
|
|
132
|
+
// Data sync with phone
|
|
133
|
+
implementation("com.google.android.gms:play-services-wearable:18.2.0")
|
|
134
|
+
}
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### Key Components
|
|
138
|
+
|
|
139
|
+
| Component | Purpose |
|
|
140
|
+
|-----------|---------|
|
|
141
|
+
| Compose for Wear OS | UI toolkit (Material Design for round screens) |
|
|
142
|
+
| Tiles | Persistent glanceable surfaces (like watch face complications) |
|
|
143
|
+
| Watch Face API | Custom watch face development |
|
|
144
|
+
| Data Layer API | Phone ↔ Watch data sync via Google Play Services |
|
|
145
|
+
| Health Services | Heart rate, step counter, exercise tracking |
|
|
146
|
+
| Ambient Mode | Low-power always-on display |
|
|
147
|
+
|
|
148
|
+
### Common Pitfalls
|
|
149
|
+
|
|
150
|
+
| Issue | Fix |
|
|
151
|
+
|-------|-----|
|
|
152
|
+
| App rejected by Play Store | Ensure `android:hardware.type.watch` in manifest |
|
|
153
|
+
| Round screen layout issues | Use `Box` with `clipToCircle` modifier in Compose |
|
|
154
|
+
| Data sync not working | Check Google Play Services version on both devices |
|
|
155
|
+
| Battery drain | Use `AmbientMode` for always-on; minimize sensor polling |
|
|
156
|
+
| No physical device | Use Wear OS emulator in Android Studio (API 30+) |
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## Samsung Galaxy Watch (One UI Watch)
|
|
161
|
+
|
|
162
|
+
### When to Use
|
|
163
|
+
|
|
164
|
+
- Galaxy Watch-specific features (Samsung Health, Bixby)
|
|
165
|
+
- Tizen legacy support (Watch 3 and earlier)
|
|
166
|
+
- Wear OS 4+ development (Watch 4+)
|
|
167
|
+
|
|
168
|
+
### Key Notes
|
|
169
|
+
|
|
170
|
+
- **Watch 4+**: Uses Wear OS (standard Android development)
|
|
171
|
+
- **Watch 3 and earlier**: Uses Tizen (Samsung's own OS)
|
|
172
|
+
- Samsung Health SDK for deep health integration
|
|
173
|
+
- Galaxy Watch Studio for watch face design (no code)
|
|
174
|
+
|
|
175
|
+
### Build for Tizen (Legacy)
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
# Tizen Studio
|
|
179
|
+
tizen build -t wearable -c llvm -C Debug
|
|
180
|
+
tizen package -t wgt -s certificate-profile
|
|
181
|
+
# Output: .wgt file for Samsung Galaxy Store
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### Build for Wear OS (Watch 4+)
|
|
185
|
+
|
|
186
|
+
Same as Wear OS section above. Distribute via Google Play Store or Samsung Galaxy Store.
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
## Xiaomi Wearables (Mi Band / Xiaomi Watch / Vela OS)
|
|
191
|
+
|
|
192
|
+
### Key Notes
|
|
193
|
+
|
|
194
|
+
- **Mi Band**: Runs proprietary RTOS, uses Xiaomi Wear app
|
|
195
|
+
- **Xiaomi Watch**: Runs HyperOS (based on Android/Wear OS)
|
|
196
|
+
- **Vela OS**: Xiaomi's RTOS for IoT/wearable, based on NuttX
|
|
197
|
+
- **Development**: Limited SDK access; companion apps developed as Android/iOS apps
|
|
198
|
+
- **Xiaomi IoT SDK**: For smart home device integration
|
|
199
|
+
|
|
200
|
+
### Companion App Build
|
|
201
|
+
|
|
202
|
+
```bash
|
|
203
|
+
# Build as standard Android/iOS app
|
|
204
|
+
# Use Xiaomi Health SDK for health data
|
|
205
|
+
# Use Xiaomi IoT SDK for smart home control
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
## Selection Guide
|
|
211
|
+
|
|
212
|
+
| Target Device | Platform | Language | Distribution |
|
|
213
|
+
|--------------|----------|----------|-------------|
|
|
214
|
+
| Apple Watch | watchOS | Swift | App Store (iPhone companion or standalone) |
|
|
215
|
+
| Galaxy Watch 4+ | Wear OS | Kotlin | Google Play / Samsung Galaxy Store |
|
|
216
|
+
| Galaxy Watch 3- | Tizen | C# / web (Tizen .NET) | Samsung Galaxy Store |
|
|
217
|
+
| Pixel Watch | Wear OS | Kotlin | Google Play |
|
|
218
|
+
| Xiaomi Watch (HyperOS) | Android/Wear OS | Kotlin | GetApps / Google Play |
|
|
219
|
+
| Mi Band | Proprietary | N/A (companion app only) | Companion app on Android/iOS |
|
|
220
|
+
|
|
221
|
+
## Universal Wearable Packaging Checklist
|
|
222
|
+
|
|
223
|
+
1. **Test on physical device** — emulators don't replicate sensor behavior, battery, or screen shape
|
|
224
|
+
2. **Battery optimization** — minimize background processing; use ambient mode
|
|
225
|
+
3. **Screen shape** — support both round and rectangular displays
|
|
226
|
+
4. **Font size** — wearable screens are small; use dynamic type
|
|
227
|
+
5. **Touch targets** — minimum 48dp for finger tap
|
|
228
|
+
6. **Offline support** — watches frequently lose phone connection
|
|
229
|
+
7. **Complications/Tiles** — implement for quick glance access
|
|
230
|
+
8. **Accessibility** — VoiceOver (watchOS) / TalkBack (Wear OS)
|