Уведомление Flutter Push не отображается на IOS - PullRequest
0 голосов
/ 09 октября 2019

У меня проблема с Flutter и IOS в отношении Push-уведомлений.

Мои настройки и все, что работает:

1) Я установил пакет firebase_messaging: ^5.1.6 без ошибок /выполнил все их инструкции для IOS

2) Я запросил у пользователя разрешение на IOS и согласился получать push-уведомления

3) Я могу получить токен FCM на устройствах IOS и Android

4) Я создал ключ в разделе для разработчиков Apple и добавил ключ в FCM

5) Я закрыл приложение / отправил его в фоновом режиме при тестировании - все еще не повезло

6) Я добавил файл google-service-info в Runner с помощью Xcode

7) Я добавил push-уведомления и фоновые уведомления в XCode Capabilities

8) Я тестирую нафизическое устройство iPhone 7 и физический iPad

Я использовал curl для отправки уведомления на устройство 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}"

Я получил успешный ответ от firebase

{"multicast_id":<SomeIdHere>,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"<SomeIdHere>"}]}

Вот как яИзвлеките токен:

firebaseMessaging.getToken().then((String token) {
      _authModel.setNotificationToken(token);
    });

Когда я запускаю приложение на IOS, я не получаю никаких ошибок Firebase.

Я возился с этим уже 2 дня, так что этонемного раздражает, все вышеперечисленное работает на Android.

Любые предложения, пожалуйста.

Flutter Doctor:

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!

Мой файл AppDelegate.m

#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

1 Ответ

0 голосов
/ 12 ноября 2019

Я думаю, что это связано с FirebaseAppDelegateProxyEnabled.

https://medium.com/flutterpub/enabling-firebase-cloud-messaging-push-notifications-with-flutter-39b08f2ed723

Эта ссылка будет полезна.

...