Saya mengalami masalah dengan Flutter dan iOS sehubungan dengan pemberitahuan Push.
Pengaturan saya dan hal-hal yang berfungsi:
1) Saya menginstal firebase_messaging: ^5.1.6
paket tanpa kesalahan / mengikuti semua instruksi mereka untuk iOS
2) Saya telah meminta izin pengguna pada iOS dan menerima untuk menerima pemberitahuan push
3) Saya bisa mendapatkan token FCM di perangkat iOS & Android
4) Saya telah membuat Kunci di bagian pengembang Apple dan menambahkan kunci ke FCM
5) Saya telah menutup aplikasi / mengirimnya ke latar belakang saat pengujian - masih belum berhasil
6) Saya telah menambahkan file google-service-info ke Runner menggunakan Xcode
7) Saya telah menambahkan pemberitahuan push dan pemberitahuan latar belakang dalam Kemampuan XCode
8) Saya menguji pada perangkat fisik iPhone 7, dan iPad fisik
Saya telah menggunakan curl untuk mengirim notifikasi ke perangkat iOS
curl -X POST --header "Authorization: key=<myAuthKEY>" \
--Header "Content-Type: application/json" \
https://fcm.googleapis.com/fcm/send \
-d "{\"to\":\"<myDeviceKey>\",\"notification\":{\"body\":\"Hello\"},\"priority\":10}"
Saya mendapat respons sukses dari firebase
{"multicast_id":<SomeIdHere>,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"<SomeIdHere>"}]}
Inilah cara saya mengambil token:
firebaseMessaging.getToken().then((String token) {
_authModel.setNotificationToken(token);
});
Ketika saya menjalankan aplikasi di iOS, saya tidak mendapatkan kesalahan Firebase.
Saya sudah bermain-main dengan ini selama 2 hari sekarang, jadi semakin sedikit mengganggu, semua hal di atas sepertinya bekerja di Android.
Mohon saran.
Dokter Flutter:
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, v1.9.1+hotfix.4, on Mac OS X 10.15 19A583, locale en-GB)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[✓] Xcode - develop for iOS and macOS (Xcode 11.0)
[✓] Android Studio (version 3.5)
[✓] VS Code (version 1.38.1)
[✓] Connected device (4 available)
• No issues found!
File AppDelegate.m saya
#include "AppDelegate.h"
#include "GeneratedPluginRegistrant.h"
@import Firebase;
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[FIRApp configure];
[GeneratedPluginRegistrant registerWithRegistry:self];
// Override point for customization after application launch.
return [super application:application didFinishLaunchingWithOptions:launchOptions];
}
@end