有两种主要方法可以在没有 firebase 的情况下向 Flutter 应用程序发送推送通知。
- 使用flutter_local_notifications 包发送到本地通知
示例代码:
@override
void initState() {
super.initState();
var initializationSettingsAndroid = AndroidInitializationSettings('ypur-icon-name(icon)');
var initializationSettingsIOS = IOSInitializationSettings();
var initializationSettings = InitializationSettings(
android: initializationSettingsAndroid, iOS: initializationSettingsIOS);
flutterLocalNotificationsPlugin = FlutterLocalNotificationsPlugin();
flutterLocalNotificationsPlugin.initialize(initializationSettings,
onSelectNotification: _onNotificationClicked);
}
Future _showNotification() async {
var androidPlatformChannelSpecifics = AndroidNotificationDetails(
'Channel id', 'Your notification ID', 'Notification name',
importance: Importance.defaultImportance,
priority: Priority.defaultPriority);
var iOSPlatformChannelSpecifics = IOSNotificationDetails();
var platformChannelSpecifics = NotificationDetails(
android: androidPlatformChannelSpecifics,
iOS: iOSPlatformChannelSpecifics);
await flutterLocalNotificationsPlugin.show(
0,
'Notification Alert ?',
'Message - There is a new notification on your account, kindly check it out',
platformChannelSpecifics,
payload:
'Message - There is a new notification on your account, kindly check it out',
);
}
}
然后您创建一个函数或在单击通知时仅显示一个对话框
例如
Future _onNotificationClicked() async {
return showDialog();
);
对于颤振本地通知,您可以查看软件包文档以获取更多信息,您可以使用的另一种方法是将此本地通知连接到您的数据库/服务器或 API,以便它可以随时调用您的 API用户将收到通知。等等
-
OneSignal: 是一个免费的移动应用推送通知服务。该 SDK 可让您轻松将 Flutter iOS 和/或 Android 应用与 OneSignal 集成,它还用于支持移动 + 网络推送、电子邮件、SMS 和应用内消息。
该软件包在 pub.dev - onesignal
上可用