| Предыдущая лекция | Следующая лекция | |
|---|---|---|
| Проект "каршеринг" Часть 3. Работа с Яндекс картами | Содержание | Android TV |
В принципе тот же андроид, только с немного урезанным функционалом (список отрезанных SDK легко гуглится). Но на нашем уровне разницы практически не заметно.
Для часов корневым элементом разметки является BoxInsetLayout (начиная со 2-й версии).
Внутри него расположен FrameLayout (это запоминать не нужно - приложение сразу таким и создаётся).
Свою разметку вы уже располагаете внутри FrameLayout
На FutureSkills 2019 было задание залогиниться на часах и показать какую-то информацию с сервера. Реализуем это на нашем API:
Заставку пропущу, но тут вы и сами должны справиться
Экран авторизации (поля ввода и кнопки Login/Logout) рисуем прямо на экране activity
Тут тоже сделайте сами. Отмечу только, что activity создается в меню New -> Wear -> Blank activity
HTTP-запросы тоже рабтают как обычно - реализуйте login/logout по аналогии с прошлым заданием.
Научимся выводить список (на примере автомобилей):
Для запроса списка автомобилей используется метод GET /cars
Для отображения списка есть свой элемент - androidx.wear.widget.WearableRecyclerView (позволяет прокручивать список механическим колесиком на часах и доскроливать крайние элементы до середины экрана, что очень удобно на круглых интерфейсах).
wrc = findViewById(R.id.wrc)
// wrc.setHasFixedSize(true)
// этот параметр позволяет прокручивать
// крайние элементы списка на середину экрана
// (иначе на круглых часах можно не разглядеть содержимое)
wrc.isEdgeItemsCenteringEnabled = true
// менеждер тоже свой
wrc.layoutManager = WearableLinearLayoutManager(this)
// адаптер не отличается
wrc.adapter = MyAdapter(chatList)
Google не рекомендует пользоваться HTTP-запросами в приложении часов. В носимой электронике большую роль играет энергоэффективность. А активное интернет-соединение будет быстро сажать батарею, и могут регулярно происходить разрывы связи. Ещё носимые устройства предполагают активную синхронизацию, которую тоже нужно реализовывать. Все эти проблемы за нас любезно решает механизм обмена данными в Google Services под названием «Data Layer».
Data Layer помогает синхронизировать данные между всеми носимыми устройствами, привязанными к одному Google аккаунта пользователя. Он выбирает наиболее оптимальный маршрут для обмена данными (bluetooth, network) и реализует стабильную передачу. Это гарантирует, что сообщение дойдет до нужного девайса.
Разработать приложение для Wear OS c несколькими экранами:
| Предыдущая лекция | Следующая лекция | |
|---|---|---|
| Проект "каршеринг" Часть 3. Работа с Яндекс картами | Содержание | Android TV |