Contents

AppIntentRecommendation

An object that describes a recommended intent configuration for a user-customizable widget.

Declaration

struct AppIntentRecommendation<Intent> where Intent : WidgetConfigurationIntent

Mentioned in

Overview

By adding a custom App Intent to your project and using an AppIntentTimelineProvider, you allow users to configure widgets to show data that’s most relevant to them. Some platforms don’t have a dedicated user interface to configure all of your intent parameters. For example, watchOS doesn’t offer a dedicated user interface to configure data that appears on a complication. Use intent recommendations in watchOS to offer preconfigured complications that show data that’s most relevant to the user.

For example, say you develop a game app that allows users to view their in-game character. With intent recommendations, you can recommend an intent configuration for a watch complication that displays character information.

The following example shows a function to create a list of recommended configurations for a game widget that shows current energy levels for a game character.

public func recommendations() -> [AppIntentRecommendation<DynamicCharacterConfiguration>] {
    CharacterDetail.availableCharacters.map { character in
        let intent = DynamicCharacterConfiguration()
        intent.hero = Hero(identifier: character.name, display: character.name)
        return AppIntentRecommendation(intent: intent, description: Text(character.name))
    }
}

Topics

Creating a recommended widget configuration

Initializers

See Also

Smart Stacks