Flutter本地通知插件djangoflow_local_notification的使用
Flutter本地通知插件djangoflow_local_notification的使用

DjangoFlow Local Notification Package
📬 一款为Flutter移动应用设计的流线型且灵活的本地通知解决方案,无缝集成DjangoFlow框架,支持动态通知操作。
✨ 功能
- 通过`NotificationInitializer`轻松初始化本地通知插件。
- 无缝集成DjangoFlow框架和`djangoflow_openapi`包。
- 定义并管理互动通知的推送操作类别。
- 方便处理通知数据负载和操作。
- 使用`ImageDownloader`下载并附加图像到通知中。
- 模块化结构,代码整洁且有条理。
🚀 安装
在pubspec.yaml
文件中添加以下依赖项:
dependencies:
djangoflow_local_notification: ^latest_version
注意:此插件仅适用于Android和iOS平台。它在底层使用了flutter_local_notifications
。您可以参考其文档进行平台特定的设置和问题排查。
🔧 使用
1. 初始化通知
import 'package:djangoflow_local_notification/djangoflow_local_notification.dart';
// 初始化通知
final notificationInitializer = NotificationInitializer();
await notificationInitializer.initialize(
pushActions: pushActionCategories, // List<PushActionCategory>
defaultAndroidNotificationIcon: 'app_icon',
);
2. 加载推送操作类别
import 'package:djangoflow_local_notification/djangoflow_local_notification.dart';
final actionCategoryCubit = ActionCategoryCubit.instance;
// 加载推送操作类别
await actionCategoryCubit.load();
3. 显示本地通知
import 'package:djangoflow_local_notification/djangoflow_local_notification.dart';
final localNotificationCubit = LocalNotificationCubit.instance;
await localNotificationCubit.displayNotification(
notificationDetailsBuilder: () async {
// 构建NotificationDetails
return NotificationDetails(/*...*/);
},
id: 1,
title: '通知标题',
body: '通知正文',
payload: 'payload_data',
);
🎨 自定义
- 使用`NotificationDetails`自定义通知外观。
- 为互动通知使用自定义的操作类别和操作。
- 使用`ImageDownloader`将图像附加到通知中。
🛠 问题排查
Android - 发布模式下未找到通知图标
如果您在发布模式下的Android设备上遇到通知图标找不到的问题,可以尝试以下解决方法:
- 在您的Android项目的
app/src/main/res/raw/
目录下创建一个名为keep.xml
的文件。 - 向
keep.xml
文件中添加以下内容(如果文件不存在则创建):
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
tools:keep="@drawable/*,@raw/slow_spring_board" />
更多关于Flutter本地通知插件djangoflow_local_notification的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
1 回复