Lebih cepat ke konten

Getting Started

GitHub

Kamu bisa menggunakan Setup Bantuan AI kami untuk menginstal plugin. Tambahkan Capgo kemampuan ke alat AI kamu menggunakan perintah berikut:

Tampilan jendela terminal
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Lalu gunakan prompt berikut:

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

Jika kamu lebih suka Setup Manual, instal plugin dengan menjalankan perintah-perintah berikut dan ikuti instruksi spesifik platform di bawah ini:

Tampilan jendela terminal
bun add @capgo/capacitor-firebase-messaging
bunx cap sync
import { FirebaseMessaging } from '@capgo/capacitor-firebase-messaging';

Periksa izin untuk menerima push notifikasi.

Aktif Android, metode ini hanya perlu dipanggil pada Android 13+.

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

Minta izin untuk menerima push notifikasi.

Pada Android, metode ini hanya perlu dipanggil pada Android 13+.

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

Memeriksa apakah semua API yang dibutuhkan ada.

Selalu mengembalikan true pada Android dan iOS.

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

Daftarkan aplikasi untuk menerima notifikasi push. Mengembalikan token FCM yang dapat digunakan untuk mengirim pesan push ke instance Messaging tersebut.

Metode ini juga mengaktifkan ulang inisialisasi FCM otomatis.

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

Hapus token FCM dan daftarkan aplikasi untuk menghentikan penerimaan notifikasi push. Dapat dipanggil, misalnya, ketika pengguna keluar dari akun.

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

Dapatkan daftar notifikasi yang dapat dilihat di layar notifikasi.

Perlu diingat: Ini akan mengembalikan semua notifikasi yang disampaikan, termasuk notifikasi lokal, dan bukan hanya notifikasi FCM.

Pada Android, bidang data notifikasi FCM tidak akan termasuk.

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

Hapus notifikasi tertentu dari layar notifikasi.

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

Hapus semua notifikasi dari layar notifikasi.

Perlu diingat: Ini akan menghapus semua notifikasi yang telah disampaikan, termasuk notifikasi lokal, dan bukan hanya notifikasi FCM.

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

Mengikuti topik di latar belakang.

Hanya tersedia untuk Android dan iOS.

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

Mengundurkan diri dari topik di latar belakang.

Hanya tersedia untuk Android dan iOS.

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

Buat saluran peringatan.

Hanya tersedia untuk Android (SDK 26+).

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

Hapus saluran peringatan.

Hanya tersedia untuk Android (SDK 26+).

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

Tampilkan daftar saluran peringatan yang tersedia.

Hanya tersedia untuk Android (SDK 26+).

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

Referensi Tipe

Referensi Tipe
export interface PermissionStatus {
/**
* @since 0.2.2
*/
receive: PermissionState;
}
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;
}

GetDeliveredNotificationsResult

Referensi Tipe: Hasil Pemberian Notifikasi
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[];
}

TokenReceivedListener

Penerima Token Listener

Panggilan balik untuk menerima event token yang diterima.

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

Halaman ini dihasilkan dari plugin’s src/definitions.tsRe-run sinkronisasi ketika publik API berubah di atas.

Teruskan dari Getting Started

Penerimaan Teruskan dari Getting Started

Jika Anda menggunakan Getting Started untuk merencanakan dashboard dan API operasi, hubungkannya dengan Ringkasan API untuk detail implementasi di Ringkasan API Pendahuluan untuk detail implementasi di Pendahuluan Kunci API untuk detail implementasi di Kunci API Perangkat untuk detail implementasi di Perangkat, dan Paket untuk detail implementasi di Paket.