activity
An enum schema for an activity parameter.
Declaration
var activity: some AppSchemaEnum { get }Discussion
To make your app’s parameter types available to Apple Intelligence, conform your AppEnum to a schema that describes a parameter’s possible values to the system. If your app’s functionality aligns with the audio domain and a parameter type matches the activity schema, you can generate the protocol conformance the schema requires for your app enum implementation with the @AppEnum( .audio.activity) Swift macro. To make your app work with Siri, see Apple Intelligence and Siri AI.
The following example shows an app enum that conforms to the activity schema:
@AppEnum(schema: .audio.activity)
enum AudioActivity: String {
case cooking
case dining
case studying
case focusing
case reading
case gaming
case working
case showering
case cleaning
case relaxing
case sleeping
case indoorActivity
case partying
case commuting
case driving
case traveling
case gardening
case barbecuing
case beachDay
case roadTrip
case outdoorActivity
case meditating
case yoga
case walking
case running
case strength
case cycling
case dance
case hiit
case rowing
case workoutLowIntensity
case workoutMediumIntensity
case workoutHighIntensity
static let caseDisplayRepresentations: [Self: DisplayRepresentation] = [
.cooking: "Cooking",
.dining: "Dining",
.studying: "Studying",
.focusing: "Focusing",
.reading: "Reading",
.gaming: "Gaming",
.working: "Working",
.showering: "Showering",
.cleaning: "Cleaning",
.relaxing: "Relaxing",
.sleeping: "Sleeping",
.indoorActivity: "IndoorActivity",
.partying: "Partying",
.commuting: "Commuting",
.driving: "Driving",
.traveling: "Traveling",
.gardening: "Gardening",
.barbecuing: "Barbecuing",
.beachDay: "BeachDay",
.roadTrip: "RoadTrip",
.outdoorActivity: "OutdoorActivity",
.meditating: "Meditating",
.yoga: "Yoga",
.walking: "Walking",
.running: "Running",
.strength: "Strength",
.cycling: "Cycling",
.dance: "Dance",
.hiit: "Hiit",
.rowing: "Rowing",
.workoutLowIntensity: "WorkoutLowIntensity",
.workoutMediumIntensity: "WorkoutMediumIntensity",
.workoutHighIntensity: "WorkoutHighIntensity"
]
}The schema supports the following system experiences:
Siri
Shortcuts
For more information about the App Intents framework and the experiences it supports, see Getting started with the App Intents framework.