Apple Watch Companion: протоколы и порты
Полная инженерная документация проекта, позволяющего подключать Apple Watch к Android, Linux, Windows и macOS через нативные Bluetooth/IDS протоколы и общий Flutter Companion.
privacy
Эта заметка участвует в semantic memory.
AI Summary
🚀 TL;DR: проект реализует полный стек от BLE-обнаружения до активации, реконнекта и управления нативными циферблатами на четырёх платформах. 2) Ключевые тезисы: Android Bridge (Magisk) владеет HAL и ключами; Linux/Windows используют Rust HCI + Java protocol-runtime; macOS ограничен BLE discovery; все команды идут через CompanionFlutterBridge → BridgeIpcClient → CompanionBridgeService → OperationalWatchService → HalTransportSession → IDS. 3) Важные детали: watchOS 26.2 (23S303), Watch7,5, Bridge 0.2.429, Companion 1.0.86+87, Rust 0.1.1; 18 durable checkpoints PairingSessionRecord; 180-секундный readback timeout; 16 MiB archive limit; QUIC ALPN application-service, 1200 байт datagram; 530 native reference images для swatches; DPAPI на Windows, AES-GCM на Linux. 4) Практические выводы: для новой пары нужен экран сопряжения; после обновления сохраняйте state и bundle; при сбоях проверяйте phase/journal и реальный экран часов; не используйте force/replay команды как обычный Connect.