Stay organized with collections
Save and categorize content based on your preferences.
Tiles provide quick access to the information and actions users need to get
things done. The tiles carousel is revealed by a swipe on the watch face, and
additional swipes will switch between tiles. Tiles themselves cannot be
scrolled.
Users can choose what tiles they want to see. There are tiles to check the
weather, set a timer, track daily fitness progress, quick-start a workout, play
a song, scan an upcoming meeting, and send a message to a favorite contact.
Figure 1.: Tiles give users access to information and
actions.
Instead of using Compose (or Views), Tiles are defined declaratively
using Jetpack's protolayout and tiles libraries. Because Tiles are
rendered in a separate, remote environment, they require different approaches to
load, display, and update data within them. Their simplicity makes them
straightforward to build, test, and deploy.
Core principles
Wear OS provides tiles as a way for you to show a small amount of key
information, which users can read through after they glance at a tile for a few
seconds. To provide this high-quality experience for users, follow these best
practices:
Don't overcrowd tiles with too much content. Instead, allow users to tap on
tiles to learn more and take action on another surface in your app. See
Include (at least) one container.
Declaratively define your tile's layout and content. The system is
responsible for the final rendering.
Don't fetch content frequently or start long-running asynchronous work in
your tile service. To perform work which may take some time to
complete—such as network calls—use WorkManager to schedule background
tasks, and cache or store the results in local storage.
Recommended for you
Note: link text is displayed when JavaScript is off
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-06-04 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-06-04 UTC."],[],[],null,["# Tiles provide quick access to the information and actions users need to get\nthings done. The tiles carousel is revealed by a swipe on the watch face, and\nadditional swipes will switch between tiles. Tiles themselves cannot be\nscrolled.\n\nUsers can choose what tiles they want to see. There are tiles to check the\nweather, set a timer, track daily fitness progress, quick-start a workout, play\na song, scan an upcoming meeting, and send a message to a favorite contact.\n**Figure 1.**: Tiles give users access to information and actions.\n\nInstead of using [Compose](/compose) (or [Views](/develop/ui/views/layout/declaring-layout)), Tiles are defined declaratively\nusing Jetpack's [protolayout](/jetpack/androidx/releases/wear-protolayout) and [tiles](/jetpack/androidx/releases/wear-tiles) libraries. Because Tiles are\nrendered in a separate, remote environment, they require different approaches to\nload, display, and update data within them. Their simplicity makes them\nstraightforward to build, test, and deploy.\n\nCore principles\n---------------\n\nWear OS provides tiles as a way for you to show a small amount of key\ninformation, which users can read through after they glance at a tile for a few\nseconds. To provide this high-quality experience for users, follow these best\npractices:\n\n- Don't overcrowd tiles with too much content. Instead, allow users to tap on tiles to learn more and take action on another surface in your app. See [Include (at least) one container](/design/ui/wear/guides/surfaces/tiles/bestpractices#include_at_least_one_container).\n- Declaratively define your tile's layout and content. The system is responsible for the final rendering.\n- Don't fetch content frequently or start long-running asynchronous work in your tile service. To perform work which may take some time to complete---such as network calls---use [WorkManager](/topic/libraries/architecture/workmanager/how-to/define-work#expedited) to schedule background tasks, and cache or store the results in local storage.\n\nRecommended for you\n-------------------\n\n- Note: link text is displayed when JavaScript is off\n- [Show dynamic updates in tiles](/training/wearables/tiles/dynamic)\n- [Migrate to ProtoLayout namespaces](/training/wearables/tiles/migrate-to-protolayout)"]]