开始使用
复制一个包含安装步骤和本插件的完整Markdown指南的设置提示
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.
Install
Section titled “Install”You can use our AI-Assisted Setup to install the plugin. Add the Capgo skills to your AI tool using the following command:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsThen use the following prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-messaging` plugin in my project.If you prefer Manual Setup, install the plugin by running the following commands and follow the platform-specific instructions below:
bun add @capgo/capacitor-firebase-messagingbunx cap sync导入
导入import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';API概述
API概述checkPermissions
检查权限检查推送通知权限
开启 Android仅在Android 13+上调用此方法
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.checkPermissions();requestPermissions
获取推送通知的权限请求推送通知的权限
在 Android上,仅在 Android 13+ 时需要调用此方法。
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.requestPermissions();isSupported
检查所有所需 API 是否存在。始终返回
在 Android 和 iOS 上。 true 复制到剪贴板
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.isSupported();getToken
__CAPGO_KEEP_0__注册应用程序以接收推送通知。 返回一个 FCM token,可以用来向该 Messaging 实例发送推送消息。
此方法还重新启用 FCM 自动初始化。
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.getToken();deleteToken
标题为“deleteToken”的部分删除 FCM token 并注销应用程序以停止接收推送通知。 可以在用户注销时调用。
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.deleteToken();getDeliveredNotifications
标题为“getDeliveredNotifications”的部分获取可见于通知屏幕上的通知列表。
注意:此方法将返回所有已交付的通知,包括本地通知,而不是仅 FCM 通知。
在 Android 上,FCM 通知的数据字段将不会包含。
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.getDeliveredNotifications();removeDeliveredNotifications
标题为“removeDeliveredNotifications”的部分移除特定通知从通知屏幕。
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.removeDeliveredNotifications({} as RemoveDeliveredNotificationsOptions);removeAllDeliveredNotifications
标题:移除所有已送达通知移除所有通知从通知屏幕。
注意:这将移除所有已送达通知,包括本地通知,而不是仅限FCM通知。
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.removeAllDeliveredNotifications();subscribeToTopic
标题:订阅主题在后台订阅主题。
仅适用于Android和iOS。
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.subscribeToTopic({} as SubscribeToTopicOptions);unsubscribeFromTopic
标题:取消订阅主题在后台取消订阅主题。
仅适用于 Android 和 iOS。
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.unsubscribeFromTopic({} as UnsubscribeFromTopicOptions);createChannel
创建频道创建通知频道。
仅适用于 Android (SDK 26+)。
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.createChannel({} as CreateChannelOptions);deleteChannel
删除频道删除通知频道。
仅适用于 Android (SDK 26+)。
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.deleteChannel({} as DeleteChannelOptions);listChannels
列出可用通知频道。列出可用的通知频道。
仅适用于 Android (SDK 26+)。
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.listChannels();类型参考
类型参考PermissionStatus
权限状态export interface PermissionStatus { /** * @since 0.2.2 */ receive: PermissionState;}IsSupportedResult
是否支持结果export interface IsSupportedResult { /** * @since 0.3.1 */ isSupported: boolean;}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
获取令牌结果export interface GetTokenResult { /** * @since 0.2.2 */ token: string;}GetDeliveredNotificationsResult
Section titled “获取已交付通知结果”export interface GetDeliveredNotificationsResult { /** * @since 0.2.2 */ notifications: Notification[];}RemoveDeliveredNotificationsOptions
Section titled “移除已交付通知选项”export interface RemoveDeliveredNotificationsOptions { /** * @since 0.4.0 */ notifications: Notification[];}SubscribeToTopicOptions
Section titled “订阅主题选项”export interface SubscribeToTopicOptions { /** * The name of the topic to subscribe. * * @since 0.2.2 */ topic: string;}UnsubscribeFromTopicOptions
Section titled “取消订阅主题选项”export interface UnsubscribeFromTopicOptions { /** * The name of the topic to unsubscribe from. * * @since 0.2.2 */ topic: string;}CreateChannelOptions
Section titled “创建频道选项”export type CreateChannelOptions = Channel;DeleteChannelOptions
Section titled “删除频道选项”export interface DeleteChannelOptions { /** * The channel identifier. * * @since 1.4.0 */ id: string;}ListChannelsResult
ListChannelsResultexport interface ListChannelsResult { channels: Channel[];}TokenReceivedListener
TokenReceivedListener接收到令牌事件的回调。
export type TokenReceivedListener = (event: TokenReceivedEvent) => void;真实来源
真实来源本页面是由插件的 src/definitions.ts重新同步公共API时,重新运行上游的同步。
继续从开始
继续从开始如果您正在使用 开始使用 为计划仪表板和API操作,连接它 API概述 了解API概述的实现细节 介绍 了解介绍的实现细节 API密钥 了解API密钥的实现细节 设备 了解设备的实现细节,并且 包 了解包的实现细节