应用程序未运行时,小米不会收到通知

时间:2015-06-10 05:52:44

标签: android push-notification google-cloud-messaging

我正在使用Google推送通知的应用程序。应用程序在小米手机中运行时会收到通知,否则当它被杀死时它不会收到通知。

如果我们想要在应用程序被杀死时收到通知,那么我们需要从xiaomi的安全应用程序手动允许自动重启应用程序。我想要任何技巧以编程方式执行此操作而无需询问用户。有没有办法做到这一点?

enter image description here

http://en.miui.com/thread-33826-1-1.html

3 个答案:

答案 0 :(得分:8)

如果xiaomi正确运行任何应用程序,则需要手动完成五个设置。我已就此进行了大量研究,无法以编程方式修复这些设置。这些是设置:

  1. 自动开始 - >开(切换并重新启动您的应用)
  2. 开发者选项下的MIUI优化 - > OFF
  3. 开发者选项下的内存优化 - > LOW / OFF
  4. 对电池和电池的背景活动没有限制;性能设置
  5. 电池节电器 - > OFF
  6. 还有许多其他设备需要手动设置,以便应用按预期工作,例如联想,一些Micromax设备。公司强制要求对背景活动进行限制,以改善整体电池寿命。像facebook和whatsapp这样的应用程序可以正常工作,因为它们可能已作为系统应用程序包含在内。

答案 1 :(得分:2)

至于我的理解,一旦你在最近的应用程序菜单中清除应用程序或清除内存,xiaomi(或MIUI rom)将强制关闭与该应用程序相关的所有服务和内存类似于用户进入设置并强制停止app,

This Link谈论同样的问题,因此除非用户再次启动,否则所有广播接收器和服务都将结束,因此通知将不会被接收,

但是,您可以尝试在设置中为您的应用权限启用自动启动,如果仍然无效,请尝试创建自行重启的服务并启用自动启动在设置中, AutoStart在MIUI中非常重要,直到启用它所有通知或应用程序活动将被强制关闭并且永远不会启动

答案 2 :(得分:0)

我遇到了类似的问题并通过在我的应用中添加BOOT_COMPLETED接收器来修复它。

将以下内容添加到清单:

accuracy

然后创建BootReceiver类

<receiver
    android:name=".receivers.BootReceiver"
    android:enabled="true">
    <intent-filter>
       <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>

它应该适用于此。