import 'package:flutter/material.dart';
import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';
class PushNotificationService
{
final FirebaseMessaging firebaseMessaging = FirebaseMessaging();
Future initialize(context) async
{
firebaseMessaging.configure(
onMessage: (Map<String, dynamic> message) async {
retrieveRideRequestInfo(getRideRequestId(message), context);
},
onLaunch: (Map<String, dynamic> message) async {
retrieveRideRequestInfo(getRideRequestId(message), context);
},
onResume: (Map<String, dynamic> message) async {
retrieveRideRequestInfo(getRideRequestId(message), context);
},
);
}
清单:
<intent-filter>
<action android:name="FLUTTER_NOTIFICATION_CLICK" />
<category android:name="android.intent.category.DEFAULT"
/>
</intent-filter>
错误:类"FirebaseMessaging"没有默认构造函数。请尝试使用"FirebaseMessaging"中定义的某个命名构造函数。
尝试FirebaseMessaging.instance
而不是FirebaseMessaging()
,它应该可以工作。
尝试添加依赖项firebase_core 1.4.0
import"package:firebase_core/firebase_core.dart";
@override
void initState() {
// TODO: implement initState
super.initState();
Firebase.initializeApp();
}
onPressed: () async {
String token = await FirebaseMessaging.instance.getToken();
print(token);
},
使用FirebaseStorage.instanceFor
而不是默认的构造函数
使用旧版本的FirebaseMessaging。我使用了firebase_messaging: ^4.0.0+1