WatchFaceConfigIntentHelper

public final 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 methods

static final @Nullable String
getPeerIdExtra(@NonNull Intent watchFaceIntent)

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

static final @Nullable ComponentName

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

static final @NonNull Intent
putPeerIdExtra(@NonNull Intent watchFaceIntent, @NonNull String peerId)

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

static final @NonNull Intent
putWatchFaceComponentExtra(
    @NonNull Intent watchFaceIntent,
    @NonNull ComponentName componentName
)

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

Public methods

getPeerIdExtra

Added in 1.0.0
public static final @Nullable String getPeerIdExtra(@NonNull Intent watchFaceIntent)

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

Parameters
@NonNull Intent watchFaceIntent

The intent holding config activity launch.

Returns
@Nullable String

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

getWatchFaceComponentExtra

Added in 1.0.0
public static final @Nullable ComponentName getWatchFaceComponentExtra(@NonNull Intent watchFaceIntent)

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
@NonNull Intent watchFaceIntent

The intent holding config activity launch.

Returns
@Nullable ComponentName

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

putPeerIdExtra

Added in 1.0.0
public static final @NonNull Intent putPeerIdExtra(@NonNull Intent watchFaceIntent, @NonNull String peerId)

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

Parameters
@NonNull Intent watchFaceIntent

The intent holding config activity launch.

@NonNull String peerId

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

putWatchFaceComponentExtra

Added in 1.0.0
public static final @NonNull Intent putWatchFaceComponentExtra(
    @NonNull Intent watchFaceIntent,
    @NonNull ComponentName componentName
)

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

Parameters
@NonNull Intent watchFaceIntent

The intent holding config activity launch.

@NonNull ComponentName componentName

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