onTaskRemoved没有在android 6.上面的服务中被调用可以让一些人提供更好的替代

时间:2017-11-30 13:05:47

标签: java android

我一直在服务中使用onTaskRemoved()方法来检测应用程序从设备的最新列表中删除的时间。我预先形成一些日志记录和其他需要在发生这种情况时发生的操作。它完美地运作。对于低于6的android ...但是在android 6中刷掉后,后台服务正在被杀死。

     @Override
        public void onTaskRemoved(Intent rootIntent) {
            Log.e("ClearFromRecentSsss", "sttttts");
         Intent intent = new Intent("in.com.example");
            sendBroadcast(intent);           
        }

1 个答案:

答案 0 :(得分:1)

像xiaomi,Oppo这样的制造商有自己的背景策略,即自动启动。您需要将用户重定向到自动启动活动并告诉用户打开: 像这样,让你的应用程序自动启动:

Settings > permissions > Autostart

自动启动设置因小米的产品而异,您可以在SecurityCenter应用程序中找到它。 自动启动会阻止您的服务重新启动,因此请手动启用它并再次检查。我担心没有内置的API可以这样做。因此,您需要根据制造商将用户重定向到指定的屏幕以启用自动启动。看看下面的链接:

  1. link1

  2. link2