跳过主要内容

__CAPGO_KEEP_0__ Capacitor

Capacitor Firebase Cloud Messaging (FCM) 插件

Install

bun add @capgo/capacitor-firebase-messaging bunx cap sync
npm, pnpm 或 yarn
  • npm install @capgo/capacitor-firebase-messaging
  • pnpm add @capgo/capacitor-firebase-messaging
  • yarn add @capgo/capacitor-firebase-messaging

指南

如何在 Capacitor 中使用 Firebase 消息

使用@capgo/capacitor-firebase-messaging

Capacitor插件用于Firebase Cloud Messaging (FCM).

安装

bun add @capgo/capacitor-firebase-messaging
bunx cap sync

bunx cap sync 复制插件的本机code到您的本机项目中。每次升级插件后都重新运行它。

导入

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';

API概览

方法 描述
checkPermissions 检查接收推送通知的权限。
requestPermissions 请求接收推送通知的权限。
isSupported 检查所有必需的API是否存在。
getToken 注册应用以接收推送通知。返回一个FCM令牌,可以用来向该Messaging实例发送推送消息。
deleteToken 删除 FCM token 并注销应用以停止接收推送通知。可以在用户注销时调用。
getDeliveredNotifications 获取可在通知屏幕上显示的通知列表。
removeDeliveredNotifications 从通知屏幕中移除特定的通知。
removeAllDeliveredNotifications 从通知屏幕中移除所有通知。
subscribeToTopic 在后台订阅主题。
unsubscribeFromTopic 在后台取消订阅主题。
createChannel 创建通知通道。
deleteChannel 删除通知通道。
listChannels 列出可用的通知通道。

示例

checkPermissions()

检查接收推送通知的权限。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';

const result = await FirebaseMessaging.checkPermissions();
console.log(result);

requestPermissions()

请求接收推送通知的权限。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';

const result = await FirebaseMessaging.requestPermissions();
console.log(result);

isSupported()

检查所有必需的API是否存在。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';

const result = await FirebaseMessaging.isSupported();
console.log(result);

getToken()

注册应用程序以接收推送通知。返回一个FCM令牌,可以用来向该Messaging实例发送推送消息。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';

const result = await FirebaseMessaging.getToken();
// The result holds sensitive values: use it without logging it.

deleteToken()

删除FCM令牌并注销应用程序以停止接收推送通知。可以在用户注销时调用。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';

await FirebaseMessaging.deleteToken();

getDeliveredNotifications()

获取可在通知屏幕上显示的通知列表。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';

const result = await FirebaseMessaging.getDeliveredNotifications();
console.log(result);

上表列出了13个核心方法。监听器和版本辅助函数,以及每个方法的完整契约,均在该仓库中进行了文档。 GitHub仓库.

监听事件

addListener 返回一个句柄。调用 handle.remove() 当屏幕卸载时,或者 FirebaseMessaging.removeAllListeners() 以清除所有监听器。

完整参考

继续使用@capgo/capacitor-firebase-messaging

如果您正在使用 使用@capgo/capacitor-firebase-messaging 为native插件工作制定计划,连接它到 Capgo插件目录 在Capgo插件目录中 Capacitor由Capgo 在Capacitor由Capgo中 添加或更新插件 在添加或更新插件中 Ionic 企业插件替代方案 为 Ionic 企业插件替代方案中的产品工作流程 Capgo 本机构建 为 Capgo 本机构建中的产品工作流程

常见问题

Firebase Messaging 插件常见问题

如何在 Capacitor 应用中安装 Firebase Messaging 插件?

运行 "bun add @capgo/capacitor-firebase-messaging" (或 "npm install @capgo/capacitor-firebase-messaging"),然后运行 "bunx cap sync" 以便 iOS 和 Android 项目捕获到原生 code。从 "@capgo/capacitor-firebase-messaging" 导入到您的应用 code。

@capgo/capacitor-firebase-messaging 与 React、Vue 和 Angular 是否兼容?

是的。Firebase Messaging 是一个 Capacitor 包,因此它与任何运行在 Capacitor 内的 web 框架兼容,包括 Ionic、React、Vue、Angular、Svelte 和普通 JavaScript。

@Capacitor 的哪个版本支持 @capgo/capacitor-firebase-messaging?

@Capgo 插件遵循 Capacitor 的主要版本:使用与您的 Capacitor 主要版本匹配的插件主要版本(例如插件 v8 与 Capacitor 8)。在 GitHub README 中的兼容性表格列出了维护的版本。

@capgo/capacitor-firebase-messaging 是否免费和开源?

Yes. The source code is public on GitHub at https://github.com/Cap-go/capacitor-firebase/tree/main/packages/messaging and the package is free to install from npm. Bug reports and pull requests are welcome.

我可以在不经过 App Store 审核的情况下更新使用 Firebase Messaging 的 code 吗?

code 和 Capgo 的升级或安装会改变原生代码,因此需要重新构建 App Store。之后,使用 Capgo 实时更新的 JavaScript、HTML 和 CSS 变更可以立即发布。

无需等待应用程序审查即可将Firebase Messaging更改推送到用户

一旦插件在您的商店构建中,Capgo实时更新将将JavaScript、HTML和CSS更改推送给用户,仅需几分钟

从Capgo开始