Capacitor 8 n'auto-découvre PAS les plugins in-app (définis dans le target App, pas en npm package). Faut les passer explicitement à bridge.registerPluginInstance() dans MainViewController.capacitorDidLoad(). Le commentaire du fichier expliquait déjà la règle, mais on l'avait oubliée pour CoachHealthRoute → window.Capacitor.Plugins.CoachHealthRoute restait undefined.
20 lines
853 B
Swift
20 lines
853 B
Swift
// MainViewController.swift
|
|
// Sous-classe de CAPBridgeViewController pour enregistrer manuellement les
|
|
// plugins Capacitor in-app (i.e. plugins définis directement dans le target
|
|
// App, pas en npm package). Capacitor 8 n'auto-découvre pas ces plugins,
|
|
// faut les registrer ici dans capacitorDidLoad().
|
|
|
|
import UIKit
|
|
import Capacitor
|
|
|
|
class MainViewController: CAPBridgeViewController {
|
|
override func capacitorDidLoad() {
|
|
// Plugin natif WorkoutKit — pousse des workouts intervalles vers
|
|
// l'Apple Watch (cf. CoachWorkoutKit.swift).
|
|
bridge?.registerPluginInstance(CoachWorkoutKitPlugin())
|
|
// Plugin natif route GPS HealthKit — récupère la trace des workouts
|
|
// Apple Watch (HKWorkoutRouteQuery, cf. CoachHealthRoute.swift).
|
|
bridge?.registerPluginInstance(CoachHealthRoutePlugin())
|
|
}
|
|
}
|