fcm_channels_manager 是一个 Flutter 包,用于在 Android 中创建和管理通知。
功能
1. 该插件为 Android 提供了管理通知渠道的 API。
支持 Android 8.0 (API 级别 26) 及以上版本。更多信息,请访问 创建和管理通知渠道
- 创建新渠道
- 获取所有已注册的渠道
- 删除一个渠道
2. 在 iOS 中提供应用通知设置
一个指示系统应显示应用内通知设置按钮的选项。支持 iOS 12.0 及以上版本
安装
在您的 flutter 项目的 pubspec.yaml 文件中,添加以下依赖项
dependencies:
fcm_channels_manager: <latest_version>
在您的库中添加以下导入
import 'package:fcm_channels_manager/fcm_channels_manager.dart';
用法
1. 创建新渠道
如果渠道注册成功,则返回成功消息。
final result = await FcmChannelsManager().registerChannel(
id: "1001",
name: "Feedback notification",
description: "Receive new feedback and system's notification",
importance: NotificationImportance.importanceHight,
visibility: NotificationVisibility.public,
bubbles: true,
vibration: true,
sound: true,
badge: true,
);
- 通知重要性级别
| 插件值 | Android 参考 |
|---|---|
NotificationImportance.disabled |
IMPORTANCE_NONE |
NotificationImportance.importanceMin |
IMPORTANCE_MIN |
NotificationImportance.importanceLow |
IMPORTANCE_LOW |
NotificationImportance.importanceDefault |
IMPORTANCE_DEFAULT |
NotificationImportance.importanceHight |
IMPORTANCE_HIGH |
- 通知可见性
| 插件值 | 描述 |
|---|---|
NotificationVisibility.public |
在所有锁屏上完全显示此通知 |
NotificationVisibility.private |
在所有锁屏上显示此通知,但隐藏安全锁屏上的敏感或私人信息 |
NotificationVisibility.secret |
在安全锁屏上不显示此通知的任何部分 |
2. 获取所有已注册的渠道
您可以获取所有已注册的渠道以及该渠道的基础信息:id、name、description、importance。您可以检查重要性级别,然后处理您的业务。
final channesl = await FcmChannelsManager().getChannels();
3. 删除一个渠道
通过渠道 ID 删除已注册的渠道。如果渠道已删除,则返回成功消息。
final result = await FcmChannelsManager().unregisterChannel('1001')
4. 提供应用通知设置
如果成功更新 .providesAppNotificationSettings,则返回 true。该函数应在调用 firebase_messaging 请求通知权限后调用。
FcmChannelsManager()
.providesAppNotificationSettings()
.then((value) => log('Permission status: $value'));
示例
遵循示例:/example
演示
贡献
欢迎您为本项目做出贡献。
如果您发现错误或想要一项功能,但不知道如何修复/实现,请提交一个 issue。如果您修复了错误或实现了一项功能,请发送一个 pull request。

