Avvio
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo 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.
Installazione
Sottosezione intitolata “Installazione”Puoi utilizzare la nostra configurazione assistita dall'IA per installare il plugin. Aggiungi le Capgo competenze al tuo strumento di AI utilizzando il seguente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsPoi utilizza il seguente prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-messaging` plugin in my project.Se preferisci la configurazione manuale, installa il plugin eseguendo i seguenti comandi e segui le istruzioni specifiche per la piattaforma riportate di seguito:
bun add @capgo/capacitor-firebase-messagingbunx cap syncImporta
Sezione intitolata “Importa”import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';API Panoramica
Sezione intitolata “API Panoramica”checkPermissions
Sezione intitolata “checkPermissions”Verifica il permesso di ricevere notifiche push.
Attiva AndroidQuesto metodo deve essere chiamato solo su Android 13+.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.checkPermissions();requestPermissions
Sezione intitolata “richiedi autorizzazioni”Richiedi l'autorizzazione per ricevere notifiche push.
Su Android, questo metodo deve essere chiamato solo su Android 13+.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.requestPermissions();isSupported
Sezione intitolata “è supportato”Controlla se esistono tutti gli API richiesti.
Restituisce sempre true su Android e iOS.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.isSupported();Registra l'app per ricevere notifiche push. Restituisce un token FCM che può essere utilizzato per inviare messaggi push a quel Messaging istanza.
Questa funzione riabilita anche l'inizializzazione FCM automatica.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.getToken();deleteToken
Sottosezione intitolata “deleteToken”Cancella il token FCM e disiscrivi l'app per fermare di ricevere notifiche push. Può essere chiamata, ad esempio, quando un utente si disconnette.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.deleteToken();getDeliveredNotifications
Sottosezione intitolata “getDeliveredNotifications”Ottieni una lista di notifiche che sono visibili sulla schermata delle notifiche.
Nota: Questo restituirà tutte le notifiche consegnate, comprese le notifiche locali, e non solo le notifiche FCM.
Sul sistema Android, il campo dati della notifica FCM NON sarà incluso.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.getDeliveredNotifications();removeDeliveredNotifications
Sottosezione intitolata “removeDeliveredNotifications”Elimina le notifiche specifiche dalla schermata delle notifiche.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.removeDeliveredNotifications({} as RemoveDeliveredNotificationsOptions);removeAllDeliveredNotifications
Sottosezione intitolata “removeAllDeliveredNotifications”.Elimina tutte le notifiche dalla schermata delle notifiche.
Nota: Questo eliminerà tutte le notifiche consegnate, comprese le notifiche locali, e non solo le notifiche FCM.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.removeAllDeliveredNotifications();subscribeToTopic
Sottosezione intitolata “subscribeToTopic”.S'iscrive al tema in background.
Solo disponibile per Android e iOS.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.subscribeToTopic({} as SubscribeToTopicOptions);unsubscribeFromTopic
Sottosezione intitolata “unsubscribeFromTopic”.S'iscrive dal tema in background.
Disponibile solo per Android e iOS.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.unsubscribeFromTopic({} as UnsubscribeFromTopicOptions);createChannel
Sottosezione intitolata “createChannel”Creare un canale di notifica.
Disponibile solo per Android (dal SDK 26+).
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.createChannel({} as CreateChannelOptions);deleteChannel
Sottosezione intitolata “deleteChannel”Cancella un canale di notifica.
Disponibile solo per Android (dal SDK 26+).
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.deleteChannel({} as DeleteChannelOptions);listChannels
Sottosezione intitolata “listChannels”Elencare i canali di notifica disponibili.
Disponibile solo per Android (SDK 26+).
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.listChannels();Riferimento di tipo
Sottosezione intitolata “Riferimento di tipo”PermissionStatus
Sottosezione intitolata “Stato di permesso”export interface PermissionStatus { /** * @since 0.2.2 */ receive: PermissionState;}IsSupportedResult
Sottosezione intitolata “Risultato di supporto”export interface IsSupportedResult { /** * @since 0.3.1 */ isSupported: boolean;}GetTokenOptions
Sottosezione intitolata “Opzioni di token”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
Sottosezione intitolata “Risultato di token”export interface GetTokenResult { /** * @since 0.2.2 */ token: string;}GetDeliveredNotificationsResult
Sezione intitolata “GetDeliveredNotificationsResult”export interface GetDeliveredNotificationsResult { /** * @since 0.2.2 */ notifications: Notification[];}RemoveDeliveredNotificationsOptions
Sezione intitolata “RemoveDeliveredNotificationsOptions”export interface RemoveDeliveredNotificationsOptions { /** * @since 0.4.0 */ notifications: Notification[];}SubscribeToTopicOptions
Sezione intitolata “SubscribeToTopicOptions”export interface SubscribeToTopicOptions { /** * The name of the topic to subscribe. * * @since 0.2.2 */ topic: string;}UnsubscribeFromTopicOptions
Sezione intitolata “UnsubscribeFromTopicOptions”export interface UnsubscribeFromTopicOptions { /** * The name of the topic to unsubscribe from. * * @since 0.2.2 */ topic: string;}CreateChannelOptions
Sezione intitolata “CreateChannelOptions”export type CreateChannelOptions = Channel;DeleteChannelOptions
Sezione intitolata “DeleteChannelOptions”export interface DeleteChannelOptions { /** * The channel identifier. * * @since 1.4.0 */ id: string;}ListChannelsResult
Sezione intitolata “ListChannelsResult”export interface ListChannelsResult { channels: Channel[];}TokenReceivedListener
Sezione intitolata “TokenReceivedListener”Callback per ricevere l'evento del token ricevuto.
export type TokenReceivedListener = (event: TokenReceivedEvent) => void;Punto di riferimento
Sezione intitolata “Punto di riferimento”Questa pagina è generata dal plugin’s src/definitions.ts. Riavvia la sincronizzazione quando le informazioni pubbliche API cambiano in modo upstream.
Continua da qui: Iniziare
Sezione intitolata “Continua da qui: Iniziare”Se stai utilizzando Avvio per pianificare il dashboard e le API operazioni, connettilo con API Panoramica per i dettagli di implementazione in API Panoramica, Introduzione per i dettagli di implementazione in Introduzione, API Chiavi per i dettagli di implementazione in API Chiavi, Dispositivi per i dettagli di implementazione in Dispositivi, e Pacchetti per i dettagli di implementazione in Pacchetti.