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
sumber
Jawaban:
Ini tidak cantik, Anda mungkin perlu memberikan lebih banyak detail, tetapi silakan ajukan masalah ini ke https://github.com/FirebaseExtended/flutterfire/issues . Jika tidak, pencarian cepat masalah pemberitahuan push iOS menunjukkan berbagai laporan. Berikut adalah beberapa yang serupa, mungkin salah satu yang terkait dengan Anda?
5) I have closed the app / sent it to the background when testing - still no luck
Atau jika Anda sudah mengajukan satu, bagikan tautannya! Orang lain dapat menambahkan umpan balik ke umpan balik Anda.
sumber
Jika Anda menguji pada perangkat mewah ios 10 kemudian coba dengan menambahkan baris di bawah ini ke file AppDelegate.swift Anda di bawah FirebaseApp.configure ()
sumber
Anda harus menyelesaikan semua langkah dari https://pub.dev/packages/firebase_messaging dengan cermat. Saya juga terjebak di dalamnya. Tetapi kemudian saya menyadari bahwa saya kehilangan sesuatu. Lalu saya periksa kembali semua langkah. Saya ketinggalan mendaftar dengan APN (Apple Push Notification). Jadi harap periksa kembali sekali lagi.
sumber