使用firebase-admin sdk,我可以看到已发送消息,但设备上未收到它们

时间:2019-04-16 09:08:04

标签: django firebase-cloud-messaging

我正在尝试使用Firebase云消息传递和Django后端向我的android和ios应用发送推送通知。根据此文档-https://firebase.google.com/docs/cloud-messaging/send-message 我在messages.send()之后得到以下输出 项目/ avaasa-dev / messages / 0:1555400295710341%fa6bca8ffa6bca8f 据我了解,这意味着消息已成功发送。但是我没有在设备上收到通知。

我还尝试了django-push-notifications库而不是firebase-admin,成功接收到通知。但是,在这种情况下,我的Android团队在使用OnMessageReceived函数处理通知时遇到了麻烦,因此我尝试再次使用firebase-admin。

  1. 在setting.py中,我在installed_apps列表中添加了“ firebase_admin”
  2. 移民移民
  3. 我编写了以下方法,每当需要发送通知时便要调用该方法-

    import firebase_admin
    from firebase_admin import credentials
    
    cred = credentials.Certificate("avaasa-dev-firebase-adminsdk.json")
    fcm = firebase_admin.initialize_app(cred, name='avaasa_firebase')
    
    def PushNotification(user_ids=[], 
                         title='Avaasa Notification', message='This is the default Notification'):
        from firebase_admin import messaging
        devices = sometable_in_db.objects.filter(user_id__in=user_ids)
        print(devices)
        for device in devices:
            notification = messaging.Notification(title=title, body=message)
            msg = messaging.Message(token=device.registration_id,
                                        notification = notification,
                                        data={'title': title, 'body': message})
            msg_ = messaging.send(msg, app=fcm)
            print(msg_)
    

我看到以下消息返回了- 项目/ avaasa-dev / messages / 0:1555400295710341%fa6bca8ffa6bca8f 但是在设备上未收到任何通知。 我使用的令牌是正确的,我使用前面提到的django-push-notifications对其进行了验证。

0 个答案:

没有答案