Apple Watch подключили к Android, Windows и Linux с помощью неофициального коннектора
Разработчик создал коннектор для Apple Watch, который воспроизводит часть протоколов iPhone и позволяет подключать часы к Android, Windows и Linux.
Разработчик под никнеймом LordixDemon выпустил неофициальный коннектор для Apple Watch. Утилита позволяет подключать часы к устройствам на Android, Windows и Linux, после чего они устанавливают зашифрованное соединение и проходят процедуру активации.
Проект воспроизводит часть протоколов, которые iPhone использует для обмена данными с Apple Watch. Клиентская часть приложения написана на Dart с использованием Flutter, а основной движок реализован на Java. В десктопной версии дополнительно применяется Rust — он отвечает за доступ к Bluetooth-контроллеру и взаимодействие с Java-движком.
Как работает сопряжение
Для подключения часы нужно связать с устройством с помощью кода или сканирования камерой специальной анимации, отображаемой на экране Apple Watch. После этого система выполняет активацию и первоначальную настройку, а сведения о созданной паре сохраняются для последующих подключений.
Передача данных организована через защищённый сетевой обмен внутри Bluetooth-канала. IPsec шифрует трафик, IPv6 и TCP отвечают за доставку сообщений, а слой IDS направляет их соответствующим службам watchOS. Для каждой отдельной функции требуется собственный обработчик, который преобразует данные между форматами Android или другой платформы и Apple Watch.
Доступные функции и ограничения
На текущем этапе реализованы просмотр уровня заряда, управление штатными циферблатами, обмен уведомлениями и поиск часов с помощью звукового сигнала. Десктопная версия пока в первую очередь ориентирована на стабильность соединения.
Автор протестировал приложение в Linux Mint 22.3 и Windows 10. В Linux программа получает исключительный доступ к Bluetooth-адаптеру, поэтому другие устройства не могут использовать Bluetooth во время активного сеанса. Для Android необходим root-доступ и установленный Magisk-модуль.
Версия для macOS пока находится на более ранней стадии: компьютер обнаруживает часы и устанавливает соединение, однако полный цикл сопряжения и активации ещё не реализован.
Исходный код коннектора и подробное описание протокола опубликованы на GitHub. Проект остаётся экспериментальным: набор поддерживаемых функций ограничен, а для работы на разных платформах требуются специальные системные разрешения.
Сообщить о проблеме в публикации
Обращение принято Обращение будет рассмотрено. По результатам проверки публикация может быть исправлена, дополнена, временно скрыта или удалена.
Читайте новые материалы журнала — свежие сюжеты каждый день.
На главную