Flutter 中的 Firebase (FCM) 注册令牌
2022-09-01 01:15:02
我正在尝试从Java Rest Api(使用Firebase Admin sdk)向我的Flutter应用程序发送通知,似乎需要设备令牌才能发送通知,但我找不到如何获取该令牌。我是Flutter和Android的新手,可能错过了任何关键步骤。如果可以的话,请帮帮我。谢谢。
我正在尝试从Java Rest Api(使用Firebase Admin sdk)向我的Flutter应用程序发送通知,似乎需要设备令牌才能发送通知,但我找不到如何获取该令牌。我是Flutter和Android的新手,可能错过了任何关键步骤。如果可以的话,请帮帮我。谢谢。
使用 ,您可以使用 直接获取令牌firebase_messaging: ^10.0.0
String? token = await FirebaseMessaging.instance.getToken();
或
FirebaseMessaging.instance.getToken().then((value) {
String? token = value;
});
将其添加到软件包的 pubspec.yaml 文件中:
dependencies:
firebase_messaging: ^6.0.16
您可以从命令行安装软件包:
带颤振:
$ flutter packages get
现在,在您的 Dart 代码中,您可以使用:
import 'package:firebase_messaging/firebase_messaging.dart';
实现:
FirebaseMessaging _firebaseMessaging = FirebaseMessaging();
@override
void initState() {
super.initState();
firebaseCloudMessaging_Listeners();
}
void firebaseCloudMessaging_Listeners() {
if (Platform.isIOS) iOS_Permission();
_firebaseMessaging.getToken().then((token){
print(token);
});
_firebaseMessaging.configure(
onMessage: (Map<String, dynamic> message) async {
print('on message $message');
},
onResume: (Map<String, dynamic> message) async {
print('on resume $message');
},
onLaunch: (Map<String, dynamic> message) async {
print('on launch $message');
},
);
}
void iOS_Permission() {
_firebaseMessaging.requestNotificationPermissions(
IosNotificationSettings(sound: true, badge: true, alert: true)
);
_firebaseMessaging.onIosSettingsRegistered
.listen((IosNotificationSettings settings)
{
print("Settings registered: $settings");
});
}
有关更多详细信息,请参阅此链接
希望这对您有所帮助