我使用 locationManager 在服务内部实现了一个位置侦听器,该侦听器每隔 x 秒和 y 米报告一次手机的位置。它使用“最佳提供者”进行初始化。该服务在应用退出后在后台运行。这似乎工作正常,我正在高速公路上行驶,并找到合适的位置。但是,它似乎偶尔会“停止”报道。服务突然停止,我必须重新启动我的应用程序才能恢复报告。我对此很陌生,所以提前道歉。有什么东西可以阻止我的服务吗?我尝试将代码插入到服务的“onDestroy”方法中,但没有达到,而且我正在捕获任何未处理的异常,而且我似乎也没有这些异常。android操作系统可以停止我的服务吗?
问问题
360 次
1 回答
0
如果内存不足或为空进程,Android 会停止进程。它根据以下重要性删除进程。
首先它会杀死IMPORTANCE_EMPTY = 500;
, IMPORTANCE_BACKGROUND = 400;
, IMPORTANCE_SERVICE = 300;
, IMPORTANCE_CANT_SAVE_STATE = 170;
,IMPORTANCE_PERCEPTIBLE = 130;
和IMPORTANCE_VISIBLE = 200;
IMPORTANCE_FOREGROUND = 100;
你用的是什么手机?如果同时使用了大量应用程序,该框架可以杀死一些后台应用程序以恢复内存。
您可以在onLowMemory和onTrimMemory中添加日志,并检查是否调用了这些日志。此外,将整数参数记录在onTrimMemory
于 2013-09-20T03:14:50.790 回答