跳过主要内容

__CAPGO_KEEP_0__ Capacitor

Capacitor Firebase Cloud Messaging 插件

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 token,可以用来向该 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 token 并注销应用程序以停止接收推送通知。可以在用户注销时调用。

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 项目捕获 native code。从 "@capgo/capacitor-firebase-messaging" 导入您的应用 code。

Does @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 消息服务的 code?

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

不必等待应用审核就可以将Firebase Messaging的更改推送给用户

Once the plugin is in your store build, Capgo live updates will push your JavaScript, HTML and CSS changes to users in minutes.

开始使用Capgo