我在项目中集成了推送通知系统和Firebase,除了一件事之外,它运行得很好。
如果我尝试从Firebase控制台发送通知,使用设备令牌&主题,通知显示在设备中。如果我尝试使用设备令牌从ARC(Advance REST CLIENT)发送通知,通知会显示在设备中。如果我尝试使用我的主题从ARC(Advance REST CLIENT)发送通知,则不会发生任何事情。
Requested URL : https://fcm.googleapis.com/fcm/send
RAW headers :
Content-Type: application/json
Authorization: key=AIz.....
RAW PAYLOAD :
{
"data":
{
"employeename":"kumaran","empid":"234444"
},
"to":"/topics/bmmembers"
}
Response Header
Status : 200: OK
JSON :
{
"message_id": 6536474446058224000
}
但我的设备没有收到任何通知,并检查Logcat是否有json到达客户端,但没有收到。任何想法以及我们需要如何解决这些问题
这是我的"为这个问题找到的解决方案"的试错类型:-
发现的问题是"特定服务器密钥或凭据的配额或整个Google API帐户本身可能已过期或使用了限制。"下面我解释了我是如何再次成功地收到FCM通知的同一个Android应用程序的图像。
问题:-在我非常旧的创建项目(例如:我的项目;有5个应用程序及其凭据)中,我无法使用从Google API控制台生成的Android密钥从Advanced REST客户端发送FCM推送通知(带图像)。我多次尝试从ARC客户端发送Post请求,但都无法在我的Android手机中收到任何一个FCM通知。
我发现的解决方案是:-
1a。我删除了Google API控制台中与该特定应用程序(例如:FCM App1)相关的凭据(API密钥、服务器密钥、web密钥、OAuth密钥等)。
1b。我还去了Firebase控制台,并删除了项目中的特定应用程序。最后,现在应用程序(Eg.FCM App1)不包含与1.Google API控制台和2.Firebase控制台。
1c。我还从Androidstudio->Project文件夹中删除了"googleservices.json"文件。(如果无法删除,请尝试执行文件->"无效缓存并重新启动"选项,然后重试删除。它将被删除。)
接下来,新
-
我创建了一个新的gmail帐户,并开设了一个全新的Google API帐户,并在该Google API帐户中进一步开设了新的项目(例如:我的项目1)。
-
接下来,我使用这个新创建的Gmail帐户登录Firebase控制台,打开一个新的项目,选择"添加应用程序"并选择"Android"。
->输入我的程序包名称、SHA1密钥并添加应用程序。->还下载了新的google-services.json文件,并在Android Studio的Project文件夹中再次添加。
->并按照之前的程序进行了所有操作。
===>最后,我在新的Google API控制台中获得了新的"Server-Key"。复制此服务器密钥并粘贴到Advanced REST客户端的位置Authorization:key=AIzaSyAJzs DDD。。。。。。等
=>从日志中添加了新为此应用程序创建的正确TokenID。
===>按下ARC中的SEND按钮,然后WOOOWWWW。。。。
几秒钟内,我在我的安卓手机中收到了带有图片的FCM通知,尽管当时我的应用程序处于后台或完全关闭。。。。!!!