为什么我无法发送推送通知(Firebase云消息传递),如果由我自己的服务器

时间:2018-03-12 07:56:23

标签: ios swift firebase firebase-cloud-messaging

我们正在尝试在Android和iOS应用上实施推送通知,我们正在使用Firebase云消息传递向我们的应用发送推送通知。

实际上我的iOS应用可以连接到Firebase云消息传递,如果我通过firebase控制台通知发送通知,我可以在我的应用中收到通知 enter image description here

但如果邮件是通过我们的后端服务器(PHP)发送的,我将不会在我的iOS应用程序中收到通知,但该消息将在我们的Android应用程序中提供。

我们仍然试图找出问题,无论是来自客户端还是来自服务器端。但是从后端服务器发送响应错误

  

无效(传统)已发送的服务器密钥或发件人未获得授权   执行请求。

但我还必须确保问题不是来自我的iOS应用程序。但我也有疑问,因为在我的调试区域,它会显示一条消息

  

启用FIRMessaging远程通知代理,将调动远程   通知接收处理程序。如果您更喜欢手动整合   Firebase Messaging,将“FirebaseAppDelegateProxyEnabled”添加到您的   Info.plist,并将其设置为NO。

在info.plist中我将FirebaseAppDelegateProxyEnabled的值设置为YES

enter image description here

如果我根据上面调试区的消息将其设置为NO,那么我将不会收到推送通知,这就是为什么我将其设置为YES。

说实话,我完全不知道FirebaseAppDelegateProxyEnabled

的目的是什么

函数FirebaseAppDelegateProxyEnabled是什么?,是客户端应用程序问题的根本原因吗?

2 个答案:

答案 0 :(得分:0)

请尝试使用新的api密钥,而不要使用旧的api密钥。遇到同样的问题,当我更改密钥时,iOS客户端会收到推送通知

答案 1 :(得分:0)

确保iOS和Android都在同一Firebase应用程序上注册。在这种情况下,iOS和Android上Firebase应用程序上的Server密钥都将相同。我认为您正在使用不同的密钥。

我明白了吗?