Getting Started
Copia un prompt di configurazione con le istruzioni 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.
Installare
Sottosezione intitolata “Installare”Puoi utilizzare la nostra configurazione assistita da AI per installare il plugin. Aggiungi le Capgo competenze al tuo strumento AI utilizzando il seguente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsPoi utilizza la seguente richiesta:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-messaging` plugin in my project.Se preferisci l'installazione manuale, installa il plugin eseguendo i seguenti comandi e segui le istruzioni specifiche per la piattaforma riportate di seguito:
bun add @capgo/capacitor-firebase-messagingnpx cap syncImporta
Sezione intitolata “Importa”import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';Avvio rapido
Sezione intitolata “Avvio rapido”import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.checkPermissions();console.log(result);Esempio: richiesta di autorizzazione
Sezione intitolata “Esempio: richiesta di autorizzazione”import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.requestPermissions();console.log(result);Esempio: verifica del supporto
Sezione intitolata “Esempio: verifica del supporto”import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.isSupported();console.log(result);Difficoltà comuni
Sezione intitolata “Difficoltà comuni”- Autorizzazioni: chiamare
checkPermissions()poirequestPermissions()quando serve. - Listener: rimuovere i gestori quando le schermate si dismountano.
- Fonte di verità: fidarsi
src/definitions.tsnella repository GitHub.
API Overview
Sezione intitolata “API Panoramica”checkPermissions
Sezione intitolata “checkPermissions”Controlla la possibilità di ricevere notifiche push.
On Android, questo metodo deve essere chiamato solo su Android 13+.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.checkPermissions();console.log(result);requestPermissions
Sezione intitolata “requestPermissions”Richiedi la possibilità di ricevere notifiche push.
On Android, questo metodo deve essere chiamato solo su Android 13+.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.requestPermissions();console.log(result);isSupported
Sezione intitolata “isSupported”Controlla se esistono tutti gli API richiesti.
Sempre restituisce true su Android e iOS.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.isSupported();console.log(result);getToken
Sezione intitolata “getToken”Registra l'app per ricevere notifiche push. Restituisce un token FCM che può essere utilizzato per inviare messaggi push a quel Messaging instance.
This method also re-enables FCM auto-init.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.getToken();// The result holds sensitive values: use it without logging it.deleteToken
Sezione intitolata “deleteToken”Cancella il token FCM e disiscrivi l'app per fermare le notifiche push. Può essere chiamata, ad esempio, quando un utente si disconnette.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.deleteToken();getDeliveredNotifications
Sezione intitolata “getDeliveredNotifications”Ottieni una lista di notifiche visibili sulla schermata delle notifiche.
Nota: Questo restituirà tutte le notifiche consegnate, comprese le notifiche locali, e non solo le notifiche FCM.
Nota: Sul sistema Android, il campo dati della notifica FCM NON sarà incluso.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.getDeliveredNotifications();console.log(result);removeDeliveredNotifications
Sezione intitolata “removeDeliveredNotifications”Elimina specifiche notifiche dalla schermata delle notifiche.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.removeDeliveredNotifications({ notifications: [] });removeAllDeliveredNotifications
Sezione 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
Sezione intitolata “iscriversiAlSottotema”Si iscrive al sottotema in background.
Disponibile solo per Android e iOS.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.subscribeToTopic({ topic: 'topic' });unsubscribeFromTopic
Sezione intitolata “disiscriversiDalSottotema”Disiscrive dal sottotema in background.
Disponibile solo per Android e iOS.
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.unsubscribeFromTopic({ topic: 'topic' });createChannel
Sezione intitolata “creaCanaleNotifiche”Crea un canale di notifiche.
Disponibile solo per Android (SDK 26+).
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.createChannel({ id: 'id-123', name: 'example',});deleteChannel
Sezione intitolata “deleteChannel”Cancella un canale di notifica.
Solo disponibile per Android (SDK 26+).
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.deleteChannel({ id: 'id-123' });listChannels
Sezione intitolata “listChannels”Elenco dei canali di notifica disponibili.
Solo disponibile per Android (SDK 26+).
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
const result = await FirebaseMessaging.listChannels();console.log(result);Riferimento di tipo
Sezione intitolata “Riferimento di tipo”PermissionStatus
Sezione intitolata “PermissionStatus”export interface PermissionStatus { /** * @since 0.2.2 */ receive: PermissionState;}IsSupportedResult
Sezione intitolata “IsSupportedResult”export interface IsSupportedResult { /** * @since 0.3.1 */ isSupported: boolean;}GetTokenOptions
Sezione intitolata “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
Sezione intitolata “GetTokenResult”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
Opzioni per l'annullamento dell'abbonamentoexport 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
Opzione per eliminare il canaleexport interface DeleteChannelOptions { /** * The channel identifier. * * @since 1.4.0 */ id: string;}ListChannelsResult
Sezione intitolata “Risultati dei canali”export interface ListChannelsResult { channels: Channel[];}TokenReceivedListener
Section titled “TokenReceivedListener”Callback per ricevere l'evento di ricezione del token.
export type TokenReceivedListener = (event: TokenReceivedEvent) => void;Fonte Di Verità
Sezione intitolata “Fonte Di Verità”Questa pagina è generata dal plugin’s src/definitions.tsRieccere la sincronizzazione quando i dati pubblici API cambiano in remoto.
Continua da Getting Started
Sezione intitolata “Continua da Getting Started”Se stai utilizzando Getting Started per pianificare dashboard e API operazioni, connettilo con API Overview per i dettagli di implementazione in API Overview, Introduzione per i dettagli di implementazione in Introduzione API Chiavi per i dettagli di implementazione in API Chiavi Dispositivi per i dettagli di implementazione nei dispositivi Bundles per i dettagli di implementazione in Dispositivi, e