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 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 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.
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 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.
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:
<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 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 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.
Use the Play Console
You can use the Play Console to upload a standalone Wear APK to an app listing.
For more information, see Multiple APK support and Manage your app. Ensure the APK is signed before uploading.
Upload and publish your APK
Uploading and publishing your Wear APK using the Play Console follows a similar process as for mobile APKs. However, you need to opt in to Wear OS in the Play Console, as described in the following steps:
- In the Play Console, go to Setup and click to open up more options.
- Choose Advanced Settings, select the Form factors tab, and click Add form factor.
- 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
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. 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.
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
and let users reply using
RemoteInput
for
messaging apps.