Iniziare
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
Sezione 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-pluginsUsa poi 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 del tuo sistema operativo qui 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.
On AndroidQuesto metodo deve essere chiamato solo su Android 13+.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.checkPermissions();requestPermissions
Sezione intitolata “richiestaPermessi”Richiedi il permesso di 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 tutte le API richieste.
Torna 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 quell'istanza di Messaging.
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”Si sottoscrive 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”Si disiscrive 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 (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 (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
Sezione intitolata “Riferimento di tipo”PermissionStatus
Sezione intitolata “Stato di permesso”export interface PermissionStatus { /** * @since 0.2.2 */ receive: PermissionState;}IsSupportedResult
Sezione intitolata “Risultato di supporto”export interface IsSupportedResult { /** * @since 0.3.1 */ isSupported: boolean;}GetTokenOptions
Sezione 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
Sezione 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;Fonte di Verità
Sezione intitolata “Fonte di Verità”Questa pagina è generata dal plugin’s src/definitions.tsRiscrivi 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 rapido per pianificare il dashboard e le operazioni API, 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 Bundle per i dettagli di implementazione in Bundle.