Commencer
-
Installez le package
Fenêtre de terminal npm i @capgo/capacitor-home-indicatorFenêtre de terminal pnpm add @capgo/capacitor-home-indicatorFenêtre de terminal yarn add @capgo/capacitor-home-indicatorFenêtre de terminal bun add @capgo/capacitor-home-indicator -
Synchronisation avec les projets natifs
Fenêtre de terminal npx cap syncFenêtre de terminal pnpm cap syncFenêtre de terminal yarn cap syncFenêtre de terminal bunx cap sync -
Configurez le plugin
Masquer l’indicateur d’accueil :
import { HomeIndicator } from '@capgo/capacitor-home-indicator';// Hide the home indicatorawait HomeIndicator.hide();Afficher l’indicateur d’accueil :
// Show the home indicatorawait HomeIndicator.show();// Check visibility statusconst { hidden } = await HomeIndicator.isHidden();console.log('Is hidden:', hidden);Aucune configuration supplémentaire requise. Le plugin ne fonctionne que sur les appareils iOS avec un indicateur d’accueil (iPhone X et versions ultérieures).
Ce plugin n’a aucun effet sur les appareils Android car ils n’ont pas d’indicateur d’accueil de style iOS.
-
Utilisation avancée
import { HomeIndicator } from '@capgo/capacitor-home-indicator';import { App } from '@capacitor/app';export class ImmersiveMode {private isImmersive = false;async enterImmersiveMode() {this.isImmersive = true;// Hide home indicatorawait HomeIndicator.hide();// Hide status bar for full immersion// StatusBar.hide(); // If using @capacitor/status-bar}async exitImmersiveMode() {this.isImmersive = false;// Show home indicatorawait HomeIndicator.show();// Show status bar// StatusBar.show(); // If using @capacitor/status-bar}async toggleImmersiveMode() {const { hidden } = await HomeIndicator.isHidden();if (hidden) {await this.exitImmersiveMode();} else {await this.enterImmersiveMode();}}setupAppLifecycle() {// Handle app state changesApp.addListener('appStateChange', async ({ isActive }) => {if (!isActive && this.isImmersive) {// App went to background, might want to show indicatorawait HomeIndicator.show();} else if (isActive && this.isImmersive) {// App came to foreground, restore immersive modeawait HomeIndicator.hide();}});}}
API Référence
Section titled “API Référence”Méthodes
Section titled “Méthodes”hide()
Section titled “hide()”Masquer l’indicateur d’accueil.
Retours : Promise<void>
show()
Section titled “show()”Afficher l’indicateur d’accueil.
Retours : Promise<void>
isHidden()
Section titled “isHidden()”Vérifiez si l’indicateur d’accueil est actuellement masqué.
Retours : Promise<{ hidden: boolean }>
###Interfaces
interface HiddenResult { hidden: boolean;}## Remarques sur la plate-forme
- Fonctionne uniquement sur les appareils dotés d’un indicateur d’accueil (iPhone X et versions ultérieures)
- Nécessite iOS 11.0 ou version ultérieure
- L’indicateur réapparaît lorsque les utilisateurs glissent depuis le bas
Android
Section titled “Android”- Ce plugin n’a aucun effet sur Android
- Android utilise différents gestes/boutons de navigation
Cas d’utilisation courants
Section titled “Cas d’utilisation courants”- Jeux : jeux en plein écran sans distractions
- Lecteurs vidéo : lecture vidéo immersive
- Visionneuses de photos : galeries de photos en plein écran
- Présentations : présentations sans distraction
- Applications de kiosque : applications d’affichage public
## meilleures pratiques
-
Contrôle utilisateur : fournissez toujours un moyen de quitter le mode immersif
// Add a gesture or button to toggle immersive modeconst toggleButton = document.getElementById('toggle-immersive');toggleButton.addEventListener('click', () => {immersiveMode.toggleImmersiveMode();}); -
Respectez les gestes du système : n’interférez pas avec la navigation du système
-
Enregistrer l’état : mémoriser la préférence de l’utilisateur pour le mode immersif
Dépannage
Section titled “Dépannage”L’indicateur d’accueil ne se cache pas :
- Vérifiez que l’appareil dispose d’un indicateur d’accueil (iPhone X+)
- Vérifiez que la version iOS est 11.0 ou supérieure
- Assurez-vous que l’application a le focus
L’indicateur réapparaît de manière inattendue :
- Il s’agit d’un comportement iOS normal pour les gestes du système