【问题标题】:Not getting push notification when swipe from recent从最近滑动时没有收到推送通知
【发布时间】:2017-10-16 07:10:39
【问题描述】:

当用户从最近滑动应用程序时,我没有收到通知。我注意到某些特定设备中会发生这种行为,例如我已经在 nexus 设备和 HTC 设备上对其进行了测试,它工作正常,但是当用户从最近的华为和一些三星设备上滑动应用程序时,它不会显示通知。我的意思是我没有收到onMessageReceived() 回调

经过一些研究,我发现在这些设备中,当用户从最近滑动它时,它会强制停止应用程序(该过程完全被杀死)并且我没有收到任何通知。在华为中,他们有受保护和不受保护的应用程序,如果我从设置中将应用程序添加到受保护列表中,我会开始收到通知,因为在这种情况下它不会强制停止应用程序。而且我相信三星在黑名单和白名单应用程序方面也有同样的东西。

我还尝试了一些解决方案,例如重新启动服务 onTaskRemoved() 回调或使您的应用程序 START_STICKY。我也试过WakefulBroadcastReceiver,但没有什么对我有用。

所以我的问题是,即使它被强制停止,我如何才能获得通知,就像从最近刷应用程序时发生的那样。

【问题讨论】:

    标签: android firebase notifications


    【解决方案1】:

    一个老问题,但我认为重要的是要知道华为有一个名为“功耗密集型应用程序监视器”的功能。它会杀死所有在后台运行很长时间的应用程序,除非用户授予它特殊权限。 执行此操作的路径: 设置->安全和隐私->位置服务->最近的位置请求:您的应用程序名称->电池->取消选中耗电提示,应用程序启动:手动管理:检查所有三个位置:自动启动,二次启动,运行背景。

    我不知道是否有办法以编程方式执行此操作。我认为最好的方法是创建一种帮助活动,并向用户说明如果应用程序无法运行该怎么办。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多