我有一个实现远程后台服务的应用程序。实现此服务以在线程中下载文件(我会说此服务用作下载管理器)。
当我想下载文件时,我将 url 发送到服务,服务启动一个线程(我使用的是 AsyncTask,但它只在 Android 4.1 中工作),它实际下载文件。但迟早下载会停止,我能够知道这一点,因为我显示的通知不再更新。当我单击通知取消下载时,会向服务发送一个挂起的意图,告诉它取消下载,但在重新创建服务时不会取消下载(调用 onCreate)。
编辑:忘了说我在 onStartCommand() 中返回 START_STICKY
我有什么解决方案?有什么办法可以避免服务被杀死?
我也在研究 startForeground(),如果服务目标是只下载一个文件但我希望支持同时下载多个文件,那就没问题了。
谢谢你。