При создании приложений Wear OS для Китая необходимо учитывать наличие устройств без предустановленных сервисов Google Play. Эта страница содержит общие изменения, которые разработчикам, возможно, потребуется внедрить для китайского рынка.
Используйте правильную версию сервисов Google Play
Сервисы Google Play версии 10.2.0 обеспечивают глобальную поддержку API Fused Location Provider и API Data Layer . Для поддержки более широкого спектра устройств Wear OS в Китае необходимо использовать эту версию сервисов Google Play. В других случаях эта зависимость необязательна.
Примечание: несмотря на то, что сервисы Google Play содержат API для приложений Wear OS, приложения Wear OS для Китая должны продолжать использовать API, связанные с GoogleApiClient
; см. раздел Доступ к API носимых устройств .
API поставщика объединённого местоположения
Если вы используете API Fused Location Provider, включите следующую зависимость в файл build.gradle
вашего модуля Wear OS:
Круто
dependencies { ... implementation 'com.google.android.gms:play-services-location:10.2.0' }
Котлин
dependencies { ... implementation("com.google.android.gms:play-services-location:10.2.0") }
API уровня данных
Если ваше приложение использует API Data Layer, вам необходимо добавить следующую строку в файл build.gradle
вашего модуля Wear OS. Эта строка требует использования клиентской библиотеки версии 10.2.0.
Круто
dependencies { ... implementation 'com.google.android.gms:play-services-wearable:10.2.0' ... }
Котлин
dependencies { ... implementation("com.google.android.gms:play-services-wearable:10.2.0") ... }
Добавьте следующую строку в файл build.gradle
вашего мобильного модуля. Замените зависимость от сервисов Google Play ссылкой на версию 10.2.0.
Круто
dependencies { ... implementation 'com.google.android.gms:play-services-wearable:10.2.0' }
Котлин
dependencies { ... implementation("com.google.android.gms:play-services-wearable:10.2.0") }
Аутентификация
Прежде чем внедрять аутентификацию, проверьте, действительно ли она нужна в вашем случае. Например, для приложения, предоставляющего прогноз погоды, вход в систему и, следовательно, аутентификация, скорее всего, не требуются.
Если вам требуется аутентификация, рекомендуем использовать библиотеку AndroidX Oauth . Для этого требуется предоставление кода авторизации с помощью потока PKCE . Вы также можете использовать один из других методов, описанных в разделе «Аутентификация на носимых устройствах» . Использование библиотеки поддержки носимых устройств не рекомендуется.
Для получения дополнительной информации см. пример Wear OS OAuth на GitHub.
Уведомления по мосту
Уведомления с моста не поддерживаются в Китае. Уведомления с телефона передаются на Wear OS только в том случае, если устройство Wear OS подключено к телефону по Bluetooth.
Совместимость местоположения и картографических координат
Используйте FusedLocationProvider
(FLP) для определения местоположения пользователя в Китае, как и в остальном мире. Это гарантирует, что ваше приложение будет использовать наиболее точную информацию независимо от устройства часов и платформы телефона, с которым они сопряжены. Использование FLP также обеспечивает оптимизацию расхода заряда батареи, встроенную в платформу Wear OS.
При интеграции FusedLocationProvider
со сторонними картографическими SDK учитывайте совместимость координат между поставщиками. FusedLocationProvider
сообщает местоположение в соответствии со стандартом WGS84 . При необходимости обязательно преобразуйте системы координат.
Поддержка Google Fit
Счётчик шагов, минут активности и баллов сердечного ритма Google Fit поддерживается в Китае и позволяет сохранять историю до семи дней. Доступ к ней можно получить без указания учётных данных пользователя.
Поддержка голосовых команд
Платформа Wear OS предоставляет несколько голосовых команд, основанных на действиях пользователя, например, «Показать пульс» или «Установить будильник». Это позволяет пользователю сказать, что он хочет сделать, а система определит наилучшее действие для начала.
Когда пользователи произносят голосовое действие, ваше приложение может фильтровать намерение, которое активируется для запуска активности. Чтобы запустить службу в фоновом режиме, отобразите активность в виде визуальной подсказки и запустите службу в активности. Обязательно вызовите метод finish()
, чтобы избавиться от визуальной подсказки.
Вот список голосовых намерений, поддерживаемых платформой Wear OS:
Категория | Пример | Спецификация намерений |
Остановка автомобиля | 打车去三里屯 | Действие Дополнительный Дополнительная опция необязательна. |
Установить будильник | 设置一个明早七点的闹钟 | Действие Дополнительно Эти дополнительные опции необязательны. Вы можете предоставить одну из них, обе или ни одну из них. |
Установить таймер | 设置一个三分钟的倒计时 | Действие Дополнительно |
Включить секундомер | 开始计时 | Действие |
Начать или закончить поездку на велосипеде | 开始骑车 | Действие Тип пантомимы Дополнительно |
Начать или остановить пробежку | 开始跑步 | Действие Тип пантомимы Дополнительно |
Начать или остановить тренировку | 开始锻炼 | Действие Тип пантомимы Дополнительно |
Показывать частоту сердечных сокращений | 查看心率 | Действие Тип пантомимы |
Показывать количество шагов | 查看步数 | Действие Тип пантомимы |
Навигация | 导航去三里屯 | Действие Данные geo:широта,долгота?q=融科资讯中心 |
Голосовой помощник также может использовать существующие общие намерения Android для запуска определенных действий там, где это применимо.
Поддержка эмулятора
Вы можете использовать китайскую версию образа эмулятора Wear OS для тестирования своих приложений. Поддерживается Android Studio 3.0 и выше.
Чтобы протестировать свои приложения на китайской версии эмулятора, выполните следующие действия:
- Установите эмулятор Android.
- Загрузите образы Wear OS for China из менеджера SDK. Используйте версию для Wear OS 3.5 (API уровня 30).
- При создании профиля AVD выберите образ Wear OS for China.
- Запустите эмулятор Wear OS for China для разработки.


