Skip to content

はじめに

GitHub

CapgoのAI-Assisted Setupを使用してプラグインをインストールできます。AIツールにCapgoスキルを追加するには、以下のコマンドを実行してください。

ターミナル画面
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

次に、以下のプロンプトを使用してください。

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-messaging` plugin in my project.

Manual Setupを使用する場合は、以下のコマンドを実行してプラグインをインストールし、以下のプラットフォーム固有の指示に従ってください。

ターミナル画面
bun add @capgo/capacitor-firebase-messaging
bunx cap sync
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';

プッシュ通知を受信するための権限を確認してください。

オン Androidこのメソッドは、Android 13以上で実行する必要があります。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.checkPermissions();

プッシュ通知を受信するための許可を求めます。

On Androidこのメソッドは、Android 13 以降のみで実行する必要があります。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.requestPermissions();

必要なすべての API が存在するかどうかを確認します。

常に Android と iOS で返されます。 true コピー

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.isSupported();

プッシュ通知を受信するアプリを登録する。 FCMトークンを取得し、Messaging インスタンスにプッシュメッセージを送信できる。

このメソッドは、FCM 自動初期化も再有効化します。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.getToken();

FCM トークンを削除し、アプリをプッシュ通知を受信しないようにアンレジスターする。 ユーザーがログアウトしたときなどに呼び出すことができます。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.deleteToken();

通知画面で表示されている通知の一覧を取得する。

注意: このメソッドは、すべての通知を返します。ローカル通知やFCM通知だけではなく、すべての通知を返します。

Androidの場合、FCM通知のデータフィールドは含まれません。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.getDeliveredNotifications();

通知画面から特定の通知を削除します。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.removeDeliveredNotifications({} as RemoveDeliveredNotificationsOptions);

通知画面からすべての通知を削除します。

注: これは、すべての通知を削除し、FCM通知だけを削除しないことに注意してください。ローカル通知も含まれます。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.removeAllDeliveredNotifications();

バックグラウンドでトピックにサブスクライブします。

AndroidおよびiOSのみで利用可能です。

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.subscribeToTopic({} as SubscribeToTopicOptions);

バックグラウンドでトピックからアンサブスクライブします。

AndroidおよびiOSのみ対応

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.unsubscribeFromTopic({} as UnsubscribeFromTopicOptions);

通知チャンネルを作成します。

Android (SDK 26+)のみ対応

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.createChannel({} as CreateChannelOptions);

通知チャンネルを削除します。

Android (SDK 26+)のみ対応

import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';
await FirebaseMessaging.deleteChannel({} as DeleteChannelOptions);

利用可能な通知チャンネルの一覧を表示します。

Only available for 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;
}
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;
}
export interface GetTokenResult {
/**
* @since 0.2.2
*/
token: string;
}
export interface GetDeliveredNotificationsResult {
/**
* @since 0.2.2
*/
notifications: Notification[];
}
export interface RemoveDeliveredNotificationsOptions {
/**
* @since 0.4.0
*/
notifications: Notification[];
}
export interface SubscribeToTopicOptions {
/**
* The name of the topic to subscribe.
*
* @since 0.2.2
*/
topic: string;
}
export interface UnsubscribeFromTopicOptions {
/**
* The name of the topic to unsubscribe from.
*
* @since 0.2.2
*/
topic: string;
}
export type CreateChannelOptions = Channel;
export interface DeleteChannelOptions {
/**
* The channel identifier.
*
* @since 1.4.0
*/
id: string;
}
export interface ListChannelsResult {
channels: Channel[];
}

トークンを受信したイベントのコールバックです。

export type TokenReceivedListener = (event: TokenReceivedEvent) => void;

このページはプラグインの src/definitions.tsパブリック API がアップストリームで変更されたときに再度同期してください。

Capacitor を使用している場合 はじめに を計画するダッシュボードとAPIの操作に接続する APIの概要 APIの概要の実装詳細について 導入 導入の実装詳細について APIのキー APIのキーに関する実装詳細について デバイス デバイスに関する実装詳細について バンドル バンドルに関する実装詳細について