Trois des étapes du runbook sont des fichiers texte, donc faisables hors Xcode : * `CoachQuickWidget()` enregistré dans `CoachLiveActivityBundle`, sous `if #available(iOS 17.0, *)` — le bundle sert aussi des cibles antérieures ; * schéma `coachapp://` déclaré dans l'Info.plist de l'App. Il n'y était pas : seul le schéma Google était présent, et les boutons Photo et Scanner du widget n'auraient donc rien ouvert ; * `CoachQuickSync.flush()` appelé depuis `applicationDidBecomeActive`, qui était un corps vide. Ne restent en manuel que les gestes qui touchent le projet Xcode lui-même : Target Membership des trois fichiers Swift, puis le build. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
19 lines
593 B
Swift
19 lines
593 B
Swift
// CoachLiveActivityBundle.swift
|
|
// Entry point @main de l'extension WidgetKit. Contient les Widgets exposés par
|
|
// cette extension : la Live Activity du live workout + les widgets d'écran
|
|
// d'accueil (séance du jour, score de forme).
|
|
|
|
import WidgetKit
|
|
import SwiftUI
|
|
|
|
@main
|
|
struct CoachLiveActivityBundle: WidgetBundle {
|
|
var body: some Widget {
|
|
CoachLiveActivityWidget()
|
|
CoachTodaySessionWidget()
|
|
CoachFormeScoreWidget()
|
|
// Saisie rapide : App Intents (iOS 17+) pour l'eau et le café.
|
|
if #available(iOS 17.0, *) { CoachQuickWidget() }
|
|
}
|
|
}
|