响应任务管理器的终止请求

问题描述

| 我的情况: 我已经创建了一个Android服务,该服务会在应用启动时启动。该服务由一个简单的线程组成,该线程等待5秒钟,写入一条日志消息,然后再次等待。 关闭应用程序后(使用“后退”按钮),Android选择重新启动我的服务,因为我在OnStartCommand中返回了START_STICKY。 在调试应用程序时,我实际上可以使用DDMS杀死该进程。 Android再次选择重新启动服务。根据手册,这是预期的。 我还安装了一个任务管理器,并使用它“杀死”了实例。奇怪的是,现在我的服务不再重启。 时髦的是:无论哪种情况,都不会调用我的类的销毁代码。我的等待线程上没有引发InterruptedException。我的应用程序似乎无法得知它已被销毁。 我的问题: 我该如何解决这个问题并响应杀死请求?我已经注意到DVM缺少sun.misc.Signal和sun.misc.SignalHandler来进行适当的信号处理(如果任务杀手甚至正在使用它)。 我有点需要知道我的应用程序是否已被销毁,因此我可以适当地关闭文件句柄,数据库连接等。 非常感谢您的协助。     

解决方法

  我该如何解决这个问题并响应杀死请求? 你不知道OTOH,此任务杀手行为应已在Android 2.2中消除,因此最终不会出现问题。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...