WatchFaceConfigIntentHelper

class WatchFaceConfigIntentHelper


Helper functions for use by watch face configuration activities. In general, there are two distinct users:

  • ones creating Intents

  • ones receiving and responding to those Intents.

To register a configuration activity for a watch face, add a <meta-data> entry to the watch face component in its Android Manifest file with an intent action to be fired to start the activity. The following meta-data will register the androidx.wear.watchface.editor.action.WATCH_FACE_EDITOR action to be started when configuring a watch face on the wearable device:

<meta-data
android:name="com.google.android.wearable.watchface.wearableConfigurationAction"
android:value="androidx.wear.watchface.editor.action.WATCH_FACE_EDITOR" />

To register a configuration activity to be started on a companion phone, add the following alternative meta-data entry to the watch face component:

<meta-data
android:name="com.google.android.wearable.watchface.companionConfigurationAction"
android:value="androidx.wear.watchface.editor.action.WATCH_FACE_EDITOR" />

The activity should have an intent filter which lists the action specified in the meta-data block above, in addition to the two categories present in the following example:

<activity android:name=".MyWatchFaceConfigActivity">
<intent-filter>
<action android:name="androidx.wear.watchface.editor.action.WATCH_FACE_EDITOR" />
<category android:name=
"com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>

For phone side configuration activities, substitute the category com.google.android.wearable.watchface.category.COMPANION_CONFIGURATION for com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION.

Summary

Public companion functions

String?
getPeerIdExtra(watchFaceIntent: Intent)

This method is for retrieving the ID of the currently connected device from the given Intent.

ComponentName?

This method is for retrieving the extended data of watch face ComponentName from the given Intent.

Intent
putPeerIdExtra(watchFaceIntent: Intent, peerId: String)

This method is adding the ID of the currently connected device to the given Intent.

Intent
putWatchFaceComponentExtra(
    watchFaceIntent: Intent,
    componentName: ComponentName
)

This method is for adding the extended data of watch face ComponentName to the given Intent.

Public companion functions

getPeerIdExtra

Added in 1.0.0
fun getPeerIdExtra(watchFaceIntent: Intent): String?

This method is for retrieving the ID of the currently connected device from the given Intent.

Parameters
watchFaceIntent: Intent

The intent holding config activity launch.

Returns
String?

the value of an item previously added with putPeerIdExtra, or null if no value was found.

getWatchFaceComponentExtra

Added in 1.0.0
fun getWatchFaceComponentExtra(watchFaceIntent: Intent): ComponentName?

This method is for retrieving the extended data of watch face ComponentName from the given Intent. ComponentName is being used to identify the APK and the class of the watch face service.

Parameters
watchFaceIntent: Intent

The intent holding config activity launch.

Returns
ComponentName?

the value of an item previously added with putWatchFaceComponentExtra, or null if no value was found.

putPeerIdExtra

Added in 1.0.0
fun putPeerIdExtra(watchFaceIntent: Intent, peerId: String): Intent

This method is adding the ID of the currently connected device to the given Intent.

Parameters
watchFaceIntent: Intent

The intent holding config activity launch.

peerId: String

The string representing peer ID to be added as an extra.

putWatchFaceComponentExtra

Added in 1.0.0
fun putWatchFaceComponentExtra(
    watchFaceIntent: Intent,
    componentName: ComponentName
): Intent

This method is for adding the extended data of watch face ComponentName to the given Intent.

Parameters
watchFaceIntent: Intent

The intent holding config activity launch.

componentName: ComponentName

The component name of the watch face to be added as an extra.