Prise en main
Copiez un prompt de configuration incluant les étapes d'installation et le guide markdown complet pour ce plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-firebase-messaging`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/firebase-messaging/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Installer
Section intitulée « Installation »Vous pouvez utiliser notre configuration assistée par IA pour installer le plugin. Ajoutez les skills Capgo à votre outil d'IA avec la commande suivante :
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsUtilisez ensuite le prompt suivant :
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-messaging` plugin in my project.Si vous préférez une installation manuelle, installez le plugin en exécutant les commandes suivantes et suivez les instructions spécifiques à chaque plateforme ci-dessous :
bun add @capgo/capacitor-firebase-messagingnpx cap syncImporter
Section intitulée « Import »import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';Démarrage rapide
Section intitulée « Démarrage rapide »import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.checkPermissions();console.log(result);Exemple : requestPermissions
Section intitulée « Exemple : requestPermissions »import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.requestPermissions();console.log(result);Exemple : isSupported
Section intitulée « Exemple : isSupported »import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.isSupported();console.log(result);Erreurs courantes
Section intitulée « Erreurs courantes »- Autorisations: appelez
checkPermissions()puisrequestPermissions()si nécessaire. - Écouteurs: supprimez les handles lors du démontage des écrans.
- Source de vérité : fiez-vous
src/definitions.tsau repo GitHub.
Aperçu de API
Section intitulée « Aperçu API »checkPermissions
Section intitulée « checkPermissions »Vérifier la permission de recevoir des notifications push.
Activé Android, cette méthode ne doit être appelée que sur Android 13+.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.checkPermissions();console.log(result);requestPermissions
Section intitulée « requestPermissions »Demander la permission de recevoir des notifications push.
Activé Android, cette méthode ne doit être appelée que sur Android 13+.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.requestPermissions();console.log(result);isSupported
Section intitulée « isSupported »Vérifie si toutes les API requises existent.
Retourne toujours true sur Android et iOS.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.isSupported();console.log(result);getToken
Section intitulée « getToken »Enregistre l’application pour recevoir des notifications push. Retourne un token FCM qui peut être utilisé pour envoyer des messages push à cette instance Messaging.
Cette méthode réactive également l’auto-init FCM.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.getToken();// The result holds sensitive values: use it without logging it.deleteToken
Section intitulée « deleteToken »Supprime le token FCM et désenregistre l’application pour arrêter de recevoir des notifications push. Peut être appelé, par exemple, lorsqu’un utilisateur se déconnecte.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.deleteToken();getDeliveredNotifications
Section intitulée « getDeliveredNotifications »Récupérer la liste des notifications visibles sur l'écran de notifications.
Remarque : cela renverra toutes les notifications livrées, y compris les notifications locales, et pas seulement les notifications FCM.
Sur Android, le champ data de la notification FCM ne sera PAS inclus.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.getDeliveredNotifications();console.log(result);removeDeliveredNotifications
Section intitulée « removeDeliveredNotifications »Supprimer des notifications spécifiques de l'écran des notifications.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.removeDeliveredNotifications({ notifications: [] });removeAllDeliveredNotifications
Section intitulée « removeAllDeliveredNotifications »Supprimez toutes les notifications de l’écran des notifications.
Remarque : cela supprime toutes les notifications livrées, y compris les notifications locales, et pas seulement les notifications FCM.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.removeAllDeliveredNotifications();subscribeToTopic
Section intitulée « subscribeToTopic »S'abonne à un topic en arrière-plan.
Disponible uniquement pour Android et iOS.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.subscribeToTopic({ topic: 'topic' });unsubscribeFromTopic
Section intitulée « unsubscribeFromTopic »Se désabonne d'un topic en arrière-plan.
Disponible uniquement pour Android et iOS.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.unsubscribeFromTopic({ topic: 'topic' });createChannel
Section intitulée « createChannel »Créer un canal de notification.
Disponible uniquement sur Android (SDK 26+).
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.createChannel({ id: 'id-123', name: 'example',});deleteChannel
Section intitulée « deleteChannel »Supprimer un canal de notification.
Disponible uniquement sur Android (SDK 26+).
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.deleteChannel({ id: 'id-123' });listChannels
Section intitulée « listChannels »Lister les canaux de notification disponibles.
Disponible uniquement sur Android (SDK 26+).
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.listChannels();console.log(result);Référence de type
Section intitulée « Référence de type »PermissionStatus
Section intitulée « PermissionStatus »export interface PermissionStatus { /** * @since 0.2.2 */ receive: PermissionState;}IsSupportedResult
Section intitulée « IsSupportedResult »export interface IsSupportedResult { /** * @since 0.3.1 */ isSupported: boolean;}GetTokenOptions
Section intitulée « GetTokenOptions »export interface GetTokenOptions { /** * Your VAPID public key, which is required to retrieve the current registration token on the web. * * Only available for Web. */ vapidKey?: string; /** * The service worker registration for receiving push messaging. * If the registration is not provided explicitly, you need to have a `firebase-messaging-sw.js` at your root location. * * Only available for Web. */ serviceWorkerRegistration?: ServiceWorkerRegistration;}GetTokenResult
Section intitulée « GetTokenResult »export interface GetTokenResult { /** * @since 0.2.2 */ token: string;}GetDeliveredNotificationsResult
Section intitulée « GetDeliveredNotificationsResult »export interface GetDeliveredNotificationsResult { /** * @since 0.2.2 */ notifications: Notification[];}RemoveDeliveredNotificationsOptions
Section intitulée « RemoveDeliveredNotificationsOptions »export interface RemoveDeliveredNotificationsOptions { /** * @since 0.4.0 */ notifications: Notification[];}SubscribeToTopicOptions
Section intitulée « SubscribeToTopicOptions »export interface SubscribeToTopicOptions { /** * The name of the topic to subscribe. * * @since 0.2.2 */ topic: string;}UnsubscribeFromTopicOptions
Section intitulée « UnsubscribeFromTopicOptions »export interface UnsubscribeFromTopicOptions { /** * The name of the topic to unsubscribe from. * * @since 0.2.2 */ topic: string;}CreateChannelOptions
Section intitulée « CreateChannelOptions »export type CreateChannelOptions = Channel;DeleteChannelOptions
Section intitulée « DeleteChannelOptions »export interface DeleteChannelOptions { /** * The channel identifier. * * @since 1.4.0 */ id: string;}ListChannelsResult
Section intitulée « ListChannelsResult »export interface ListChannelsResult { channels: Channel[];}TokenReceivedListener
Section intitulée « TokenReceivedListener »Callback pour recevoir l'événement de réception du token.
export type TokenReceivedListener = (event: TokenReceivedEvent) => void;Source de vérité
Section intitulée « Source de vérité »Cette page est générée à partir de src/definitions.ts. Relancez la synchronisation lorsque l’API public change en amont.
Continuer depuis Getting Started
Section intitulée « Continuer après Prise en main »Si vous utilisez Prise en main pour planifier les opérations du dashboard et de API, connectez-l’avec Aperçu de API pour les détails d'implémentation dans « Vue d'ensemble de API », Introduction pour les détails d'implémentation dans l'introduction, Clés API pour les détails d'implémentation dans API Keys, Appareils pour les détails d'implémentation dans Devices, et Les bundles pour les détails d'implémentation dans Bundles.