[英]How to show custom notification by default with collapsed layout when expand layout is enable in Android
[英]How to enable the Notification by default on android devices?
我最近实施了 flutter_local_notifications 并且通知工作正常。 但是有一个问题是默认情况下通知不会显示为弹出窗口。 默认情况下,该选项在通知设置中处于禁用状态。
我的代码是这样的:
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
ServiceContainer.initialize(Injector());
SystemChrome.setPreferredOrientations(
[DeviceOrientation.portraitUp, DeviceOrientation.portraitDown]);
await PreferenceHelper.create();
FirebaseMessaging messaging = FirebaseMessaging.instance;
await messaging.requestPermission(
alert: true,
badge: true,
sound: true,
provisional: false,
);
await FirebaseMessaging.instance.requestPermission();
await FirebaseMessaging.instance.setForegroundNotificationPresentationOptions(
alert: true,
badge: true,
sound: true,
);
SystemChrome.setSystemUIOverlayStyle(
const SystemUiOverlayStyle(statusBarColor: Colors.transparent));
runApp(const App());
await [Permission.storage, Permission.notification].request();
}
您需要请求通知权限
请求 Android 13 或更高权限
从 Android 13(API 级别 33)开始,应用程序现在可以显示提示,用户可以在其中决定是否要授予应用程序显示通知的权限。 有关此问题的进一步阅读,请阅读https://developer.android.com/guide/topics/ui/notifiers/notification-permission 。 要支持此应用程序,需要将其应用程序定位到 Android 13 或更高版本,并且编译 SDK 版本需要至少为 33 (Android 13)。 例如,要以 Android 13 为目标,请将应用程序的 build.gradle 文件更新为 targetSdkVersion 为 33。然后,应用程序可以调用以下代码来请求权限,其中 requestPermission 方法与 AndroidFlutterLocalNotificationsPlugin class(即插件的 8815603834098 实现)8 相关联
这就是你如何做的。
FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin =
FlutterLocalNotificationsPlugin();
flutterLocalNotificationsPlugin.resolvePlatformSpecificImplementation<
AndroidFlutterLocalNotificationsPlugin>().requestPermission();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.