Questions fréquemment posées¶
Trouvez rapidement des réponses aux questions courantes sur MINE - Moteur de Navigation Intérieure. Vous ne trouvez pas ce que vous cherchez ? Contactez notre équipe de support.
Recherche rapide
Utilisez Ctrl+F (ou Cmd+F sur Mac) pour rechercher des mots-clés sur cette page.
Table des matières¶
- Démarrage
- Fonctionnalités et capacités
- Questions techniques
- Licence et tarification
- Support de plateforme
- Intégration et développement
- Performance et optimisation
- Dépannage
- Communauté et support
Démarrage¶
Comment démarrer avec MINE ?¶
Le démarrage est facile ! Suivez ces étapes :
-
Installer la bibliothèque : Ajoutez la dépendance à votre fichier
build.gradleimplementation("com.machinestalk:indoornavigationengine:0.4.0-alpha") -
Configurer votre projet : Configurez la compatibilité Java 17
compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } -
Suivre le guide de démarrage rapide : Notre Guide de démarrage rapide fournit un tutoriel étape par étape pour configurer votre première expérience de navigation.
-
Explorer les exemples : Consultez le Guide d'utilisation pour des exemples de code complets.
Temps estimé : 10-15 minutes pour avoir une application de navigation fonctionnelle !
Quels sont les prérequis pour utiliser MINE ?¶
Vous aurez besoin de :
| Prérequis | Minimum | Recommandé |
|---|---|---|
| Android Studio | Arctic Fox | Dernière version stable |
| JDK | 17 | 17+ |
| Android SDK | API 24 (Android 7.0) | API 34 (Android 14) |
| Gradle | 8.2 | Dernière version |
| Kotlin | 1.8.0 | Dernière version |
Prérequis supplémentaires : - Connaissances de base du développement Android - Compréhension de Kotlin ou Java - Modèles de cartes 3D au format glTF/GLB - (Optionnel) Infrastructure de positionnement intérieur (WiFi, balises)
Fournissez-vous des projets d'exemple ou des démos ?¶
Oui ! Nous fournissons :
- 📱 Application d'exemple : Implémentation de référence complète présentant toutes les fonctionnalités
- 💻 Extraits de code : Exemples de code prêts à l'emploi dans notre documentation
- 🎥 Tutoriels vidéo : Guides vidéo étape par étape (à venir)
- 🗂️ Données de carte d'exemple : Exemples de configurations JSON et modèles 3D
Consultez notre dépôt GitHub ou contactez-nous pour accéder aux projets d'exemple.
Fonctionnalités et capacités¶
Quelles sont les principales fonctionnalités de MINE ?¶
MINE offre un ensemble complet de fonctionnalités pour la navigation intérieure :
-
Rendu 3D/2D
Rendu accéléré matériellement avec basculement de vue transparent
-
Recherche de chemin
Algorithme A* avancé avec support multi-étages
-
Navigation en temps réel
Instructions étape par étape avec suivi de position en direct
-
Composants UI
Composants pré-construits et personnalisables pour la navigation
-
Support de thème
Mode sombre/clair avec capacités de thème personnalisé
-
Suivi de localisation
Positionnement multi-fournisseur (WiFi, Bluetooth, capteurs)
-
Routage accessible
Chemins accessibles en fauteuil roulant et itinéraires alternatifs
-
Support hors-ligne
Fonctionne sans connexion internet (à venir)
Liste complète des fonctionnalités : Consultez notre Aperçu des fonctionnalités pour des informations détaillées.
MINE supporte-t-il la navigation multi-étages ?¶
Oui ! La navigation multi-étages est entièrement supportée :
- ✅ Détection automatique d'étage
- ✅ Routage par ascenseur et escalier
- ✅ Transitions d'étage transparentes
- ✅ Composant UI de sélection d'étage
- ✅ Recherche de chemin sensible aux étages
Exemple :
// Naviguer entre les étages
val route = pathFinder.findPath(
start = Location(floor = "ground", x = 10f, y = 5f),
end = Location(floor = "first", x = 25f, y = 15f)
)
// L'itinéraire inclut automatiquement les instructions de changement d'étage
Apprenez-en plus dans notre Guide de navigation.
Puis-je personnaliser l'apparence de la carte ?¶
Absolument ! MINE offre une personnalisation étendue :
Personnalisation du thème : - Couleurs primaire, secondaire et d'accentuation - Couleurs et largeurs de chemin - Styles de marqueurs POI - Couleurs d'arrière-plan - Typographie et polices
Éléments visuels : - Icônes personnalisées pour les POI - Superpositions de plan d'étage - Styles de visualisation d'itinéraire - Style des composants UI
Exemple :
val customTheme = ThemeConfig(
primaryColor = Color.parseColor("#FF5722"),
pathColor = Color.parseColor("#4CAF50"),
poiMarkerColor = Color.parseColor("#FFC107")
)
sceneView.setThemeConfig(customTheme)
Voir Personnalisation du thème pour tous les détails.
MINE supporte-t-il la navigation vocale ?¶
Bientôt disponible ! La navigation vocale est prévue pour la v0.5.0 (T4 2024) :
- 🔊 Instructions étape par étape avec synthèse vocale
- 🌐 Support multilingue (15+ langues)
- 🎚️ Paramètres vocaux ajustables
- 🔇 Mode silencieux optionnel
Capacités actuelles : - Instructions visuelles étape par étape - Indicateurs de progression - Estimations de distance et de temps - Retour haptique
Suivez nos Notes de version pour les mises à jour !
Questions techniques¶
Quels formats de carte MINE supporte-t-il ?¶
Modèles 3D : - ✅ glTF (.gltf) - ✅ glTF binaire (.glb) - Recommandé - ❌ OBJ, FBX, BLEND (non supportés)
Configuration de carte : - ✅ JSON pour la structure de carte et les métadonnées - ✅ Propriétés personnalisées et extensions
Bonnes pratiques :
- Utiliser le format .glb pour de meilleures performances
- Garder les modèles sous 50MB pour un chargement optimal
- Optimiser les textures pour les appareils mobiles
- Utiliser la compression Draco si possible
Quelle est la précision du positionnement intérieur ?¶
La précision dépend de la technologie de positionnement utilisée :
| Technologie | Précision typique | Meilleur cas d'usage |
|---|---|---|
| Empreinte WiFi | 3-5 mètres | Grands lieux |
| Balises Bluetooth | 1-3 mètres | Navigation précise |
| Fusion de capteurs | 2-8 mètres | Complémentaire |
| PDR | 5-15 mètres | Suivi de mouvement |
| Combiné | 1-3 mètres | Configuration optimale |
Améliorer la précision : - Déployer plus de balises - Utiliser la calibration d'empreinte WiFi - Activer la fusion de capteurs - Maintenance régulière de l'infrastructure
Puis-je utiliser mon propre système de positionnement ?¶
Oui ! MINE supporte les fournisseurs de localisation personnalisés :
class CustomLocationProvider : LocationProvider {
override val name = "Fournisseur personnalisé"
override fun startTracking() {
// Votre logique de positionnement
}
override fun stopTracking() {
// Nettoyage
}
override fun getCurrentLocation(): Location {
// Retourner la position actuelle
return Location(x = x, y = y, floor = floorId)
}
}
// Enregistrer votre fournisseur
locationTracker.addProvider(CustomLocationProvider(), priority = 10)
Voir Suivi de localisation pour plus de détails.
Quel moteur de rendu MINE utilise-t-il ?¶
MINE utilise Google Filament - un moteur de rendu basé sur la physique :
Avantages : - 🎨 Graphiques 3D de haute qualité - ⚡ Performances accélérées matériellement - 📱 Optimisé pour les appareils mobiles - 🔧 Pipeline standard de l'industrie
Performances : - 60 FPS sur les appareils de milieu de gamme - Utilisation mémoire efficace - Rendu optimisé pour la batterie
En savoir plus : Référence API Filament
MINE fonctionne-t-il hors-ligne ?¶
Support partiel : - ✅ Actuellement : Les cartes pré-chargées fonctionnent hors-ligne - ✅ Actuellement : Navigation sans internet - ❌ Actuellement : Pas de téléchargements de cartes hors-ligne - 🔄 Arrive dans v0.5.0 : Paquets de cartes hors-ligne complets
Capacités hors-ligne actuelles :
// Charger la carte depuis les assets (fonctionne hors-ligne)
val mapData = JsonUtil.LoadJsonFromAsset(context, "maps/venue.json")
sceneView.setMapData(mapData)
// La navigation fonctionne sans internet
navigationManager.startNavigation(destination)
Licence et tarification¶
MINE est-il gratuit ?¶
Options de licence :
| Type de licence | Coût | Cas d'usage |
|---|---|---|
| Développement | Gratuit | Tests et développement |
| Commercial | Payant | Applications de production |
| Entreprise | Personnalisé | Déploiements à grande échelle |
| Open Source | Gratuit* | Projets non commerciaux |
*Gratuit pour les projets open source approuvés
Ce qui est inclus : - ✅ Accès complet aux fonctionnalités - ✅ Mises à jour régulières - ✅ Documentation - ✅ Corrections de bugs - ✅ Support communautaire
La licence commerciale inclut : - ✅ Support prioritaire - ✅ Développement personnalisé - ✅ Garanties SLA - ✅ Options de déploiement sur site
Commencer : Contactez-nous pour les informations de tarification.
Offrez-vous des réductions éducatives ?¶
Oui ! Nous soutenons l'éducation :
- 🎓 Licences académiques : Gratuit pour les universités et la recherche
- 👨🎓 Réductions étudiantes : Tarifs réduits pour les projets étudiants
- 🏫 Institutions éducatives : Paliers de tarification spéciaux
Prérequis : - Adresse email éducative valide - Preuve d'inscription/d'emploi - Utilisation non commerciale
Postuler : Contactez-nous avec vos identifiants éducatifs.
Puis-je évaluer MINE avant d'acheter ?¶
Absolument ! Nous offrons :
- ⏰ Essai de 30 jours : Évaluation avec toutes les fonctionnalités
- 📊 Preuve de concept : Test avec vos données
- 🤝 Consultation technique : Aide pour l'évaluation
- 💻 Projets d'exemple : Exemples pré-construits
L'essai inclut : - Toutes les fonctionnalités déverrouillées - Support technique - Accès à la documentation - Exemples de cartes et données
Démarrer l'essai : Contactez-nous pour demander un accès d'évaluation.
Support de plateforme¶
Quelles versions d'Android sont supportées ?¶
| Version Android | Niveau API | Statut de support |
|---|---|---|
| Android 14 | 34 | ✅ Entièrement supporté |
| Android 13 | 33 | ✅ Entièrement supporté |
| Android 12 | 31-32 | ✅ Entièrement supporté |
| Android 11 | 30 | ✅ Entièrement supporté |
| Android 10 | 29 | ✅ Entièrement supporté |
| Android 9 | 28 | ✅ Entièrement supporté |
| Android 8 | 26-27 | ✅ Supporté |
| Android 7 | 24-25 | ✅ Minimum requis |
| Android 6 | 23 | ❌ Non supporté |
SDK cible : 34 (Android 14)
SDK minimum : 24 (Android 7.0)
MINE supporte-t-il iOS ?¶
Pas actuellement : MINE est Android uniquement pour le moment.
Plans futurs : - 🔄 Version iOS en considération - 📱 Utiliserait les API natives iOS - 🎯 Prévu pour 2025 (provisoire)
Alternatives : - Envisager Kotlin Multiplatform Mobile (KMM) à l'avenir - Contactez-nous pour exprimer votre intérêt pour le support iOS
Demander des mises à jour : Rejoignez notre liste de diffusion pour les annonces iOS.
Y a-t-il des plans pour Kotlin Multiplatform ?¶
En évaluation : Nous explorons Kotlin Multiplatform (KMP) :
Considérations : - 📊 Évaluation de la demande communautaire - 🔧 Analyse de faisabilité technique - 🗓️ Aucune chronologie confirmée pour le moment
Focus actuel : - Amélioration de l'expérience Android - Ajout de plus de fonctionnalités - Optimisation des performances
Partagez votre intérêt : Si le support KMP est important pour vous, faites-le nous savoir !
MINE supporte-t-il les tablettes ?¶
Oui ! MINE fonctionne parfaitement sur les tablettes :
- ✅ Composants UI réactifs
- ✅ Layouts optimisés pour les grands écrans
- ✅ Expérience de navigation améliorée
- ✅ Support écran partagé
- ✅ Testé sur les tablettes 7"-12"
Fonctionnalités spécifiques aux tablettes : - Zone de visualisation de carte plus grande - Informations POI côte à côte - Contrôles UI améliorés - Meilleure lisibilité
Intégration et développement¶
Puis-je intégrer MINE dans mon application existante ?¶
Oui ! MINE est conçu pour une intégration facile :
Points d'intégration : - 🎨 UI/UX personnalisée - 🗺️ Cartes existantes - 📍 Services de localisation - 📊 Plateformes d'analyse - 🔐 Systèmes d'authentification
Architecture flexible :
// Utiliser comme Activity
class NavActivity : AppCompatActivity() {
private lateinit var sceneView: MineSceneView
}
// Utiliser comme Fragment
class NavFragment : Fragment() {
private var sceneView: MineSceneView? = null
}
// Utiliser dans Jetpack Compose
@Composable
fun MapScreen() {
IndoorNavigationScene(mapBuild = mapData)
}
Voir Guide d'utilisation pour les modèles d'intégration.
Comment ajouter des points d'intérêt (POI) personnalisés ?¶
Gestion POI facile :
// Ajouter un POI programmatiquement
val poi = PointOfInterest(
id = "coffee-shop-01",
name = "Starbucks",
category = "Nourriture & Boissons",
floor = "ground",
position = floatArrayOf(15.5f, 8.2f, 0f),
icon = R.drawable.ic_coffee,
metadata = mapOf(
"phone" to "+1-555-1234",
"hours" to "7h-21h"
)
)
poiManager.addPOI(poi)
// Ou charger depuis JSON
{
"pointsOfInterest": [
{
"id": "coffee-shop-01",
"name": "Starbucks",
"category": "Nourriture & Boissons",
"floor": "ground",
"position": { "x": 15.5, "y": 8.2, "z": 0 }
}
]
}
Puis-je utiliser MINE avec Jetpack Compose ?¶
Oui ! Support complet de Compose :
@Composable
fun NavigationScreen() {
val context = LocalContext.current
val mapData = remember {
JsonUtil.LoadJsonFromAsset(context, "maps/venue.json")
}
Box(modifier = Modifier.fillMaxSize()) {
mapData?.let {
IndoorNavigationScene(
mapBuild = it,
modifier = Modifier.fillMaxSize()
)
}
// Ajouter des superpositions UI Compose
FloatingActionButton(
onClick = { /* Naviguer */ },
modifier = Modifier
.align(Alignment.BottomEnd)
.padding(16.dp)
) {
Icon(Icons.Default.Navigation, "Naviguer")
}
}
}
Voir Intégration Compose pour plus.
MINE supporte-t-il K2 (Kotlin 2.0) ?¶
Oui ! MINE supporte entièrement Kotlin 2.0 :
- ✅ Compatible avec le compilateur K2
- ✅ Testé avec Kotlin 2.0+
- ✅ Profite des améliorations K2
- ✅ Aucun problème de migration
Avantages : - Temps de compilation plus rapides - Meilleures performances de l'IDE - Inférence de type améliorée - Analyse de code améliorée
Si vous rencontrez des problèmes liés à K2, veuillez les signaler.
Performance et optimisation¶
Comment MINE performe-t-il sur les appareils bas de gamme ?¶
Performance adaptative :
MINE ajuste automatiquement la qualité en fonction des capacités de l'appareil :
| Gamme d'appareil | Fréquence d'images | Qualité | Mémoire |
|---|---|---|---|
| Flagship | 60 FPS | Élevée | 150MB |
| Milieu de gamme | 60 FPS | Moyenne | 120MB |
| Budget | 30-45 FPS | Basse | 90MB |
Conseils d'optimisation :
// Détecter et optimiser pour les appareils bas de gamme
if (DeviceUtil.isLowEndDevice()) {
sceneView.displayConfig = DisplayConfig(
renderQuality = DisplayConfig.RenderQuality.LOW,
shadowsEnabled = false
)
sceneView.setRenderMode(RenderMode.MODE_2D)
}
Voir Optimisation des performances.
Quel est l'impact sur la taille de l'application ?¶
Taille de la bibliothèque : - Taille AAR : ~8MB - Avec les dépendances : ~15MB - Bibliothèques natives (tous les ABI) : ~12MB
Optimisation :
// Réduire la taille APK en filtrant les ABI
android {
defaultConfig {
ndk {
abiFilters += listOf("armeabi-v7a", "arm64-v8a")
}
}
}
Résultat : Peut réduire d'environ 40% en ciblant des architectures spécifiques.
Quelle est la consommation de batterie de la navigation ?¶
Utilisation de la batterie (1 heure de navigation continue) :
| Scénario | Décharge batterie | Notes |
|---|---|---|
| Navigation 3D | 8-10% | Haute qualité |
| Navigation 2D | 5-7% | Optimisée |
| Suivi en arrière-plan | 3-5% | Minimale |
Optimisation de la batterie : - Utiliser le mode 2D quand possible - Réduire la fréquence de mise à jour de localisation quand stationnaire - Réduire la qualité de rendu sur batterie faible - Mettre en pause le rendu quand l'app est en arrière-plan
Dépannage¶
Où puis-je trouver de l'aide au dépannage ?¶
Ressources :
- Guide de dépannage : Voir les solutions détaillées
- FAQ : Vous y êtes ! Consultez d'autres questions
- Documentation API : Parcourir la référence API
- Équipe de support : Contactez-nous
Problèmes courants : - Carte ne se charge pas → Vérifier les chemins de fichiers - Navigation ne démarre pas → Vérifier les permissions - Mauvais positionnement → Vérifier la configuration des balises - Problèmes de performance → Optimiser les paramètres
Comment signaler un bug ?¶
Signalement de bug :
- Vérifier les problèmes existants : Rechercher dans notre FAQ et Dépannage
- Rassembler les informations :
- Version MINE
- Version Android et modèle d'appareil
- Étapes pour reproduire
- Logs d'erreur
-
Captures d'écran/vidéos
-
Soumettre le rapport : Contacter le support avec les détails
Nous valorisons vos retours : Chaque rapport de bug aide à améliorer MINE !
Quelle journalisation dois-je activer pour le débogage ?¶
Configuration de débogage :
if (BuildConfig.DEBUG) {
// Activer la journalisation détaillée
MineLogger.setLogLevel(MineLogger.Level.VERBOSE)
// Afficher les superpositions de débogage
sceneView.showDebugOverlay = true
sceneView.showFpsCounter = true
// Activer le mode fil de fer
sceneView.debugWireframe = false
// Journaliser les événements de navigation
navigationManager.enableDebugLogging = true
}
// Capturer les logs
adb logcat MINE:V *:S > mine_logs.txt
Communauté et support¶
Où puis-je obtenir de l'aide ?¶
Canaux de support :
-
Support par email
Support direct de notre équipe
-
Documentation
Guides complets et références
-
FAQ
Réponses rapides aux questions courantes
-
Rapports de bugs
Signaler des problèmes et suivre les corrections
Comment puis-je contribuer à MINE ?¶
Statut actuel : N'accepte pas les contributions publiques
Mais vous pouvez aider : - 📝 Signaler des bugs et problèmes - 💡 Suggérer des fonctionnalités - 📖 Partager vos retours sur la documentation - 🌟 Partager vos réussites
Plans futurs : Nous pourrions ouvrir des parties de MINE en open source à l'avenir.
Avez-vous une communauté de développeurs ?¶
Ressources communautaires (à venir) :
- 💬 Forum développeurs
- 👥 Canal Slack
- 🐦 Mises à jour Twitter/X
- 📺 Tutoriels YouTube
- 📝 Blog développeurs
Restez connecté : Contactez-nous pour rejoindre notre liste de diffusion !
Quel est le calendrier de sortie ?¶
Cycle actuel : - Versions majeures : Trimestrielles - Mises à jour mineures : Mensuelles - Corrections de bugs : Au besoin - Correctifs de sécurité : Immédiats
Versions à venir : - v0.5.0 (T4 2024) : Cartes hors-ligne, guidage vocal - v0.6.0 (T1 2025) : Navigation AR, analytique - v1.0.0 (T1 2025) : Version de production
Voir Notes de version pour la feuille de route détaillée.
Vous avez encore des questions ?¶
-
Contacter le support
Obtenez de l'aide personnalisée de notre équipe
-
Parcourir la documentation
Explorer les guides complets
-
Dépannage
Trouver des solutions aux problèmes courants
Nous sommes là pour vous aider !
Vous ne trouvez pas votre réponse ? N'hésitez pas à nous contacter - nous sommes heureux de vous aider à réussir avec MINE !