gpt4 book ai didi

flutter - 当 flutter 应用程序处于后台时,通知不会进入 Release模式

转载 作者:行者123 更新时间:2023-12-05 09:00:55 25 4
gpt4 key购买 nike

void main() async {
WidgetsFlutterBinding.ensureInitialized();
await GetStorage.init();
await Firebase.initializeApp();
await PushNotificationsService().init();
FirebaseMessaging.onBackgroundMessage(_firebaseMessagingBackgroundHandler);
runApp(MyApp());
setuplocator();
}

以上代码设置在主线程。现在的问题是应用程序在后台时没有收到通知。在前台它工作正常。但它不在后台运行。

但这一切都是在 Debug模式下发生的,而不是在 Release模式下发生的。怎么办?

最佳答案

@pragma('vm:entry-point')
Future<void> _firebaseMessagingBackgroundHandler(RemoteMessage message) async {
// handle message
}

只需在上面的 _firebaseMessagingBackgroundHandler 方法上添加 @pragma('vm:entry-point')

我必须再次指出,这个问题只发生在发布版本上,并且只发生在 Android 平台上(我已经在装有 Android 13 的模拟器以及运行 Android 12 的三星设备上对此进行了测试)。在调试和配置文件模式下,应用程序收到 2 个通知,一个来自 native Firebase Messaging,一个来自 Flutter 后台处理程序的 firebase_local_notifications,它也应该在 Release模式下执行(这在 3.0.5 中正常工作),但是,在 3.3.0 中,它只显示 native 通知,没有 flutter_local_notifications 生成的痕迹。

关于flutter - 当 flutter 应用程序处于后台时,通知不会进入 Release模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74599764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com