Contrôle externe des capteurs MegaTracker
Par défaut, MegaTracker gère automatiquement les interfaces d'écoute des données d'accéléromètre et GNSS. Dans certains scénarios d'application complexes, les développeurs peuvent avoir besoin de contrôler manuellement l'activation et la désactivation de ces interfaces pour une gestion plus fine de la consommation ou du contrôle des autorisations.
Avant de commencer
- Comprendre les concepts et flux de travail de MegaTracker
Logique de contrainte de contrôle externe
Lors de la création d'une session MegaTrackerConfigs, les interfaces de capteurs peuvent être configurées via MegaTrackerSensorOptions.
| Nom du paramètre | Type | Valeur par défaut | Description |
|---|---|---|---|
| isAcceExternalControl | boolean |
false |
Si l'accéléromètre est contrôlé en externe (par le développeur). |
| isGeoExternalControl | boolean |
false |
Si les données GNSS sont contrôlées en externe (par le développeur). |
Astuce
Cas d'usage : Si votre application n'utilise pas directement les données de capteurs en dehors des fonctionnalités Mega, conservez la valeur par défaut false pour une gestion automatique par Mega.
Lorsque ces paramètres sont définis sur true, les développeurs doivent strictement respecter l'ordre d'appel suivant :
- Processus de démarrage
Avant d'appeler start(options), il faut s'assurer que les capteurs correspondants ont été activés manuellement :
Accéléromètre : Appeler wx.startAccelerometer.
GNSS : Appeler wx.startLocationUpdate.
Processus d'arrêt
Après avoir appelé stop(), désactiver les interfaces de capteurs correspondantes :
Accéléromètre : Appeler wx.stopAccelerometer.
GNSS : Appeler wx.stopLocationUpdate.
Attention
Avertissement de conflit : Si défini sur false (gestion par Mega), n'appelez pas les interfaces natives d'arrêt des capteurs pendant l'exécution de la Session, sous peine d'interruption des données.
const megaTrackerSensorOptions: easyar.MegaTrackerSensorOptions = {
isAcceExternalControl: false,
isGeoExternalControl: true
};
const megaTrackerConfigs: easyar.MegaTrackerConfigs = {
access: apiKeyAccess,
options: megaTrackerSensorOptions
};
session = megaComponent.createSession(megaTrackerConfigs);
Cet exemple montre comment contrôler manuellement l'activation et la désactivation de l'écoute des données de localisation WeChat. Avant d'appeler start(options), vous devez appeler wx.startLocationUpdate pour activer l'écoute.