SwiftBindings.Apple.WorkoutKit
26.2.6
dotnet add package SwiftBindings.Apple.WorkoutKit --version 26.2.6
NuGet\Install-Package SwiftBindings.Apple.WorkoutKit -Version 26.2.6
<PackageReference Include="SwiftBindings.Apple.WorkoutKit" Version="26.2.6" />
<PackageVersion Include="SwiftBindings.Apple.WorkoutKit" Version="26.2.6" />
<PackageReference Include="SwiftBindings.Apple.WorkoutKit" />
paket add SwiftBindings.Apple.WorkoutKit --version 26.2.6
#r "nuget: SwiftBindings.Apple.WorkoutKit, 26.2.6"
#:package SwiftBindings.Apple.WorkoutKit@26.2.6
#addin nuget:?package=SwiftBindings.Apple.WorkoutKit&version=26.2.6
#tool nuget:?package=SwiftBindings.Apple.WorkoutKit&version=26.2.6
SwiftBindings.Apple.WorkoutKit
Native .NET bindings for Apple's WorkoutKit framework — building custom workouts, single-goal and pacer workouts, interval blocks, and scheduling them to Apple Watch. These are not Objective-C proxy wrappers; they use .NET 10's native Swift interop for direct, high-performance calls into Swift APIs from C#.
📖 Full usage guide → — goals, steps, interval blocks, alerts, the four workout types, plans, and scheduling, with the exact emitted C# signatures.
Installation
dotnet add package SwiftBindings.Apple.WorkoutKit
Requirements
- .NET 10.0+
- iOS 26.2+, macOS 26.2+, Mac Catalyst 26.2+
- macOS host for development
- A paired Apple Watch and the companion watchOS app for scheduling to actually deliver
Usage
using WorkoutKit;
// Inspect scheduler authorization and capability
var status = WorkoutScheduler.AuthorizationStateType.Authorized;
// var maxScheduled = WorkoutScheduler.Shared.MaxAllowedScheduledWorkoutCount;
// var isSupported = WorkoutScheduler.IsSupported;
// Build workout primitives
var step = new IntervalStep(IntervalStep.PurposeType.Work);
CustomWorkout, SingleGoalWorkout, PacerWorkout, SwimBikeRunWorkout, IntervalBlock, IntervalStep, WorkoutPlan, ScheduledWorkoutPlan, the alert types, and WorkoutScheduler are all bound. See Apple's documentation for the full builder/scheduling flow.
Documentation
- Usage guide (wiki) — full C# walkthrough of the binding surface
- Apple WorkoutKit framework
Caveats
WorkoutScheduler (Shared, MaxAllowedScheduledWorkoutCount, IsSupported, ScheduleAsync) is bound and exercised end-to-end. HealthKit-backed writes are out-of-scope for this SDK version — the scheduler can schedule workouts, but mutating HealthKit data models from the bound surface is not yet supported.
How It Works
These bindings are auto-generated by Swift Dotnet Bindings using .NET 10's native Swift interop via the SwiftBindings SDK.
License
The bindings are MIT licensed. WorkoutKit is part of the Apple SDK; refer to Apple's licensing for the underlying framework.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0-ios26.2 is compatible. net10.0-maccatalyst26.2 is compatible. net10.0-macos26.2 is compatible. |
-
net10.0-ios26.2
- SwiftBindings.Apple (>= 26.2.6)
- SwiftBindings.Runtime (>= 0.14.0 && < 0.15.0)
-
net10.0-maccatalyst26.2
- SwiftBindings.Apple (>= 26.2.6)
- SwiftBindings.Runtime (>= 0.14.0 && < 0.15.0)
-
net10.0-macos26.2
- SwiftBindings.Apple (>= 26.2.6)
- SwiftBindings.Runtime (>= 0.14.0 && < 0.15.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.