Рисунок 1. Примеры китайской версии эмулятора Wear OS.
Эта версия эмулятора Wear OS поставляется с несколькими предустановленными приложениями:
- Режим Ambient
- Контакты
- Рукописный ввод Google
- Сервисы Google Play
- Медицинские услуги для Wear OS
- Распознавание ключевых слов для LE-устройств
- Пиньинь
- Play Store (адаптировано для устройств в Китае)
- Карманные часы
- TalkBack
- Циферблаты (как аналоговые, так и цифровые)
- Основные услуги Wear
Инициировать канал Bluetooth и Wi-Fi для конкретного приложения
Wear OS автоматически маршрутизирует сетевые запросы. В большинстве случаев приложению не требуется открывать отдельный канал Bluetooth и Wi-Fi.
Если приложение запрашивает канал Bluetooth и Wi-Fi, специфичный для приложения в Китае, запрос автоматически отклоняется. Вместо этого отображается диалоговое окно с запросом подтверждения. Если пользователь подтверждает, канал открывается. Это происходит каждый раз, а не только при первом использовании. Вызывается BluetoothAdapter.enable()
или WifiManager.setEnabled(true)
.
Примечание: Чтобы приложение, ориентированное на Android 10 (уровень API 29) или выше, вызывало WifiManager.setEnabled()
, оно должно быть системным приложением или контроллером политики устройства (DPC) .
Режим проверки разрешений
В Китае устройства Wear OS for China работают в режиме проверки разрешений, который накладывает некоторые ограничения на использование приложений с targetApiLevel
ниже 23. Ознакомьтесь со следующими ограничениями:
- Несмотря на то, что разрешения предоставляются во время установки, при первом запуске приложения с
targetApiLevel
ниже 23 появляется диалоговое окно с просьбой к пользователю подтвердить разрешения для этого приложения. - Компоненты приложения, такие как приемники вещания, службы и действия, не реагируют на соответствующие события до первого использования приложения.
В связи с этим мы рекомендуем использовать targetApiLevel
23 или выше и следовать лучшим практикам в отношении разрешений приложений .
Используйте API других сервисов Google Play
Если ваше приложение использует API сервисов Google Play, отличные от API носимых устройств, то оно должно проверять доступность этих API во время выполнения и реагировать соответствующим образом. Проверить доступность API сервисов Google Play можно двумя способами:
- Используйте отдельный экземпляр
GoogleApiClient
для подключения к другим API. Этот интерфейс содержит обратные вызовы, оповещающие ваше приложение об успешном или неудачном подключении. В случае неудачного подключенияConnectionResult
возвращаетAPI_UNAVAILABLE
. Чтобы узнать, как обрабатывать ошибки подключения, см. раздел Доступ к API Google . - Используйте метод
addApiIfAvailable()
классаGoogleApiClient.Builder
для подключения к необходимым API. После срабатывания обратного вызоваonConnected()
используйте методhasConnectedApi()
, чтобы убедиться, что все запрошенные API подключены корректно.
Распространять приложения в Китае
Для эффективного охвата пользователей Wear OS в Китае вы можете осуществлять распространение через сторонние магазины приложений Wear OS, например:
- Galaxy Store для устройств Samsung
- Магазин Xiaomi для устройств Xiaomi
- Mobvoi для всех остальных устройств