私は多くの異なるチュートリアルを試しました。これ https://medium.com/flutterpub/enabling-firebase-cloud-messaging-Push-notifications-with-flutter-39b08f2ed72
しかし、iPhoneでプッシュ通知を受け取ることができません。 Androidで完全に動作します。
私はfirebase_messaging:^ 4.0.0 + 4とflutter_local_notifications:^ 0.6.1を使用しています
問題は、トークンがgetToken()で受信されても、リスナー(onMessage、onResume、またはonLaunch)がiOSで呼び出されないことです。
エラーメッセージはありません。この動作の理由がわかりません。誰かが私を助けてくれたらうれしいです。
ありがとう。
_firebaseMessaging.configure(
onMessage: (Map<String, dynamic> message) async {
print("IM HERE ON MESSAGE");
print('on message $message');
String message_as_String = json.encode(message);
print(message_as_String);
String title = "test";
String body = "test";
String screen = "test";
var androidPlatformChannelSpecifics = new AndroidNotificationDetails(
'your channel id', 'your channel name', 'your channel description',
playSound: false, importance: Importance.Max, priority: Priority.High);
var iOSPlatformChannelSpecifics =
new IOSNotificationDetails(presentSound: false);
var platformChannelSpecifics = new NotificationDetails(
androidPlatformChannelSpecifics, iOSPlatformChannelSpecifics);
await flutterLocalNotificationsPlugin.show(
0,
body,
title,
platformChannelSpecifics,
payload: screen,
);
},
onResume: (Map<String, dynamic> message) async {
print('on resume $message');
String screen = message["screen"];
},
onLaunch: (Map<String, dynamic> message) async {
print('on launch $message');
},
);
if (Platform.isIOS) iOS_Permission();
_firebaseMessaging.getToken().then((token){
print(token);
});
}
私はこれがかなり遅いことを知っていますが、同じ問題がありました。
私の問題は、Firebaseにキーを追加した後、「GoogleService-Info.plist」を再度ダウンロードしないことでした。
もう一度ダウンロードしてXcodeプロジェクトに追加すると、プッシュ通知は魅力的に機能しました:)
お役に立てれば