我正在构建一个使用Sendbird服务实现聊天的Android应用程序。 Sendbird使用FCM(Firebase云消息传递)发送应用程序处于后台时收到的新消息的通知。
如果Android节能功能被禁用,一切正常,但如果激活此功能,我不会收到某些消息的通知。
如果我将我的应用程序置于后台并按照Android Developer页面(https://developer.android.com/training/monitoring-device-state/doze-standby)中的建议将其设置为“AppStandby模式”,我看到FCM无法正常工作,我的通知消息也会丢失。
我使用了以下shell命令:
$ adb shell dumpsys battery unplug
$ adb shell am set-inactive <packageName> true
相反,当我的应用程序处于“打盹模式”时,一切正常。
因为通过FCM发送给我的应用程序的Sendbird服务器,我无法设置消息的高优先级,我也认为高优先级不是解决问题的正确方法。
任何人都有解决问题的想法?请帮帮我!!!!