Отличный вопрос.
Короткий ответ: нет : вы не можете быть уверены, что какие-либо данные, передаваемые через API Wear, не попадут в облако Google. Связь осуществляется через сервисы Google Play (также известные как GMS), которые непрозрачны. У нас нет возможности узнать, что любые данные, отправленные через GMS, поступают только на телефон, а не в облако.
Более длинный ответ: возможно . DataClient API хранит копию ваших данных в GMS и (как вы говорите) синхронизирует ее с «облачным узлом», так что, вероятно, это неправильное направление к go. Но нет никаких доказательств того, что API MessageClient сохраняет сообщения после их доставки. Итак: используя NodeClient
API, вы можете sh установить, что Node.isNearby()
телефона истинно; мой опыт показывает, что это приравнивается к Bluetooth-соединению между телефоном и часами. Затем вы можете отправить свои данные через API MessageClient, и они , вероятно, будут доставлены через Bluetooth на телефон, не оставаясь в GMS достаточно долго, чтобы попасть в облако Google.
Если вам нужно Более сильная гарантия, чем это, то вы, вероятно, не сможете использовать API Wear как есть для передачи данных. Еще пара вариантов, которые мне приходят в голову:
- Выполните собственную передачу данных, вероятно, на основе необработанных API Bluetooth. Это, безусловно, возможно (я сделал это), но это значительный объем работы.
- Зашифруйте данные перед их передачей в GMS, а затем расшифруйте их в приложении для телефона. Это кажется проще, чем создание собственного уровня связи, но шифрование на самом деле не в моей рулевой рубке, поэтому я не могу дать дополнительных советов по этому поводу.