Wear OS versus Mobile Development

Wear OS is based on Android and is optimized for the wrist. If you have developed for Android before, you may have used many of these features and APIs. However, there are some differences between how you design a mobile app and how you design a Wear OS app.

We recommend you read through the Principles of Wear OS development guide to get a full picture on how to design your app.

Note: The API level 30 Wear OS emulator system image is currently in Developer Preview. See release notes for the latest updates.

To find how a specific feature/API/best practice is different from Android mobile app development to Wear OS app development, use the the filter field.

Features / APIs / Best Practices Wear OS versus Mobile Details
Designing your App's UI/UX Different Focus on a handful of critical tasks that can be done within seconds.
UI Surfaces Different Wear OS goes beyond activities and notifications with many additional unique surfaces including overlays, tiles, complications, watch faces, and more.
UI Components Mobile and more Mobile components and Wear-OS-specific specific components: BoxInsetLayout, SwipeDismissFrameLayout, WearableRecyclerView, and many additional components.
Ongoing Activity Different Adds ongoing notifications to new Wear OS surfaces.
Dark theme/mode Different Everything is dark mode in Wear OS to save battery.
Back Stack Different Users can swipe to dismiss and swipe to go up the back stack.
Physical buttons Different A wearable device typically contains one or more physical buttons. Wear OS devices always have, at minimum, one button (the power button). Beyond that, watches may have zero or more multifunction buttons that can be used in your app.
Rotary Input Different Some Wear OS devices contain a physical rotating side button or rotary input. When the user turns the button, your app's current view should scroll up or down.
App Resume Different Users can double-tap the secondary hardware button to resume their recently used apps. When users re-enter your app, your app should remember the users' scroll position.
Architecture Components Same Android developer guide: Android Architecture Components
Navigation Different Wear OS apps should be shallow (avoid deeper than two levels) and linear (show most content and navigation inline).
Interacting with other apps Same Interacting with other aps
Interacting with paired devices New Wear OS can interact with paired devices through the Wear app. Read more at Send and sync data.
Intents and intent filters Same Android developer guide: Intents and intent filters
Animations and transitions Same Android developer guide: Animations and transitions
Images and graphics Same Android developer guide: Images and graphics
Services / Background Tasks Same Android developer guide: Services overview
Background Tasks Same Android developer guide: Guide to background processing
Permissions Same Android developer guide: Permissions on Android
App data and files Same Android developer guide: App data and files
User data and identity Similar but different Wear OS has additional options for authentication beyond the other related APIs. Read more about Authentication in Wear OS.
User Location Same TheFusedLocationProvider also takes advantage of the phone's GPS chip to save battery life and Detect location on Wear OS.
Touch and input Mobile and more Beyond standard touch input, Wear OS offers more input. Read more at Touch and input overview.
Sensors Same and more Development for Wear OS is similar to mobile. Also, to simplify your app on Wear OS, consider the Health Services API, which handles this for you. Read about Sensors.
Health Services New Provides fitness and health data generated from sensors, contextually-aware algorithms, and all-day health monitoring. For more information, see Wear Health Services
Connectivity Mostly the same Most of the APIs are fully supported, but there are some limitations for certain edge cases. For example, the android.webkit APIs aren't supported. For more information, read Network access and sync on Wear OS.
Android App Bundles Same Android developer guide: About Android app bundles
Dependency injection Same Android developer guide: Dependency injection in Android
Testing Similar Android developer guide: Test apps on Android
Performance Similar Android developer guide: Performance and power
Accessibility Same Android developer guide: Build more accessible apps
Privacy Same Android developer guide: Privacy best practices
Security Same Android developer guide: App security best practices