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.

## Plan for the Play Store


It's not possible to create a single APK that works on both a phone and a watch.


To make your app appear in the on-watch Play Store, upload the watch
Android Package Kit (APK) in the [Play Console](https://developer.android.com/training/wearables/packaging#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](https://developer.android.com/google/play/publishing/multiple-apks).

### 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 receive updates using the watch Play Store. When you
push an update to Play Console, the app is automatically updated unless the user disabled
auto-updates in the on-watch Play Store settings. Users can also update apps manually in
the Play Store.

### Specify a version code


A watch APK's version code must be unique across all form factors. Its version code scheme can
be independent from the scheme of a phone APK.


If your Wear APK and companion APK share code and require coordinated
releases, 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, [Using a version code scheme](https://developer.android.com/google/play/publishing/multiple-apks#using-a-version-code-scheme).


Here is a suggested version code scheme:

- Set the first two digits of the version code to the [`targetSdkVersion`](https://developer.android.com/guide/topics/manifest/uses-sdk-element#target), 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 the build or release number, such as 01.
- Reserve the last two digits for a multi-APK variant, such as 00.


For example, the sample values here---28, 152, 01, and 00---result in a
version code of 281520100.


For more information, see [Set app version information](https://developer.android.com/studio/publish/versioning#appversioning).

## Set up targeting for a watch


In your Android manifest file, you must set the `uses-feature`
element to `android.hardware.type.watch`.
Don't set the
`required` attribute to `false`; creating a single APK for
Wear and non-Wear devices isn't supported.


For example, if an APK has the `uses-feature` setting shown in the
following sample, Google Play provides the APK to watches only:  

```xml
<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](https://developer.android.com/guide/topics/manifest/meta-data-element) 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 the watch app is a *standalone* app, meaning it is usable without a phone and
its core functions, including authentication, don't require another device.


Even if the value of `com.google.android.wearable.standalone` is
`false`, the watch
app can be installed before the phone app is installed.
See [Standalone versus non-standalone Wear OS apps](https://developer.android.com/training/wearables/apps/standalone-apps) for more information about declaring
the standalone setting and for additional guidance on watch app categorization.

**Note:** If your Wear app has an accompanying phone app, you must
use the same package name for the two apps.

## Satisfy requirements for kid-friendly experiences


Select devices on Wear OS support a kid-friendly experience, which enables
the watch and its associated apps to operate on a fully standalone basis
using LTE and, when available, Wi-Fi connectivity. This includes calling, texting, and games.
To publish a kid-friendly experience for your app or watch face on the
Play Store, it must meet the following additional requirements:

- **Age and content rating:** Apps and watch faces that are designed for kids must meet the [age
  and content requirements](https://support.google.com/googleplay/android-developer/answer/9867159#declare_target_age_group) that are appropriate to their functionality.
- **Standalone functionality:** Apps must set `com.google.android.wearable.standalone` to `true`, as described in the section about [specifying
  an app's standalone setting](https://developer.android.com/training/wearables/packaging#specifying-app-as-standalone). It must also meet all [associated requirements for standalone apps](https://developer.android.com/training/wearables/apps/standalone-apps#identify), which take effect when the watch is set up with a [child account](https://support.google.com/families/answer/7103338).
- **Watch Face Format:** If you are developing a watch face for kids, it must be created using [Watch Face Format.](https://developer.android.com/training/wearables/wff)


For more information about creating kid-friendly experiences, see the
[development guidelines](https://developer.android.com/training/wearables/kids/develop).

**Caution:** If you implement an authentication solution in a
kid-friendly experience, you cannot use [Google Sign-in](https://developer.android.com/training/wearables/apps/auth-wear#Google-Sign-in)
because it's not compatible with child accounts.

## Use the Play Console


You can use the Play Console to [upload](https://support.google.com/googleplay/android-developer/answer/113469) a standalone Wear APK to an app listing.


For more information, see [Multiple
APK support](https://developer.android.com/google/play/publishing/multiple-apks) and [Manage your
app](https://developer.android.com/distribute/console#manage). Ensure the APK is [signed](https://play.google.com/console/about/guides/releasewithconfidence/)
before uploading.

### Upload and publish your APK


Uploading and publishing your Wear APK using the [Play Console](https://play.google.com/console/) follows a
[similar process as for mobile APKs](https://support.google.com/googleplay/android-developer/answer/9859152?visit_id=637503191249873752-4231192441&rd=1). However, you need to opt in to Wear OS in the Play Console,
as described in the following steps:

1. In the Play Console, go to **Setup** and click to open up more options.
2. Choose **Advanced Settings** , select the **Form factors** tab, and click **Add form factor**.
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](https://developer.android.com/distribute/best-practices/launch/distribute-wear)
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](https://developer.android.com/docs/quality-guidelines/wear-app-quality) to make sure your app meets those guidelines.

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


You are required to mention "Wear OS" in your Wear or watch app's store listing.

### Basic functionality is broken


This is a broad category, but apps are rejected if they don't function 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 is
rejected.

### No Wear screenshot


You are required to include a Wear screenshot. The process for taking a screenshot is similar
to taking a screenshot of a mobile app and can be done
[from Android Studio](https://developer.android.com/studio/debug/am-screenshot). There are several Wear
skins available 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 the app's layout doesn't render correctly on a round display, it is rejected.


Test your app on a round device or emulator to make sure the layouts render
correctly. Use the Wear OS layouts included in the Layout Inspector in Android Studio. For more
information, see
[Open the Layout Inspector](https://developer.android.com/studio/debug/layout-inspector).

### Missing functionality requirements

A common missing functionality requirement is when notifications aren't enhanced for Wear.
Make sure you follow the
[Wear OS apps quality guidelines](https://developer.android.com/docs/quality-guidelines/wear-app-quality)
and let users reply using
[RemoteInput](https://developer.android.com/reference/androidx/core/app/RemoteInput) for
[messaging apps](https://developer.android.com/training/wearables/notifications#wearable-only-actions).