我一直面临Android服务及其重启行为的问题。目前我有一个服务(SERVICE 1)和一个用于将文件从一个文件夹移动到另一个文件夹的线程。这很有效。
但是当我在我的应用程序中并启动移动服务时,我将应用程序从最近的任务(systemui.RecentTasks)屏幕上移开,屏幕上的服务停止并显示日志"调度崩溃服务的重新启动" 。此服务是具有活动通知的前台服务。
我还有另一项服务(SERVICE 2),它也是一个带通知的前台服务。此服务还会创建一个运行后台操作的线程。但是,当我滑动应用程序时,此服务不会被杀死,并且没有来自ActivityManager的日志。
最后一种情况是,SERVICE 1在很短的时间间隔内频繁地停止了最近的任务,一次又一次,现在也使用相同的日志停止了SERVICE 2。我可以理解这一点,因为系统会检测到此应用程序频繁崩溃,即使它具有前台服务,它也会尝试给予较低的优先级。
我的问题是为什么这种奇怪的行为。两者都在前台运行并具有活动通知。为什么SERVICE 1停止而SERVICE 2不停止?当崩溃时,我找不到足够的服务重启行为资源。此外,我还没有找到有关Android系统如何设置重新启动计划的信息。 FYI SERVICE 1返回START_REDELIVER_INTENT,SERVICE 2返回START_STICKY。
请帮我解决这个问题。请。感谢