Watch Face Format version <button value="5" default="">Version 5</button> <button value="4">Version 4</button> <button value="3">Version 3</button> <button value="2">Version 2</button> <button value="1">Version 1</button>

*** ** * ** ***

A watch face may wish to try and set one or more non-system data sources as the
default data source for a complication. If a complication data source can't be
used for some reason -- such as when it isn't installed or it doesn't support
the requested type -- then the next one is tried. A system complication data
source acts as a final fallback in case no non-system data sources can be used.

If the `DefaultComplicationDataSourcePolicy` is empty, then no default is set.

Introduced in Wear OS 4.

## Syntax

```xml
<DefaultProviderPolicy defaultSystemProvider="string" defaultSystemProviderType="string" />
```

## Attributes

A `DefaultProviderPolicy` has the following attributes:

### Required attributes

The following attributes are required:

`defaultSystemProvider`

:   The `defaultSystemProvider` is a system complication data source that
    acts as a final fallback in case no primary or secondary providers are
    specified, or no non-system data sources can be used. The
    `defaultSystemProvider` attribute should be set to a string constant value
    derived from the list of Wear [`SystemDataSources`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources) values, such as
    [`STEP_COUNT`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_STEP_COUNT()).

:   The full list of available values is:

- [`APP_SHORTCUT`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_APP_SHORTCUT())
- [`DATE`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_DATE())
- [`DAY_OF_WEEK`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_DAY_OF_WEEK())
- [`FAVORITE_CONTACT`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_FAVORITE_CONTACT())
- [`HEART_RATE`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_HEART_RATE())
- [`NEXT_EVENT`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_NEXT_EVENT())
- [`STEP_COUNT`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_STEP_COUNT())
- [`SUNRISE_SUNSET`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_SUNRISE_SUNSET())
- [`TIME_AND_DATE`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_TIME_AND_DATE())
- [`UNREAD_NOTIFICATION_COUNT`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_UNREAD_NOTIFICATION_COUNT())
- [`WATCH_BATTERY`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_WATCH_BATTERY())
- [`WORLD_CLOCK`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_WORLD_CLOCK())
- [`DAY_AND_DATE`](https://developer.android.com/reference/kotlin/androidx/wear/watchface/complications/SystemDataSources#DATA_SOURCE_DATE_AND_TIME())
- `EMPTY`

`defaultSystemProviderType`
:   The type of the `defaultSystemProvider` to disambiguate where a system
    provider supports multiple types. Supported values are `SHORT_TEXT`,
    `LONG_TEXT`, `MONOCHROMATIC_IMAGE`, `SMALL_IMAGE`, `PHOTO_IMAGE`,`RANGED_VALUE`,
    and `EMPTY`.

### Optional attributes

The following attributes are optional:

`primaryProvider`
:   The component name of the first data source to try.

`primaryProviderType`
:   The default Complication Type if a primaryProvider is selected. Supported
    values are `SHORT_TEXT`, `LONG_TEXT`, `MONOCHROMATIC_IMAGE`, `SMALL_IMAGE`,
    `PHOTO_IMAGE`, `RANGED_VALUE`, and `EMPTY`

`secondaryProvider`
:   The component name of the second data source to try.

`secondaryProviderType`
:   The default Complication Type if a secondaryProvider is selected. Supported
    values are `SHORT_TEXT`, `LONG_TEXT`, `MONOCHROMATIC_IMAGE`, `SMALL_IMAGE`,
    `PHOTO_IMAGE`, `RANGED_VALUE`, and `EMPTY`

## Recommended for you

- Note: link text is displayed when JavaScript is off
- [ComplicationSlot](https://developer.android.com/training/wearables/wff/complication/complication-slot)
- [Complication](https://developer.android.com/training/wearables/wff/complication/complication)
- [Exposing data to watch face complications on Wear OS](https://developer.android.com/codelabs/data-sources)