Flutter Push通知未显示在IOS上


12

我在Flutter和IOS的Push通知方面遇到问题。

我的设置和起作用的东西:

1)我安装了该firebase_messaging: ^5.1.6软件包,没有错误/按照他们对IOS的所有说明进行操作

2)我已请求用户获得IOS许可并接受接收推送通知

3)我能够在IOS和Android设备上获得FCM令牌

4)我在Apple开发人员部分中创建了一个密钥,并将该密钥添加到FCM

5)我已关闭应用程序/在测试时将其发送到后台-仍然没有运气

6)我已使用Xcode将google-service-info文件添加到Runner

7)我在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错误。

我已经搞砸了两天了,所以有点烦人,以上所有内容似乎都可以在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

我认为它与FirebaseAppDelegateProxyEnabled有关。medium.com/flutterpub/…此链接会有所帮助。
阿瑞斯(Ares)

链接似乎已关闭,存档之一仍然处于活动状态:web.archive.org/web/20191118225834/https : //medium.com/…但没有图像:(
Stefano Saitta

:这一次似乎一样好medium.com/@jun.chenying/...
斯蒂法诺Saitta

1
您可以使用Firebase消息传递控制台发送它们吗?
Stefano Saitta

@ user3057745您解决了这个问题吗?
Daniel Kuta

Answers:


2

这不是很漂亮,您可能需要提供更多详细信息,但是请将此问题提交到https://github.com/FirebaseExtended/flutterfire/issues。否则,快速搜索iOS推送通知问题将显示各种报告。这里有一些类似的东西,也许与您有关?

或者,如果您已经提交了文件,请共享链接!其他人可能会向您添加反馈。


0

如果您正在ios 10毛绒设备上进行测试,请尝试在FirebaseApp.configure()下的AppDelegate.swift文件中添加以下几行

 if #available(iOS 10.0, *) {
  UNUserNotificationCenter.current().delegate = self as? UNUserNotificationCenterDelegate
}

0

您必须从https://pub.dev/packages/firebase_messaging仔细完成所有步骤。我也陷入其中。但是后来我意识到缺少了一些东西。然后,我重新检查所有步骤。我错过了向APN(Apple Push Notification)注册的机会,因此请再次检查。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.