11

我有一个应用程序可以通过NotificationListenerService. 我的应用程序在几乎任何手机上都能在打盹模式和应用程序待机状态下存活(如果设置正确,例如异常或前台服务)。

然后是华为和小米对 Android 进行了自己的修改,以“提高电池寿命”。这些可能会严重干扰后台运行的应用程序,以至于一两周后必须重新安装应用程序。即使清除数据也不会“解冻”应用程序。即使是他们自己的“优化”的例外也不能可靠地解决这个问题。只有完全禁用所有优化,例如启用“高性能模式”才能解决此问题。但用户不想禁用这些选项。

您如何处理这些案件?我们如何才能阻止制造商停止搞乱核心 Android?更不用说有趣的 ANR 和崩溃了Zygote:(

4

1 回答 1

3

然后是华为和小米对 Android 进行了自己的修改,以“提高电池寿命”。

是的,小米、华为和其他一些制造商都有自己的“电池保护程序”或“安全性”层,可以杀死或限制后台运行的应用程序以提高安全性/电池备份,除非用户在相关设备设置中将您的应用程序列入白名单.

我发现小米将 Facebook、Whatsapp 等知名应用列入白名单。但你不能要求小米将你的应用列入白名单。

这些可能会严重干扰后台运行的应用程序,以至于一两周后必须重新安装应用程序。即使清除数据也不会“解冻”应用程序。

这些制造商应用程序只会终止您的应用程序进程。因此,您的应用程序应该以这样的方式运行,即在任何时候终止都不应该创建不一致的状态。

此外,您始终可以在安装后向用户显示一个弹出窗口,要求他/她将您的应用程序列入省电模式。在小米中,用户需要选择“不限制后台活动”并为您的应用启用“自动启动”。据我所知,没有其他解决方案。

如果你找到了,请告诉我;)

小米应用自动启动设置画面 小米应用省电模式设置界面

于 2017-12-09T14:38:19.793 回答