diff --git a/ios/App/App.xcodeproj/project.pbxproj b/ios/App/App.xcodeproj/project.pbxproj index 7a67dcd..a9aac9b 100644 --- a/ios/App/App.xcodeproj/project.pbxproj +++ b/ios/App/App.xcodeproj/project.pbxproj @@ -13,6 +13,7 @@ 504EC3081FED79650016851F /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 504EC3071FED79650016851F /* AppDelegate.swift */; }; C0AC4A07811751FB78AA0001 /* CoachAuth.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0AC4A07811751FB78AA0002 /* CoachAuth.swift */; }; D1BD5B1990CF3F2B9C5D0001 /* CoachWorkoutKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1BD5B1990CF3F2B9C5D0002 /* CoachWorkoutKit.swift */; }; + E2CE6C2AA1DF4F3CAD6E0001 /* MainViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2CE6C2AA1DF4F3CAD6E0002 /* MainViewController.swift */; }; 504EC30D1FED79650016851F /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 504EC30B1FED79650016851F /* Main.storyboard */; }; 504EC30F1FED79650016851F /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 504EC30E1FED79650016851F /* Assets.xcassets */; }; 504EC3121FED79650016851F /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 504EC3101FED79650016851F /* LaunchScreen.storyboard */; }; @@ -26,6 +27,7 @@ 504EC3071FED79650016851F /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; C0AC4A07811751FB78AA0002 /* CoachAuth.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CoachAuth.swift; sourceTree = ""; }; D1BD5B1990CF3F2B9C5D0002 /* CoachWorkoutKit.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CoachWorkoutKit.swift; sourceTree = ""; }; + E2CE6C2AA1DF4F3CAD6E0002 /* MainViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainViewController.swift; sourceTree = ""; }; 504EC30C1FED79650016851F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; 504EC30E1FED79650016851F /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 504EC3111FED79650016851F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; @@ -72,6 +74,7 @@ 504EC3071FED79650016851F /* AppDelegate.swift */, C0AC4A07811751FB78AA0002 /* CoachAuth.swift */, D1BD5B1990CF3F2B9C5D0002 /* CoachWorkoutKit.swift */, + E2CE6C2AA1DF4F3CAD6E0002 /* MainViewController.swift */, 504EC30B1FED79650016851F /* Main.storyboard */, 504EC30E1FED79650016851F /* Assets.xcassets */, 504EC3101FED79650016851F /* LaunchScreen.storyboard */, @@ -166,6 +169,7 @@ 504EC3081FED79650016851F /* AppDelegate.swift in Sources */, C0AC4A07811751FB78AA0001 /* CoachAuth.swift in Sources */, D1BD5B1990CF3F2B9C5D0001 /* CoachWorkoutKit.swift in Sources */, + E2CE6C2AA1DF4F3CAD6E0001 /* MainViewController.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/ios/App/App/Base.lproj/Main.storyboard b/ios/App/App/Base.lproj/Main.storyboard index b44df7b..b09af01 100644 --- a/ios/App/App/Base.lproj/Main.storyboard +++ b/ios/App/App/Base.lproj/Main.storyboard @@ -11,7 +11,7 @@ - + diff --git a/ios/App/App/MainViewController.swift b/ios/App/App/MainViewController.swift new file mode 100644 index 0000000..123c950 --- /dev/null +++ b/ios/App/App/MainViewController.swift @@ -0,0 +1,16 @@ +// 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()) + } +}