Plugin discovery : MainViewController sous-classe CAPBridgeViewController
Capacitor 8 n'auto-découvre pas les plugins in-app Swift (qui ne sont pas des npm packages). Les plugins définis dans le target App doivent être enregistrés manuellement via une sous-classe de CAPBridgeViewController qui override capacitorDidLoad(). Ajouts : - ios/App/App/MainViewController.swift : sous-classe qui registers CoachWorkoutKitPlugin() dans capacitorDidLoad() - Main.storyboard : customClass pointe sur MainViewController (module 'App' target) au lieu de CAPBridgeViewController (module Capacitor) - project.pbxproj : 4 entrées pour MainViewController.swift (BuildFile, FileReference, group, Sources phase) Après rebuild, Capacitor.Plugins.CoachWorkoutKit sera dispo en JS.
This commit is contained in:
16
ios/App/App/MainViewController.swift
Normal file
16
ios/App/App/MainViewController.swift
Normal file
@@ -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())
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user