Garmin / Connect IQ 资源库
官方入口
- Garmin Connect IQ Developer Portal
- Connect IQ SDK
- Connect IQ API Docs
- Connect IQ Core Topics
- Reference Guides
Monkey C
重点 API:
Toybox.SystemToybox.ApplicationToybox.WatchUiToybox.GraphicsToybox.TimeToybox.Time.GregorianToybox.ActivityMonitorToybox.UserProfileToybox.SensorToybox.Application.Storage
Watch Face
这是你的项目核心。
重点关注:
WatchFace
WatchFaceView
onUpdate()
onPartialUpdate()
High Power Mode
Low Power Mode
Always-On
AMOLED AOD
屏幕刷新限制
功耗限制
内存限制
Partial Update
多设备适配图形与 UI
主要能力:
drawText
drawBitmap
drawLine
drawRectangle
drawCircle
drawArc
fillRectangle
fillCircle
Font
Bitmap
Color
Layout
Drawable你的表盘绝大部分视觉效果,都会在这里完成。
数据 API
运动与健康
可以研究:
Steps
Calories
Distance
Floors
Heart Rate
Stress
Body Battery
Sleep
Active Minutes
Pulse Ox
Barometer
Altitude
GPS
Temperature需要注意的是:不同 Garmin 设备支持的数据和 API 能力不同。
时间
主要用于:
时间
日期
星期
12 / 24 小时制
时区
夏令时
时间格式化设备适配
需要理解:
圆形屏幕
方形屏幕
MIP
AMOLED
不同分辨率
不同颜色数量
Touch
Buttons
Device Capability设置与存储
未来如果你的表盘支持:
主题颜色
字体
数据字段
布局
显示秒数
隐藏心率
隐藏步数主要会用到这些。
VS Code / 开发工具
工具链基本就是:
VS Code
+
Monkey C Extension
+
Connect IQ SDK
+
Simulator
+
真实 Garmin 设备性能 / 功耗
这个项目里特别值得关注:
CPU 时间
内存
Bitmap 占用
Font 占用
GC
绘制次数
每秒刷新
Partial Update
Low Power
Always-On
AMOLED Burn-in这部分其实会是这个项目最有意思的地方。
因为你会真正遇到:
不是代码能不能运行,而是能不能在一块低功耗设备上长期运行。
官方示例与代码
建议从官方 GitHub 生态和 SDK 自带 Samples 入手:
GitHub 搜索关键词:
language:Monkey-C
topic:garmin
topic:connect-iq
watchface
garmin-watchface
connect-iq-watchface可以重点研究:
manifest.xml
monkey.jungle
source/
resources/
WatchFaceView
onUpdate()
drawText()
drawBitmap()
设备兼容配置发布
最终流程:
开发
↓
Simulator
↓
真机测试
↓
生成发布包
↓
上传 Connect IQ
↓
审核
↓
Connect IQ StoreGarmin做一个自定义佳明表盘应用
