我在通知中心显示通知成功,但我收到通知时没有平视横幅显示。
下面是我的重现代码
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:flutter_local_notifications/flutter_local_notifications.dart';
void main() {
runApp(
new MaterialApp(home: new MyApp()),
);
}
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => new _MyAppState();
}
class _MyAppState extends State<MyApp> {
FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin;
@override
initState() {
super.initState();
var initializationSettingsAndroid =
new AndroidInitializationSettings('@mipmap/ic_launcher');
var initializationSettingsIOS = new IOSInitializationSettings();
var initializationSettings = new InitializationSettings(android: initializationSettingsAndroid, iOS: initializationSettingsIOS);
flutterLocalNotificationsPlugin = new FlutterLocalNotificationsPlugin();
flutterLocalNotificationsPlugin.initialize(initializationSettings,
onSelectNotification: onSelectNotification);
}
@override
Widget build(BuildContext context) {
return new MaterialApp(
home: new Scaffold(
appBar: new AppBar(
title: new Text('Plugin example app'),
),
body: new Center(
child: new Column(
mainAxisAlignment: MainAxisAlignment.center,
mainAxisSize: MainAxisSize.max,
children: <Widget>[
new RaisedButton(
onPressed: _showNotification,
child: new Text('Show Notification'),
),
],
),
),
),
);
}
Future _showNotification() async {
const AndroidNotificationDetails androidPlatformChannelSpecifics =
AndroidNotificationDetails(
'your channel id', 'your channel name', 'your channel description',
importance: Importance.max,
priority: Priority.high,
showWhen: true);
const NotificationDetails platformChannelSpecifics =
NotificationDetails(android: androidPlatformChannelSpecifics);
await flutterLocalNotificationsPlugin.show(
0, 'plain title', 'plain body', platformChannelSpecifics,
payload: 'item x');
}
Future onSelectNotification(String payload) async {
showDialog(
context: context,
builder: (_) {
return new AlertDialog(
title: Text("Your Notification Detail"),
content: Text("Payload : $payload"),
);
},
);
}
}
发布于 2021-04-23 14:50:06
安卓设备的通知只会出现在托盘中,而不会出现在吐司aka提示通知中,除非适当地设置了优先级/重要性。有关更多信息,请参阅Android文档(https://developer.android.com/guide/topics/ui/notifiers/notifications.html#Heads-up)。
将此设置添加到AndroidManifest.xml:可能会有所帮助
<activity
android:showWhenLocked="true"
android:turnScreenOn="true">
https://stackoverflow.com/questions/67231427
复制相似问题