Package and distribute Wear apps

With Wear OS, a user can visit the Play Store on a watch and download a Wear app directly to the watch. Additionally, a user can install an app directly onto their watch using the web-based Play Store.

When a Wear app has an accompanying mobile app, you must use the same key to sign each of the two apps for them to communicate using the Data Layer APIs.

Plan for the Play Store

To make your app appear in the on-watch Play Store, upload the watch APK in the Play Console just as you would any other APK. If you have only a watch APK and no phone APK, no other steps are required.

If you have a phone APK in addition to a watch APK, you must use the Multi-APK delivery method.

Distribution to Wear watches

On devices running Wear OS, when a user installs a phone app that has an associated watch app, the user gets a watch notification about the available watch app. Tapping the notification opens the watch Play Store, giving the user the option to install the watch app.

When you upload a watch APK using the Play Console, you can update your Wear APK independently from the phone APK. Your users will then receive updates using the watch Play Store. When you push an update to Play Console, the app automatically gets updated unless the user disabled auto-updates in the on-watch Play Store settings. Users can also update the apps manually in the Play Store.

Specify a version code

A watch APK's version code scheme can be independent from that of a phone APK. Its version code must also be unique.

It currently isn't possible to create a single APK that works on both a phone and watch.

If your Wear APK and companion APK share code and require coordinated releases, you should reserve the last two digits of the version code for APK variants. An example of an APK variant is CPU architecture. For an example, see, Multiple APK support.

Here is a suggested version code scheme:

  • Set the first two digits of the version code to the targetSdkVersion, such as 28.
  • Set the next three digits to the product version, such as 152 for a product version of 1.5.2.
  • Set the next two digits to build or release number, such as 01.
  • Reserve the last two digits for a multi-APK variant, such as 00.

If the example values (28, 152, 01, and 00) in this suggested version code scheme are used, the version code for the example APK variant would be 251520100.

Also see Set application version information.

Set up targeting for a watch

In your Android manifest file, you must set the uses-feature element to android.hardware.type.watch. Additionally, don't set the required attribute to false. Creating a single APK for Wear and non-Wear devices isn't supported at this time.

Thus, if an APK has the setting shown in the following sample, Google Play provides the APK to watches only:

<manifest package="com.example.standalone"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <uses-feature
        android:name="android.hardware.type.watch"/>
    ...
</manifest>

Combine the android.hardware.type.watch setting in the previous code sample with other criteria, such as SDK version, screen resolution, and CPU architecture. This way, different Wear APKs can target different hardware configurations.

Specify an app's standalone setting

Wear requires a meta-data element in the Android manifest file of watch apps, as a child of the <application> element. The name of the meta-data element is com.google.android.wearable.standalone and the value must be true or false. The element indicates whether your watch app is a standalone app and if the watch app is usable without phone (its core functions including authentication doesn't require another device).

See Standalone versus non-standalone Wear OS apps on how to declare standalone setting and additional guidance for watch apps categorization.

Even if the value is false, the watch app can be installed before the phone app is installed.

If your Wear app has an accompanying phone app, use the same package name for your Wear app and that phone app.

Note: We encourage developers to create a standalone app that can be enhanced with a mobile app. For an example of an app that can add extra features, see this sample app on GitHub.

Use the Play Console

You can use the Play Console to upload a standalone Wear APK to an app listing.

Also see Multiple APK support and Manage your app. Ensure the APK is signed before uploading, as described later in this topic.

Upload and publish your APK

Uploading and publishing your APK using the Play Console, follows a similar process as mobile. In addition, you will need to opt in to Wear OS in the Play Console as shown in the following steps:

  1. In the Play Console, go to Setup and click to open up more options.
  2. Go to Advanced Settings, select the Release types tab and click Add release type.
  3. Click Wear OS.

Upload a screenshot of your Wear OS app and mention Wear OS in your app's Google Play Store listing. See Distribute to Wear OS for more information.

Top reasons Wear OS apps are rejected from the Play Store

Review the following list to reduce the likelihood of your app being rejected from the Play Store. In addition, review the Wear OS app quality page to make sure your app meets those guidelines.

Doesn't mention "Wear OS" in the store listing

Developers are required to mention "Wear OS" in the Wear/Watch app's store listing.

Basic functionality is broken

This is a broad category, but apps can be rejected when they aren't functioning properly. Make sure you thoroughly test your app on the emulator and a physical device.

In addition, make sure your app screenshots reflect what the actual app looks like. If the screenshots aren't accurate, the app is considered not working as advertised and will be rejected.

No Wear screenshot

Apps are required to include a Wear screenshot. The process is similar to mobile and is easy to do from Android Studio. In addition, we offer several Wear skins for your screenshots.

Not formatted for round displays

Be sure to specify in the Play Store description if your app doesn't support round displays. Otherwise, if an app's layout doesn't render correctly on a round display, it will be rejected.

Make sure you test your app on a round device or emulator to make sure the same layouts render correctly. Use the Wear OS layouts included in the Layout Inspector in Android Studio. For more information, see Open the Layout Inspector.

Missing functionality requirements

A common missing functionality requirement is when notifications aren't enhanced for Wear. Make sure you follow the visual guidelines and enable users to reply using RemoteInput for messaging apps.